Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| OptaPlanner distribution 6.0.0.CR4
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.optaplanner.core.impl.domain.solution.cloner
Class FieldAccessingSolutionCloner.FieldAccessingSolutionClonerRun

    java.lang.Object
      org.optaplanner.core.impl.domain.solution.cloner.FieldAccessingSolutionCloner.FieldAccessingSolutionClonerRun

Enclosing class:
  FieldAccessingSolutionCloner<SolutionG extends Solution>

    protected class FieldAccessingSolutionCloner.FieldAccessingSolutionClonerRun

extends Object

Field Summary
`protected Map<Object,Object>` | `originalToCloneMap`
`protected Queue<FieldAccessingSolutionCloner.Unprocessed>` | `unprocessedQueue`

Constructor Summary
`protected` | `FieldAccessingSolutionCloner.FieldAccessingSolutionClonerRun()`

Method Summary
`protected
`<C> C`
` | `clone(C original)`
`protected
`<E> Collection<E>`
` | `cloneCollection(Class<?> expectedType, Collection<E> originalCollection)`
`protected
`<K,V> Map<K,V>`
` | `cloneMap(Class<?> expectedType, Map<K,V> originalMap)`
`protected SolutionG` | `cloneSolution(SolutionG originalSolution)`
`protected
`<C> C`
` | `constructClone(Class<C> clazz)`
`protected
`<E> Collection<E>`
` | `constructCloneCollection(Collection<E> originalCollection)`
`protected
`<K,V> Map<K,V>`
` | `constructCloneMap(Map<K,V> originalMap)`
`protected
`<C> void`
` | `copyFields(Class<C> clazz, C original, C clone)`
`protected Object` | `getFieldValue(Object bean, Field field)`
`protected boolean` | `isDeepCloneField(Field field, Object originalValue)`
`protected boolean` | `isFieldAnEntityOrSolution(Field field)`
`protected boolean` | `isFieldAnEntityPropertyOnSolution(Field field)`
`protected boolean` | `isValueAnEntityOrSolution(Object originalValue)`
`protected void` | `process(FieldAccessingSolutionCloner.Unprocessed unprocessed)`
`protected void` | `processQueue()`
`protected void` | `setFieldValue(Object bean, Field field, Object value)`
`protected void` | `validateCloneSolution(SolutionG originalSolution, SolutionG cloneSolution)` Fails fast if `isFieldAnEntityPropertyOnSolution(java.lang.reflect.Field)` assumptions were wrong.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### originalToCloneMap

    protected Map<Object,Object> originalToCloneMap

### unprocessedQueue

    protected Queue<FieldAccessingSolutionCloner.Unprocessed> unprocessedQueue

Constructor Detail

### FieldAccessingSolutionCloner.FieldAccessingSolutionClonerRun

    protected FieldAccessingSolutionCloner.FieldAccessingSolutionClonerRun()

Method Detail

### cloneSolution

    protected SolutionG cloneSolution(SolutionG originalSolution)

### clone

    protected <C> C clone(C original)

### constructClone

    protected <C> C constructClone(Class<C> clazz)

### copyFields

    protected <C> void copyFields(Class<C> clazz,
                                  C original,
                                  C clone)

### isDeepCloneField

    protected boolean isDeepCloneField(Field field,
                                       Object originalValue)

### isFieldAnEntityPropertyOnSolution

    protected boolean isFieldAnEntityPropertyOnSolution(Field field)

### isFieldAnEntityOrSolution

    protected boolean isFieldAnEntityOrSolution(Field field)

### isValueAnEntityOrSolution

    protected boolean isValueAnEntityOrSolution(Object originalValue)

### processQueue

    protected void processQueue()

### process

    protected void process(FieldAccessingSolutionCloner.Unprocessed unprocessed)

### cloneCollection

    protected <E> Collection<E> cloneCollection(Class<?> expectedType,
                                                Collection<E> originalCollection)

### constructCloneCollection

    protected <E> Collection<E> constructCloneCollection(Collection<E> originalCollection)

### cloneMap

    protected <K,V> Map<K,V> cloneMap(Class<?> expectedType,
                                      Map<K,V> originalMap)

### constructCloneMap

    protected <K,V> Map<K,V> constructCloneMap(Map<K,V> originalMap)

### validateCloneSolution

    protected void validateCloneSolution(SolutionG originalSolution,
                                         SolutionG cloneSolution)

  Fails fast if `isFieldAnEntityPropertyOnSolution(java.lang.reflect.Field)` assumptions were wrong.

  Parameters:
    `originalSolution` - never null
    `cloneSolution` - never null

### getFieldValue

    protected Object getFieldValue(Object bean,
                                   Field field)

### setFieldValue

    protected void setFieldValue(Object bean,
                                 Field field,
                                 Object value)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| OptaPlanner distribution 6.0.0.CR4
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2006-2013 JBoss by Red Hat. All Rights Reserved.