org.jboss.dna.graph.commands.executor
Class NoOpCommandExecutor

java.lang.Object
  extended by org.jboss.dna.graph.commands.executor.AbstractCommandExecutor
      extended by org.jboss.dna.graph.commands.executor.NoOpCommandExecutor
All Implemented Interfaces:
CommandExecutor

public class NoOpCommandExecutor
extends AbstractCommandExecutor

Author:
Randall Hauch

Constructor Summary
NoOpCommandExecutor(ExecutionContext context, String sourceName)
          Create a command executor that does nothing.
NoOpCommandExecutor(ExecutionContext context, String sourceName, DateTime now)
          Create a command executor that does nothing.
 
Method Summary
 void execute(CompositeCommand command)
          Execute a composite command that contains other commands. This method should simply obtain and execute each of the nested commands.
 void execute(CopyBranchCommand command)
          Execute a command to copy an entire branch to a new location.
 void execute(CopyNodeCommand command)
          Execute a command to copy a node to a new location.
 void execute(CreateNodeCommand command)
          Execute a command to create a node and set the node's properties.
 void execute(DeleteBranchCommand command)
          Execute a command to delete an entire branch.
 void execute(GetChildrenCommand command)
          Execute a command to get the children of a node.
 void execute(GetNodeCommand command)
          Execute a command to get the properties and children of a node. GetNodeCommand is a subtype of both GetPropertiesCommand and GetChildrenCommand, so this method will be called in place of the CommandExecutor.execute(GetPropertiesCommand) and CommandExecutor.execute(GetChildrenCommand) methods.

This method implementation simply delegates to both the AbstractCommandExecutor.execute(GetPropertiesCommand) and AbstractCommandExecutor.execute(GetChildrenCommand) methods, and should be overridden by subclasses that can process GetNodeCommand more efficiently as a single command.

 void execute(GetPropertiesCommand command)
          Execute a command to get the properties of a node.
 void execute(GraphCommand command)
          Execute a graph command. This method should examine the command's types to determine which other execute methods should be called, and should then call those methods. This method should also do nothing if the command is null.

This implementation examines the instance to see which command interfaces are implemented by the command, and delegates to the appropriate methods.

 void execute(MoveBranchCommand command)
          Execute a command to move a branch from one location to another.
 void execute(RecordBranchCommand command)
          Execute a command to record the structure of a branch.
 void execute(SetPropertiesCommand command)
          Execute a command to set some (or all) of the properties on a node.
 
Methods inherited from class org.jboss.dna.graph.commands.executor.AbstractCommandExecutor
close, getCurrentTimeInUtc, getExecutionContext, getSourceName
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NoOpCommandExecutor

public NoOpCommandExecutor(ExecutionContext context,
                           String sourceName)
Create a command executor that does nothing.

Parameters:
context - the execution context in which the executor will be run; may not be null
sourceName - the name of the RepositorySource that is making use of this executor; may not be null or empty

NoOpCommandExecutor

public NoOpCommandExecutor(ExecutionContext context,
                           String sourceName,
                           DateTime now)
Create a command executor that does nothing.

Parameters:
context - the execution context in which the executor will be run; may not be null
sourceName - the name of the RepositorySource that is making use of this executor; may not be null or empty
now - the current time; may be null if the system time is to be used
Method Detail

execute

public void execute(GraphCommand command)
             throws RepositorySourceException
Execute a graph command. This method should examine the command's types to determine which other execute methods should be called, and should then call those methods. This method should also do nothing if the command is null.

This implementation examines the instance to see which command interfaces are implemented by the command, and delegates to the appropriate methods.

Specified by:
execute in interface CommandExecutor
Overrides:
execute in class AbstractCommandExecutor
Parameters:
command - the command to be executed
Throws:
RepositorySourceException - if there is an error executing the command
See Also:
AbstractCommandExecutor.execute(org.jboss.dna.graph.commands.GraphCommand)

execute

public void execute(CompositeCommand command)
             throws RepositorySourceException
Execute a composite command that contains other commands. This method should simply obtain and execute each of the nested commands.

Specified by:
execute in interface CommandExecutor
Overrides:
execute in class AbstractCommandExecutor
Parameters:
command - the command to be executed; may not be null
Throws:
RepositorySourceException - if there is an error executing the command
See Also:
AbstractCommandExecutor.execute(org.jboss.dna.graph.commands.CompositeCommand)

execute

public void execute(GetNodeCommand command)
             throws RepositorySourceException
Execute a command to get the properties and children of a node. GetNodeCommand is a subtype of both GetPropertiesCommand and GetChildrenCommand, so this method will be called in place of the CommandExecutor.execute(GetPropertiesCommand) and CommandExecutor.execute(GetChildrenCommand) methods.

This method implementation simply delegates to both the AbstractCommandExecutor.execute(GetPropertiesCommand) and AbstractCommandExecutor.execute(GetChildrenCommand) methods, and should be overridden by subclasses that can process GetNodeCommand more efficiently as a single command.

Specified by:
execute in interface CommandExecutor
Overrides:
execute in class AbstractCommandExecutor
Parameters:
command - the command to be executed; may not be null
Throws:
RepositorySourceException - if there is an error executing the command
See Also:
AbstractCommandExecutor.execute(org.jboss.dna.graph.commands.GetNodeCommand)

execute

public void execute(CopyBranchCommand command)
             throws RepositorySourceException
Execute a command to copy an entire branch to a new location.

Specified by:
execute in interface CommandExecutor
Overrides:
execute in class AbstractCommandExecutor
Parameters:
command - the command to be executed; may not be null
Throws:
RepositorySourceException - if there is an error executing the command
See Also:
AbstractCommandExecutor.execute(org.jboss.dna.graph.commands.CopyBranchCommand)

execute

public void execute(CopyNodeCommand command)
             throws RepositorySourceException
Execute a command to copy a node to a new location.

Specified by:
execute in interface CommandExecutor
Overrides:
execute in class AbstractCommandExecutor
Parameters:
command - the command to be executed; may not be null
Throws:
RepositorySourceException - if there is an error executing the command
See Also:
AbstractCommandExecutor.execute(org.jboss.dna.graph.commands.CopyNodeCommand)

execute

public void execute(CreateNodeCommand command)
             throws RepositorySourceException
Execute a command to create a node and set the node's properties.

Specified by:
execute in interface CommandExecutor
Overrides:
execute in class AbstractCommandExecutor
Parameters:
command - the command to be executed; may not be null
Throws:
RepositorySourceException - if there is an error executing the command
See Also:
AbstractCommandExecutor.execute(org.jboss.dna.graph.commands.CreateNodeCommand)

execute

public void execute(DeleteBranchCommand command)
             throws RepositorySourceException
Execute a command to delete an entire branch.

Specified by:
execute in interface CommandExecutor
Overrides:
execute in class AbstractCommandExecutor
Parameters:
command - the command to be executed; may not be null
Throws:
RepositorySourceException - if there is an error executing the command
See Also:
AbstractCommandExecutor.execute(org.jboss.dna.graph.commands.DeleteBranchCommand)

execute

public void execute(GetChildrenCommand command)
             throws RepositorySourceException
Execute a command to get the children of a node.

Specified by:
execute in interface CommandExecutor
Overrides:
execute in class AbstractCommandExecutor
Parameters:
command - the command to be executed; may not be null
Throws:
RepositorySourceException - if there is an error executing the command
See Also:
AbstractCommandExecutor.execute(org.jboss.dna.graph.commands.GetChildrenCommand)

execute

public void execute(GetPropertiesCommand command)
             throws RepositorySourceException
Execute a command to get the properties of a node.

Specified by:
execute in interface CommandExecutor
Overrides:
execute in class AbstractCommandExecutor
Parameters:
command - the command to be executed; may not be null
Throws:
RepositorySourceException - if there is an error executing the command
See Also:
AbstractCommandExecutor.execute(org.jboss.dna.graph.commands.GetPropertiesCommand)

execute

public void execute(MoveBranchCommand command)
             throws RepositorySourceException
Execute a command to move a branch from one location to another.

Specified by:
execute in interface CommandExecutor
Overrides:
execute in class AbstractCommandExecutor
Parameters:
command - the command to be executed; may not be null
Throws:
RepositorySourceException - if there is an error executing the command
See Also:
AbstractCommandExecutor.execute(org.jboss.dna.graph.commands.MoveBranchCommand)

execute

public void execute(RecordBranchCommand command)
             throws RepositorySourceException
Execute a command to record the structure of a branch.

Specified by:
execute in interface CommandExecutor
Overrides:
execute in class AbstractCommandExecutor
Parameters:
command - the command to be executed; may not be null
Throws:
RepositorySourceException - if there is an error executing the command
See Also:
AbstractCommandExecutor.execute(org.jboss.dna.graph.commands.RecordBranchCommand)

execute

public void execute(SetPropertiesCommand command)
             throws RepositorySourceException
Execute a command to set some (or all) of the properties on a node.

Specified by:
execute in interface CommandExecutor
Overrides:
execute in class AbstractCommandExecutor
Parameters:
command - the command to be executed; may not be null
Throws:
RepositorySourceException - if there is an error executing the command
See Also:
AbstractCommandExecutor.execute(org.jboss.dna.graph.commands.SetPropertiesCommand)


Copyright © 2008-Present JBoss a division of Red Hat. All Rights Reserved.