LightJason - AgentSpeak(L++)
org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M > Class Template Reference

storage only for single elements More...

+ Inheritance diagram for org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >:
+ Collaboration diagram for org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >:

Public Member Functions

final void clear ()
 clears all elements More...
 
final boolean containsMultiElement ( @Nonnull final String p_key)
 contains a multi-element More...
 
final boolean containsSingleElement ( @Nonnull final String p_key)
 contains a single-element More...
 
final boolean empty ()
 checks if a storage is empty More...
 
final Collection< N > getMultiElement ( @Nonnull final String p_key)
 returns a collection of multi-elementy by name More...
 
final M getSingleElement ( @Nonnull final String p_key)
 returns a single-element by the name More...
 
final M getSingleElementOrDefault ( @Nonnull final String p_key, final M p_default)
 returns a single-element by the name More...
 
final boolean putMultiElement ( @Nonnull final String p_key, final N p_value)
 puts a multi-element into the storage More...
 
final boolean putSingleElement ( @Nonnull final String p_key, final M p_value)
 puts a single-element into the storage More...
 
final boolean putSingleElementIfAbsent ( @Nonnull final String p_key, final M p_value)
 puts a single-element if it is absent More...
 
final boolean removeMultiElement ( @Nonnull final String p_key, final N p_value)
 removes a multi-element from the storage More...
 
final boolean removeSingleElement ( @Nonnull final String p_key)
 removes a single-element from the storage More...
 
final int size ()
 number of multi elements More...
 
final Stream< N > streamMultiElements ()
 returns a stream over all multi-elements More...
 
Stream< M > streamSingleElements ()
 returns a stream over all single-elements More...
 
- Public Member Functions inherited from org.lightjason.agentspeak.beliefbase.storage.IBaseStorage< N, M >
IAgent<?> update ( @Nonnull final IAgent<?> p_agent)
 updates all items More...
 

Private Attributes

final Map< String, M > m_elements = new ConcurrentHashMap<>()
 map with single elements More...
 

Detailed Description

Definition at line 37 of file CSingleOnlyStorage.java.

Member Function Documentation

◆ clear()

◆ containsMultiElement()

final boolean org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.containsMultiElement ( @Nonnull final String  p_key)
Parameters
p_keykey
Returns
boolean existing flag

Implements org.lightjason.agentspeak.beliefbase.storage.IStorage< N, M >.

Definition at line 59 of file CSingleOnlyStorage.java.

◆ containsSingleElement()

final boolean org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.containsSingleElement ( @Nonnull final String  p_key)
Parameters
p_keykey
Returns
boolean existing flag

Implements org.lightjason.agentspeak.beliefbase.storage.IStorage< N, M >.

Definition at line 65 of file CSingleOnlyStorage.java.

◆ empty()

◆ getMultiElement()

final Collection<N> org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.getMultiElement ( @Nonnull final String  p_key)
Parameters
p_keyname
Returns
collection of multi-elements

Implements org.lightjason.agentspeak.beliefbase.storage.IStorage< N, M >.

Definition at line 114 of file CSingleOnlyStorage.java.

◆ getSingleElement()

final M org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.getSingleElement ( @Nonnull final String  p_key)
Parameters
p_keykey
Returns
single-element or null

Implements org.lightjason.agentspeak.beliefbase.storage.IStorage< N, M >.

Definition at line 101 of file CSingleOnlyStorage.java.

◆ getSingleElementOrDefault()

final M org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.getSingleElementOrDefault ( @Nonnull final String  p_key,
final M  p_default 
)
Parameters
p_keykey
p_defaultdefault element
Returns
single-element or the default element

Implements org.lightjason.agentspeak.beliefbase.storage.IStorage< N, M >.

Definition at line 107 of file CSingleOnlyStorage.java.

◆ putMultiElement()

final boolean org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.putMultiElement ( @Nonnull final String  p_key,
final N  p_value 
)
Parameters
p_keykey
p_valuemulti-element
Returns
boolean if the element can be stored

Implements org.lightjason.agentspeak.beliefbase.storage.IStorage< N, M >.

Definition at line 71 of file CSingleOnlyStorage.java.

◆ putSingleElement()

final boolean org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.putSingleElement ( @Nonnull final String  p_key,
final M  p_value 
)
Parameters
p_keykey
p_valuesingle-element
Returns
boolean if the element can be stored

Implements org.lightjason.agentspeak.beliefbase.storage.IStorage< N, M >.

Definition at line 77 of file CSingleOnlyStorage.java.

◆ putSingleElementIfAbsent()

final boolean org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.putSingleElementIfAbsent ( @Nonnull final String  p_key,
final M  p_value 
)
Parameters
p_keykey
p_valuesingle-element
Returns
boolean if the element can be stored

Implements org.lightjason.agentspeak.beliefbase.storage.IStorage< N, M >.

Definition at line 83 of file CSingleOnlyStorage.java.

◆ removeMultiElement()

final boolean org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.removeMultiElement ( @Nonnull final String  p_key,
final N  p_value 
)
Parameters
p_keykey
p_valuemulti-element
Returns
boolean if the element can removed

Implements org.lightjason.agentspeak.beliefbase.storage.IStorage< N, M >.

Definition at line 89 of file CSingleOnlyStorage.java.

◆ removeSingleElement()

final boolean org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.removeSingleElement ( @Nonnull final String  p_key)
Parameters
p_keykey
Returns
boolean if the element can be removed

Implements org.lightjason.agentspeak.beliefbase.storage.IStorage< N, M >.

Definition at line 95 of file CSingleOnlyStorage.java.

◆ size()

◆ streamMultiElements()

final Stream<N> org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.streamMultiElements ( )
Returns
multi-element stream

Implements org.lightjason.agentspeak.beliefbase.storage.IStorage< N, M >.

Definition at line 46 of file CSingleOnlyStorage.java.

◆ streamSingleElements()

Stream<M> org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.streamSingleElements ( )
Returns
single-element stream

Implements org.lightjason.agentspeak.beliefbase.storage.IStorage< N, M >.

Definition at line 53 of file CSingleOnlyStorage.java.

Member Data Documentation

◆ m_elements

final Map<String, M> org.lightjason.agentspeak.beliefbase.storage.CSingleOnlyStorage< N, M >.m_elements = new ConcurrentHashMap<>()
private

Definition at line 42 of file CSingleOnlyStorage.java.