@ParametersAreNonnullByDefault public class ReadOnlyStore extends AbstractStore
Store
wrapper that only allows read operations on the underlying database.
Read-only configuration allows to access model element faster, without checking value consistency between database
calls. This store re-implements all the mutators and throws an UnsupportedOperationException
when they are
called, preventing resource corruption.
Constructor and Description |
---|
ReadOnlyStore()
Constructs a new
ReadOnlyStore . |
Modifier and Type | Method and Description |
---|---|
void |
addAllReferences(ManyFeatureBean feature,
List<Id> collection)
Adds all the
collection to the specified feature from the position of the feature . |
<V> void |
addAllValues(ManyFeatureBean feature,
List<? extends V> collection)
Adds all the
collection to the specified feature from the position of the feature . |
void |
addReference(ManyFeatureBean feature,
Id reference)
Adds the
reference to the specified feature at a defined position. |
<V> void |
addValue(ManyFeatureBean feature,
V value)
Adds the
value to the specified feature at a defined position. |
int |
appendAllReferences(SingleFeatureBean feature,
List<Id> collection)
Adds all the
collection to the specified feature from the last position. |
<V> int |
appendAllValues(SingleFeatureBean feature,
List<? extends V> collection)
Adds all the
collection to the specified feature from the last position. |
int |
appendReference(SingleFeatureBean feature,
Id reference)
Adds the
reference to the specified feature at the last position. |
<V> int |
appendValue(SingleFeatureBean feature,
V value)
Adds the
value to the specified feature at the last position. |
void |
containerFor(Id id,
SingleFeatureBean container)
Stores the
container for the specified id . |
boolean |
metaClassFor(Id id,
ClassBean metaClass)
Stores the
metaClass for the specified id . |
Optional<Id> |
referenceFor(ManyFeatureBean feature,
Id reference)
Defines the
reference of the specified feature at a defined position. |
Optional<Id> |
referenceFor(SingleFeatureBean feature,
Id reference)
Defines the reference of the specified
feature . |
void |
removeAllReferences(SingleFeatureBean feature)
Removes all references of the specified
feature . |
void |
removeAllValues(SingleFeatureBean feature)
Removes all values of the specified
feature . |
void |
removeContainer(Id id)
Removes the container of the specified
id . |
Optional<Id> |
removeReference(ManyFeatureBean feature)
Removes the reference of the specified
feature at a defined position. |
void |
removeReference(SingleFeatureBean feature)
Removes the reference of the specified
feature . |
<V> Optional<V> |
removeValue(ManyFeatureBean feature)
Removes the value of the specified
feature at a defined position. |
void |
removeValue(SingleFeatureBean feature)
Removes the value of the specified
feature . |
void |
save()
Saves all changes made on this manager since the last call.
|
<V> Optional<V> |
valueFor(ManyFeatureBean feature,
V value)
Defines the
value of the specified feature at a defined position. |
<V> Optional<V> |
valueFor(SingleFeatureBean feature,
V value)
Defines the
value of the specified feature . |
backend, compareTo, equals, hashCode, next, toString
allInstancesOf, allInstancesOf, allReferencesOf, allValuesOf, close, containerOf, copyTo, metaClassOf, next, referenceOf, referenceOf, sizeOfReference, sizeOfValue, valueOf, valueOf
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
containerOf
allInstancesOf, allInstancesOf, metaClassOf
allValuesOf, sizeOfValue, valueOf
valueOf
allReferencesOf, referenceOf, sizeOfReference
referenceOf
public void save()
Saveable
save
in interface Saveable
save
in class AbstractDataMapperChain<Store>
public void containerFor(Id id, SingleFeatureBean container)
ContainerMapper
container
for the specified id
.containerFor
in interface ContainerMapper
containerFor
in class AbstractDataMapperChain<Store>
id
- the Id
of the contained elementcontainer
- the containing element's container information to storepublic void removeContainer(Id id)
ContainerMapper
id
.
The container must be completely removed, so that a call to ContainerMapper.containerOf(Id)
returns Optional.empty()
.
removeContainer
in interface ContainerMapper
removeContainer
in class AbstractDataMapperChain<Store>
id
- the Id
of the contained elementpublic boolean metaClassFor(Id id, ClassBean metaClass)
ClassMapper
metaClass
for the specified id
.metaClassFor
in interface ClassMapper
metaClassFor
in class AbstractDataMapperChain<Store>
id
- the Id
of the elementmetaClass
- the containing element's meta-class information to storetrue
if the meta-class has been defined, false
if the id
already has a meta-class@Nonnull public <V> Optional<V> valueFor(SingleFeatureBean feature, V value)
ValueMapper
value
of the specified feature
.valueFor
in interface ValueMapper
valueFor
in class AbstractDataMapperChain<Store>
V
- the type of valuefeature
- the bean identifying the valuevalue
- the value to setOptional
containing the previous value of the feature
, or Optional.empty()
if
the feature has no value beforepublic void removeValue(SingleFeatureBean feature)
ValueMapper
feature
.removeValue
in interface ValueMapper
removeValue
in class AbstractDataMapperChain<Store>
feature
- the bean identifying the value@Nonnull public Optional<Id> referenceFor(SingleFeatureBean feature, Id reference)
ReferenceMapper
feature
.referenceFor
in interface ReferenceMapper
referenceFor
in class AbstractDataMapperChain<Store>
feature
- the bean identifying the referencereference
- the reference to setOptional
containing the previous reference of the feature
, or Optional.empty()
if the feature has no reference beforepublic void removeReference(SingleFeatureBean feature)
ReferenceMapper
feature
.removeReference
in interface ReferenceMapper
removeReference
in class AbstractDataMapperChain<Store>
feature
- the bean identifying the reference@Nonnull public <V> Optional<V> valueFor(ManyFeatureBean feature, V value)
ManyValueMapper
value
of the specified feature
at a defined position.valueFor
in interface ManyValueMapper
valueFor
in class AbstractDataMapperChain<Store>
V
- the type of valuefeature
- the bean identifying the multi-valued attributevalue
- the value to setOptional
containing the previous value of the feature
, or Optional.empty()
if
the feature has no value beforeManyValueMapper.addValue(ManyFeatureBean, Object)
,
ManyValueMapper.appendValue(SingleFeatureBean, Object)
public <V> void addValue(ManyFeatureBean feature, V value)
ManyValueMapper
value
to the specified feature
at a defined position.addValue
in interface ManyValueMapper
addValue
in class AbstractDataMapperChain<Store>
V
- the type of valuefeature
- the bean identifying the multi-valued attributevalue
- the value to addpublic <V> void addAllValues(ManyFeatureBean feature, List<? extends V> collection)
ManyValueMapper
collection
to the specified feature
from the position of the feature
.addAllValues
in interface ManyValueMapper
addAllValues
in class AbstractDataMapperChain<Store>
V
- the type of valuefeature
- the bean identifying the multi-valued attributecollection
- the values to add@Nonnegative public <V> int appendValue(SingleFeatureBean feature, V value)
ManyValueMapper
value
to the specified feature
at the last position.appendValue
in interface ManyValueMapper
appendValue
in class AbstractDataMapperChain<Store>
V
- the type of valuefeature
- the bean identifying the multi-valued attributevalue
- the value to addManyValueMapper.addValue(ManyFeatureBean, Object)
@Nonnegative public <V> int appendAllValues(SingleFeatureBean feature, List<? extends V> collection)
ManyValueMapper
collection
to the specified feature
from the last position.appendAllValues
in interface ManyValueMapper
appendAllValues
in class AbstractDataMapperChain<Store>
V
- the type of valuesfeature
- the bean identifying the multi-valued attributecollection
- the values to addManyValueMapper.addValue(ManyFeatureBean, Object)
,
ManyValueMapper.appendValue(SingleFeatureBean, Object)
@Nonnull public <V> Optional<V> removeValue(ManyFeatureBean feature)
ManyValueMapper
feature
at a defined position.removeValue
in interface ManyValueMapper
removeValue
in class AbstractDataMapperChain<Store>
V
- the type of valuefeature
- the bean identifying the multi-valued attributeOptional
containing the removed value, or Optional.empty()
if the feature has no value
beforepublic void removeAllValues(SingleFeatureBean feature)
ManyValueMapper
feature
.removeAllValues
in interface ManyValueMapper
removeAllValues
in class AbstractDataMapperChain<Store>
feature
- the bean identifying the multi-valued attribute@Nonnull public Optional<Id> referenceFor(ManyFeatureBean feature, Id reference)
ManyReferenceMapper
reference
of the specified feature
at a defined position.referenceFor
in interface ManyReferenceMapper
referenceFor
in class AbstractDataMapperChain<Store>
feature
- the bean identifying the multi-valued referencereference
- the reference to setOptional
containing the previous reference of the feature
, or Optional.empty()
if the feature has no reference beforeManyReferenceMapper.addReference(ManyFeatureBean, Id)
,
ManyReferenceMapper.appendReference(SingleFeatureBean, Id)
public void addReference(ManyFeatureBean feature, Id reference)
ManyReferenceMapper
reference
to the specified feature
at a defined position.addReference
in interface ManyReferenceMapper
addReference
in class AbstractDataMapperChain<Store>
feature
- the bean identifying the multi-valued referencereference
- the reference to addpublic void addAllReferences(ManyFeatureBean feature, List<Id> collection)
ManyReferenceMapper
collection
to the specified feature
from the position of the feature
.addAllReferences
in interface ManyReferenceMapper
addAllReferences
in class AbstractDataMapperChain<Store>
feature
- the bean identifying the multi-valued attributecollection
- the values to add@Nonnegative public int appendReference(SingleFeatureBean feature, Id reference)
ManyReferenceMapper
reference
to the specified feature
at the last position.appendReference
in interface ManyReferenceMapper
appendReference
in class AbstractDataMapperChain<Store>
feature
- the bean identifying the multi-valued referencereference
- the reference to addManyReferenceMapper.addReference(ManyFeatureBean, Id)
@Nonnegative public int appendAllReferences(SingleFeatureBean feature, List<Id> collection)
ManyReferenceMapper
collection
to the specified feature
from the last position.appendAllReferences
in interface ManyReferenceMapper
appendAllReferences
in class AbstractDataMapperChain<Store>
feature
- the bean identifying the multi-valued referencecollection
- the references to addManyReferenceMapper.addReference(ManyFeatureBean, Id)
,
ManyReferenceMapper.appendReference(SingleFeatureBean, Id)
@Nonnull public Optional<Id> removeReference(ManyFeatureBean feature)
ManyReferenceMapper
feature
at a defined position.removeReference
in interface ManyReferenceMapper
removeReference
in class AbstractDataMapperChain<Store>
feature
- the bean identifying the multi-valued referenceOptional
containing the removed reference, or Optional.empty()
if the feature has no
reference beforepublic void removeAllReferences(SingleFeatureBean feature)
ManyReferenceMapper
feature
.removeAllReferences
in interface ManyReferenceMapper
removeAllReferences
in class AbstractDataMapperChain<Store>
feature
- the bean identifying the multi-valued referenceCopyright © 2013–2019 Atlanmod. All rights reserved.