Class FieldLayoutSchemeImpl
java.lang.Object
com.atlassian.jira.issue.fields.screen.AbstractGVBean
com.atlassian.jira.issue.fields.layout.field.FieldLayoutSchemeImpl
- All Implemented Interfaces:
FieldLayoutScheme,Named,NamedWithDescription,NamedWithId
Thread safety is mostly achieved (there are still some issues with the
AbstractGVBean.setGenericValue(GenericValue) method)
by two mechanisms.
- all mutative operations to the map are done under a write-lock. For extra safety all stores/loads from the database are also done under the lock, even though this is not ideal.
- iteration over the map are protected by a read-lock.
-
Field Summary
Fields inherited from interface com.atlassian.jira.util.Named
NAME_COMPARATOR -
Constructor Summary
ConstructorsConstructorDescriptionFieldLayoutSchemeImpl(FieldLayoutManager fieldLayoutManager, org.ofbiz.core.entity.GenericValue genericValue) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddEntity(FieldLayoutSchemeEntity fieldLayoutSchemeEntity) protected voidcacheEntity(FieldLayoutSchemeEntity fieldLayoutSchemeEntity) booleancontainsEntity(String issueTypeId) protected voidflushEntity(FieldLayoutSchemeEntity fieldLayoutSchemeEntity) getEntity(EditableFieldLayout editableFieldLayout) getFieldLayoutId(String issueTypeId) Returns the id of the field layout to use for this given issue type id.getId()getName()Collection<org.ofbiz.core.entity.GenericValue> protected voidinit()voidremove()voidremoveEntity(String issueTypeId) voidsetDescription(String description) voidvoidstore()Methods inherited from class com.atlassian.jira.issue.fields.screen.AbstractGVBean
getGenericValue, isModified, setGenericValue, setModified, updateGVMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.atlassian.jira.issue.fields.layout.field.FieldLayoutScheme
getGenericValue, setGenericValue
-
Constructor Details
-
FieldLayoutSchemeImpl
public FieldLayoutSchemeImpl(FieldLayoutManager fieldLayoutManager, org.ofbiz.core.entity.GenericValue genericValue)
-
-
Method Details
-
init
protected void init()- Specified by:
initin classAbstractGVBean
-
getId
- Specified by:
getIdin interfaceFieldLayoutScheme- Specified by:
getIdin interfaceNamedWithId
-
getName
- Specified by:
getNamein interfaceFieldLayoutScheme- Specified by:
getNamein interfaceNamed
-
setName
- Specified by:
setNamein interfaceFieldLayoutScheme
-
getDescription
- Specified by:
getDescriptionin interfaceFieldLayoutScheme- Specified by:
getDescriptionin interfaceNamedWithDescription
-
setDescription
- Specified by:
setDescriptionin interfaceFieldLayoutScheme
-
store
public void store()- Specified by:
storein interfaceFieldLayoutScheme
-
getFieldLayoutId
Description copied from interface:FieldLayoutSchemeReturns the id of the field layout to use for this given issue type id. This will do all the necessary work to lookup the default entry if no specific mapping for the given isuse type id exists. So after calling this method simply use the returned field layout id.- Specified by:
getFieldLayoutIdin interfaceFieldLayoutScheme- Parameters:
issueTypeId- the Issue Type ID.- Returns:
- the id of the
FieldLayout("Field Configuration") to use for this given issue type id.
-
getEntity
- Specified by:
getEntityin interfaceFieldLayoutScheme
-
getEntity
- Specified by:
getEntityin interfaceFieldLayoutScheme
-
getProjects
- Specified by:
getProjectsin interfaceFieldLayoutScheme
-
getProjectsUsing
- Specified by:
getProjectsUsingin interfaceFieldLayoutScheme
-
containsEntity
- Specified by:
containsEntityin interfaceFieldLayoutScheme
-
addEntity
- Specified by:
addEntityin interfaceFieldLayoutScheme
-
removeEntity
- Specified by:
removeEntityin interfaceFieldLayoutScheme
-
getEntities
- Specified by:
getEntitiesin interfaceFieldLayoutScheme
-
remove
public void remove()- Specified by:
removein interfaceFieldLayoutScheme
-
cacheEntity
-
flushEntity
-