Example usage for org.springframework.util ReflectionUtils setField

List of usage examples for org.springframework.util ReflectionUtils setField

Introduction

In this page you can find the example usage for org.springframework.util ReflectionUtils setField.

Prototype

public static void setField(Field field, @Nullable Object target, @Nullable Object value) 

Source Link

Document

Set the field represented by the supplied Field field object on the specified Object target object to the specified value .

Usage

From source file:fragment.web.TasksControllerTest.java

@Test
public void testActOnPendingAction() {
    Tenant tenant = tenantService.get("dfc84388-d44d-4d8e-9d6a-a62c1c16b7e4");
    BusinessTransaction bt = new TenantStateChangeTransaction();
    bt.setUuid(UUID.randomUUID().toString());
    bt.setWorkflowId("1e42822b-cad6-4dc0-bb77-99abb9395f1a");

    Field field = ReflectionUtils.findField(BusinessTransaction.class, "id");
    field.setAccessible(true);/* w w  w .  j a v  a  2 s .co m*/
    ReflectionUtils.setField(field, bt, 1l);

    Task task = new Task();
    task.setActorRole(authorityService.findByAuthority("ROLE_FINANCE_CRUD"));
    task.setCreatedAt(new Date());
    task.setState(com.citrix.cpbm.core.workflow.model.Task.State.PENDING);
    task.setTenant(tenant);
    task.setUser(tenant.getOwner());
    task.setUpdatedBy(getRootUser());
    task.setBusinessTransaction(bt);
    task.setType("FINANCE_APPROVAL");
    task.setDisplayMode(DisplayMode.POPUP);
    task = taskService.save(task);
    String memo = "Approved";
    String actedAction = tasksController.actOnApprovalTask(task.getUuid(), Task.State.SUCCESS.toString(), memo,
            request);
    Assert.assertEquals("ui.task.state.SUCCESS", actedAction);
}

From source file:py.una.pol.karaku.dao.util.MainInstanceHelper.java

/**
 * Dado <b>un</b> objeto, agrega el proxy que tiene sentido mientras dure la
 * session// ww  w.ja  va 2  s .  co  m
 * 
 * @param entity
 *            entidad a aplicar los proxies
 * @param session
 *            Session hibernate durante la cual tendr sentido el proxy
 * @throws IllegalArgumentException
 * @throws IllegalAccessException
 * @throws InvocationTargetException
 * @throws InstantiationException
 * @throws NoSuchMethodException
 */
public void help(final Object entity, final Session session) throws KarakuException {

    if (entity == null) {
        return;
    }

    try {
        for (Field f : MainInstanceFieldHelper.getMainInstanceFields(entity.getClass())) {
            MainInstance principal = f.getAnnotation(MainInstance.class);
            f.setAccessible(true);
            ReflectionUtils.setField(f, entity, newInstance(entity, session, principal, f.getType()));
        }
    } catch (Exception exception) {
        throw new KarakuException(exception);
    }
}

From source file:com.ciphertool.zodiacengine.service.GeneticCipherSolutionServiceTest.java

@Test
public void testSetUp() throws IOException {
    GeneticCipherSolutionService geneticCipherSolutionService = new GeneticCipherSolutionService();

    GeneticAlgorithm geneticAlgorithm = mock(GeneticAlgorithm.class);
    geneticCipherSolutionService.setGeneticAlgorithm(geneticAlgorithm);

    Runtime runtimeMock = mock(Runtime.class);

    Field runtimeField = ReflectionUtils.findField(GeneticCipherSolutionService.class, "runtime");
    ReflectionUtils.makeAccessible(runtimeField);
    ReflectionUtils.setField(runtimeField, geneticCipherSolutionService, runtimeMock);

    String[] commandsBefore = { "command1", "command2" };
    geneticCipherSolutionService.setCommandsBefore(commandsBefore);

    GeneticAlgorithmStrategy geneticAlgorithmStrategy = new GeneticAlgorithmStrategy();
    geneticCipherSolutionService.setUp(geneticAlgorithmStrategy);

    verify(runtimeMock, times(1)).exec(eq("command1"));
    verify(runtimeMock, times(1)).exec(eq("command2"));
    verifyNoMoreInteractions(runtimeMock);

    verify(geneticAlgorithm, times(1)).setStrategy(same(geneticAlgorithmStrategy));
}

From source file:it.geosolutions.httpproxy.service.impl.ProxyConfigImpl.java

/**
 * Override this fields with a location properties
 * /*from   ww w.ja v  a2s. c o  m*/
 * @param location
 * 
 * @throws IOException if read properties throw an error
 */
private void overrideProperties(Resource location) throws IOException {
    Properties props = new Properties();
    props.load(location.getInputStream());
    Enumeration<Object> keys = props.keys();
    while (keys.hasMoreElements()) {
        try {
            String key = (String) keys.nextElement();
            if (key.startsWith(beanName + ".")) {
                String parameter = key.replace(beanName + ".", "");
                Field field = ReflectionUtils.findField(this.getClass(), parameter);
                ReflectionUtils.makeAccessible(field);
                ReflectionUtils.setField(field, this, props.getProperty(key));
                LOGGER.log(Level.INFO, "[override]: " + key + "=" + props.getProperty(key));
            }
        } catch (Exception e) {
            LOGGER.log(Level.SEVERE, "Error overriding the proxy configuration ", e);
        }
    }
}

From source file:com.ciphertool.genetics.algorithms.ConcurrentMultigenerationalGeneticAlgorithmTest.java

@Test
public void testDoConcurrentCrossovers() {
    ConcurrentMultigenerationalGeneticAlgorithm concurrentMultigenerationalGeneticAlgorithm = new ConcurrentMultigenerationalGeneticAlgorithm();
    concurrentMultigenerationalGeneticAlgorithm.setTaskExecutor(taskExecutor);

    CrossoverAlgorithm crossoverAlgorithmMock = mock(CrossoverAlgorithm.class);

    Field crossoverAlgorithmField = ReflectionUtils.findField(ConcurrentMultigenerationalGeneticAlgorithm.class,
            "crossoverAlgorithm");
    ReflectionUtils.makeAccessible(crossoverAlgorithmField);
    ReflectionUtils.setField(crossoverAlgorithmField, concurrentMultigenerationalGeneticAlgorithm,
            crossoverAlgorithmMock);//from w  ww  . j  a v  a  2  s. co m

    Chromosome chromosomeToReturn = new MockKeylessChromosome();
    when(crossoverAlgorithmMock.crossover(any(Chromosome.class), any(Chromosome.class)))
            .thenReturn(Arrays.asList(chromosomeToReturn));

    long pairsToCrossover = 5;
    List<Chromosome> moms = new ArrayList<Chromosome>();
    List<Chromosome> dads = new ArrayList<Chromosome>();

    for (int i = 0; i < 5; i++) {
        moms.add(new MockKeylessChromosome());
        dads.add(new MockKeylessChromosome());
    }

    List<Chromosome> childrenReturned = concurrentMultigenerationalGeneticAlgorithm
            .doConcurrentCrossovers(pairsToCrossover, moms, dads);

    assertEquals(5, childrenReturned.size());
    for (Chromosome child : childrenReturned) {
        assertSame(chromosomeToReturn, child);
    }

    verify(crossoverAlgorithmMock, times(5)).crossover(any(Chromosome.class), any(Chromosome.class));
}

From source file:com.ciphertool.genetics.algorithms.MultigenerationalGeneticAlgorithmTest.java

@Test
public void testInitialize() {
    Date beforeInitialize = new Date();

    GeneticAlgorithmStrategy strategyToSet = new GeneticAlgorithmStrategy();
    int populationSize = 100;
    int lifeSpan = 0;
    double survivalRate = 0.1;
    double mutationRate = 0.0;
    double crossoverRate = 0.0;
    CrossoverAlgorithm crossoverAlgorithmMock = mock(CrossoverAlgorithm.class);
    FitnessEvaluator fitnessEvaluatorMock = mock(FitnessEvaluator.class);
    MutationAlgorithm mutationAlgorithmMock = mock(MutationAlgorithm.class);
    strategyToSet.setGeneticStructure(new Object());
    strategyToSet.setPopulationSize(populationSize);
    strategyToSet.setLifespan(lifeSpan);
    strategyToSet.setSurvivalRate(survivalRate);
    strategyToSet.setMutationRate(mutationRate);
    strategyToSet.setMaxMutationsPerIndividual(0);
    strategyToSet.setCrossoverRate(crossoverRate);
    strategyToSet.setMutateDuringCrossover(false);
    strategyToSet.setMaxGenerations(-1);
    strategyToSet.setCrossoverAlgorithm(crossoverAlgorithmMock);
    strategyToSet.setFitnessEvaluator(fitnessEvaluatorMock);
    strategyToSet.setMutationAlgorithm(mutationAlgorithmMock);
    strategyToSet.setSelectionAlgorithm(mock(SelectionAlgorithm.class));
    strategyToSet.setSelector(mock(Selector.class));

    Population populationMock = mock(Population.class);

    MultigenerationalGeneticAlgorithm multigenerationalGeneticAlgorithm = new MultigenerationalGeneticAlgorithm();
    multigenerationalGeneticAlgorithm.setPopulation(populationMock);

    Field strategyField = ReflectionUtils.findField(MultigenerationalGeneticAlgorithm.class, "strategy");
    ReflectionUtils.makeAccessible(strategyField);
    ReflectionUtils.setField(strategyField, multigenerationalGeneticAlgorithm, strategyToSet);

    Field generationCountField = ReflectionUtils.findField(MultigenerationalGeneticAlgorithm.class,
            "generationCount");
    ReflectionUtils.makeAccessible(generationCountField);
    ReflectionUtils.setField(generationCountField, multigenerationalGeneticAlgorithm, 1);

    Field stopRequestedField = ReflectionUtils.findField(MultigenerationalGeneticAlgorithm.class,
            "stopRequested");
    ReflectionUtils.makeAccessible(stopRequestedField);
    ReflectionUtils.setField(stopRequestedField, multigenerationalGeneticAlgorithm, true);

    Field executionStatisticsField = ReflectionUtils.findField(MultigenerationalGeneticAlgorithm.class,
            "executionStatistics");
    ReflectionUtils.makeAccessible(executionStatisticsField);
    ExecutionStatistics executionStatisticsFromObject = (ExecutionStatistics) ReflectionUtils
            .getField(executionStatisticsField, multigenerationalGeneticAlgorithm);
    assertNull(executionStatisticsFromObject);

    multigenerationalGeneticAlgorithm.initialize();

    int generationCountFromObject = (int) ReflectionUtils.getField(generationCountField,
            multigenerationalGeneticAlgorithm);
    boolean stopRequestedFromObject = (boolean) ReflectionUtils.getField(stopRequestedField,
            multigenerationalGeneticAlgorithm);
    executionStatisticsFromObject = (ExecutionStatistics) ReflectionUtils.getField(executionStatisticsField,
            multigenerationalGeneticAlgorithm);

    assertEquals(0, generationCountFromObject);
    assertFalse(stopRequestedFromObject);
    assertNotNull(executionStatisticsFromObject);
    assertTrue(executionStatisticsFromObject.getStartDateTime().getTime() >= beforeInitialize.getTime());
    assertEquals(populationSize, executionStatisticsFromObject.getPopulationSize().intValue());
    assertEquals(lifeSpan, executionStatisticsFromObject.getLifespan().intValue());
    assertEquals(new Double(survivalRate), executionStatisticsFromObject.getSurvivalRate());
    assertEquals(new Double(mutationRate), executionStatisticsFromObject.getMutationRate());
    assertEquals(new Double(crossoverRate), executionStatisticsFromObject.getCrossoverRate());
    assertEquals(crossoverAlgorithmMock.getClass().getSimpleName(),
            executionStatisticsFromObject.getCrossoverAlgorithm());
    assertEquals(fitnessEvaluatorMock.getClass().getSimpleName(),
            executionStatisticsFromObject.getFitnessEvaluator());
    assertEquals(mutationAlgorithmMock.getClass().getSimpleName(),
            executionStatisticsFromObject.getMutationAlgorithm());

    verify(populationMock, times(1)).clearIndividuals();
    verify(populationMock, times(1)).breed(eq(populationSize));
    verify(populationMock, times(1)).evaluateFitness(null);
    verify(populationMock, times(1)).size();
    verifyNoMoreInteractions(populationMock);
}

From source file:es.fcs.batch.integration.chunk.MyRemoteChunkHandlerFactoryBean.java

private static void setField(Object target, String name, Object value) {
    Assert.notNull(target, "Target object must not be null");
    Field field = ReflectionUtils.findField(target.getClass(), name);
    if (field == null) {
        throw new IllegalStateException("Could not find field [" + name + "] on target [" + target + "]");
    }// ww w  . ja  va2  s.  c om

    if (logger.isDebugEnabled()) {
        logger.debug("Getting field [" + name + "] from target [" + target + "]");
    }
    ReflectionUtils.makeAccessible(field);
    ReflectionUtils.setField(field, target, value);
}

From source file:com.ciphertool.zodiacengine.service.GeneticCipherSolutionServiceTest.java

@Test
public void testEndImmediately_DebugMode() throws IOException {
    GeneticCipherSolutionService geneticCipherSolutionService = new GeneticCipherSolutionService();
    geneticCipherSolutionService.toggleRunning();

    GeneticAlgorithm geneticAlgorithm = mock(GeneticAlgorithm.class);
    Population population = new Population();

    SolutionChromosome solutionChromosome = new SolutionChromosome();
    solutionChromosome.setEvaluationNeeded(false);
    population.addIndividual(solutionChromosome);
    when(geneticAlgorithm.getPopulation()).thenReturn(population);
    geneticCipherSolutionService.setGeneticAlgorithm(geneticAlgorithm);

    Runtime runtimeMock = mock(Runtime.class);

    Field runtimeField = ReflectionUtils.findField(GeneticCipherSolutionService.class, "runtime");
    ReflectionUtils.makeAccessible(runtimeField);
    ReflectionUtils.setField(runtimeField, geneticCipherSolutionService, runtimeMock);

    String[] commandsAfter = { "command1", "command2" };
    geneticCipherSolutionService.setCommandsAfter(commandsAfter);

    SolutionDao solutionDaoMock = mock(SolutionDao.class);
    geneticCipherSolutionService.setSolutionDao(solutionDaoMock);

    assertTrue(geneticCipherSolutionService.isRunning());
    geneticCipherSolutionService.endImmediately(true);
    assertFalse(geneticCipherSolutionService.isRunning());

    verify(solutionDaoMock, times(1)).insert(same(solutionChromosome));

    verify(runtimeMock, times(1)).exec(eq("command1"));
    verify(runtimeMock, times(1)).exec(eq("command2"));
    verifyNoMoreInteractions(runtimeMock);
}

From source file:fragment.web.TasksControllerTest.java

@Test
public void testActOnPendingActionRejectWithMemo() {
    Tenant tenant = tenantService.get("dfc84388-d44d-4d8e-9d6a-a62c1c16b7e4");
    BusinessTransaction bt = new TenantStateChangeTransaction();
    bt.setUuid(UUID.randomUUID().toString());
    bt.setWorkflowId("1e42822b-cad6-4dc0-bb77-99abb9395f1a");

    Field field = ReflectionUtils.findField(BusinessTransaction.class, "id");
    field.setAccessible(true);//from w  ww .ja va2  s  .c  o m
    ReflectionUtils.setField(field, bt, 1l);

    Task task = new Task();
    task.setActorRole(authorityService.findByAuthority("ROLE_FINANCE_CRUD"));
    task.setCreatedAt(new Date());
    task.setState(com.citrix.cpbm.core.workflow.model.Task.State.PENDING);
    task.setTenant(tenant);
    task.setUser(tenant.getOwner());
    task.setUpdatedBy(getRootUser());
    task.setBusinessTransaction(bt);
    task.setType("FINANCE_APPROVAL");
    task.setDisplayMode(DisplayMode.POPUP);
    task = taskService.save(task);
    String memo = "Rejected";
    String actedAction = tasksController.actOnApprovalTask(task.getUuid(), Task.State.FAILURE.toString(), memo,
            request);
    Assert.assertEquals("ui.task.state.FAILURE", actedAction);
}

From source file:com.ciphertool.genetics.algorithms.MultigenerationalGeneticAlgorithmTest.java

@Test
public void testFinish() {
    Date beforeFinish = new Date();

    ExecutionStatisticsDao executionStatisticsDaoToSet = mock(ExecutionStatisticsDao.class);

    MultigenerationalGeneticAlgorithm multigenerationalGeneticAlgorithm = new MultigenerationalGeneticAlgorithm();
    multigenerationalGeneticAlgorithm.setExecutionStatisticsDao(executionStatisticsDaoToSet);

    ExecutionStatistics executionStatistics = new ExecutionStatistics();
    Field executionStatisticsField = ReflectionUtils.findField(MultigenerationalGeneticAlgorithm.class,
            "executionStatistics");
    ReflectionUtils.makeAccessible(executionStatisticsField);
    ReflectionUtils.setField(executionStatisticsField, multigenerationalGeneticAlgorithm, executionStatistics);

    Field generationCountField = ReflectionUtils.findField(MultigenerationalGeneticAlgorithm.class,
            "generationCount");
    ReflectionUtils.makeAccessible(generationCountField);
    ReflectionUtils.setField(generationCountField, multigenerationalGeneticAlgorithm, 1);

    multigenerationalGeneticAlgorithm.finish();

    assertTrue(executionStatistics.getEndDateTime().getTime() >= beforeFinish.getTime());

    verify(executionStatisticsDaoToSet, times(1)).insert(same(executionStatistics));

    ExecutionStatistics executionStatisticsFromObject = (ExecutionStatistics) ReflectionUtils
            .getField(executionStatisticsField, multigenerationalGeneticAlgorithm);
    assertNull(executionStatisticsFromObject);
}