LightJason - AgentSpeak(L++)
org.lightjason.agentspeak.action.builtin.storage.CRemove Class Reference

removes an element by name from the storage. More...

+ Inheritance diagram for org.lightjason.agentspeak.action.builtin.storage.CRemove:
+ Collaboration diagram for org.lightjason.agentspeak.action.builtin.storage.CRemove:

Public Member Functions

 CRemove ()
 ctor More...
 
 CRemove ( @Nonnull final Function< String, Boolean > p_resolver)
 ctor More...
 
 CRemove ( @Nullable final String... p_forbidden)
 ctor More...
 
 CRemove ( @Nonnull final Stream< String > p_fordbidden)
 ctor More...
 
final IFuzzyValue< Boolean > execute (final boolean p_parallel, @Nonnull final IContext p_context, @Nonnull final List< ITerm > p_argument, @Nonnull final List< ITerm > p_return)
 defines a plan-body operation More...
 
final int minimalArgumentNumber ()
 minimum number of arguments More...
 
- Public Member Functions inherited from org.lightjason.agentspeak.action.builtin.storage.IStorage
final Stream< Boolean > forbiddenkeys ( @Nonnull final Stream< String > p_keys)
 returns a stream which keys are forbidden More...
 
final Stream< Boolean > forbiddenkeys ( @Nonnull final String... p_keys)
 returns a stream which keys are forbidden More...
 
- Public Member Functions inherited from org.lightjason.agentspeak.action.builtin.IBuiltinAction
final IPath name ()
 returns the name with path of the action More...
 
- Public Member Functions inherited from org.lightjason.agentspeak.action.IBaseAction
final boolean equals (final Object p_object)
 
final int hashCode ()
 
final String toString ()
 
- Public Member Functions inherited from org.lightjason.agentspeak.action.IAction
default Stream< IVariable<?> > variables ()
 returns a stream with all used variables More...
 

Private Member Functions

void remove ( @Nonnull final IAgent<?> p_agent, @Nonnull final String p_key, @Nonnull final List< ITerm > p_return)
 removes a value from the storage More...
 

Static Private Attributes

static final long serialVersionUID = 7237340367513736766L
 serial id More...
 

Additional Inherited Members

- Public Attributes inherited from org.lightjason.agentspeak.action.IAction
long serialVersionUID = -6374480398439703170L
 serial id More...
 
- Protected Member Functions inherited from org.lightjason.agentspeak.action.builtin.storage.IStorage
 IStorage ()
 ctor More...
 
 IStorage ( @Nonnull final Function< String, Boolean > p_resolver)
 ctor More...
 
 IStorage ( @Nullable final String... p_forbidden)
 ctor More...
 
 IStorage ( @Nonnull final Stream< String > p_fordbidden)
 ctor More...
 
- Protected Member Functions inherited from org.lightjason.agentspeak.action.builtin.IBuiltinAction
 IBuiltinAction ()
 ctor More...
 
 IBuiltinAction (final int p_length)
 ctor More...
 
- Protected Attributes inherited from org.lightjason.agentspeak.action.builtin.storage.IStorage
final Function< String, Boolean > m_resolver
 set with forbidden keys More...
 
- Static Protected Attributes inherited from org.lightjason.agentspeak.action.builtin.IBuiltinAction
static final Logger LOGGER = CCommon.logger( IBuiltinAction.class )
 logger More...
 
- Static Protected Attributes inherited from org.lightjason.agentspeak.action.IBaseAction
static final Logger LOGGER = org.lightjason.agentspeak.common.CCommon.logger( IAction.class )
 logger More...
 

Detailed Description

The actions removes any value from the storage which is referenced by the key and returns the value, the action never fails

[A|B] = storage/remove("foo", "bar");

Definition at line 50 of file storage/CRemove.java.

Constructor & Destructor Documentation

◆ CRemove() [1/4]

org.lightjason.agentspeak.action.builtin.storage.CRemove.CRemove ( )

Definition at line 60 of file storage/CRemove.java.

◆ CRemove() [2/4]

org.lightjason.agentspeak.action.builtin.storage.CRemove.CRemove ( @Nonnull final Function< String, Boolean >  p_resolver)
Parameters
p_resolverresolver function

Definition at line 70 of file storage/CRemove.java.

◆ CRemove() [3/4]

org.lightjason.agentspeak.action.builtin.storage.CRemove.CRemove ( @Nullable final String...  p_forbidden)
Parameters
p_forbiddenforbidden keys

Definition at line 80 of file storage/CRemove.java.

◆ CRemove() [4/4]

org.lightjason.agentspeak.action.builtin.storage.CRemove.CRemove ( @Nonnull final Stream< String >  p_fordbidden)
Parameters
p_fordbiddenstream with borbidden keys

Definition at line 90 of file storage/CRemove.java.

Member Function Documentation

◆ execute()

final IFuzzyValue<Boolean> org.lightjason.agentspeak.action.builtin.storage.CRemove.execute ( final boolean  p_parallel,
@Nonnull final IContext  p_context,
@Nonnull final List< ITerm p_argument,
@Nonnull final List< ITerm p_return 
)
Parameters
p_parallelparallel execution
p_contextcurrent execution context
p_argumentparameter of the action
p_returnreturn values
Returns
fuzzy boolean

Implements org.lightjason.agentspeak.language.execution.IExecution.

Definition at line 104 of file storage/CRemove.java.

References org.lightjason.agentspeak.language.CCommon.flatten(), and org.lightjason.agentspeak.language.fuzzy.CFuzzyValue< T >.from().

+ Here is the call graph for this function:

◆ minimalArgumentNumber()

final int org.lightjason.agentspeak.action.builtin.storage.CRemove.minimalArgumentNumber ( )
Returns
number of minimal arguments

Implements org.lightjason.agentspeak.action.IAction.

Definition at line 97 of file storage/CRemove.java.

◆ remove()

void org.lightjason.agentspeak.action.builtin.storage.CRemove.remove ( @Nonnull final IAgent<?>  p_agent,
@Nonnull final String  p_key,
@Nonnull final List< ITerm p_return 
)
private
Parameters
p_agentagent
p_keykey
p_returnreturn arguments

Definition at line 122 of file storage/CRemove.java.

References org.lightjason.agentspeak.language.CRawTerm< T >.from(), and org.lightjason.agentspeak.action.builtin.storage.IStorage.m_resolver.

+ Here is the call graph for this function:

Member Data Documentation

◆ serialVersionUID

final long org.lightjason.agentspeak.action.builtin.storage.CRemove.serialVersionUID = 7237340367513736766L
staticprivate

Definition at line 55 of file storage/CRemove.java.