mirror of
https://github.com/opensim/opensim.git
synced 2026-08-05 08:55:56 +08:00
*Added CommandIntentions that is used to describe a console commands hazard. HAZARDOUS if it modifies the simulator, NON_HAZARDOUS if it does a command that doesn't modify the simulator but does a background command such as a forced backup, and STATISTICAL if it returns debug or more information.
*This is useful for implementing a protection system from unwanted script execution or for application modules needing to know what a command does.
This commit is contained in:
@@ -47,12 +47,14 @@ namespace OpenSim.Region.Environment.Modules.Framework.InterfaceCommander
|
||||
private Action<object[]> m_command;
|
||||
private string m_help;
|
||||
private string m_name;
|
||||
private CommandIntentions m_intentions; //A permission type system could implement this and know what a command intends on doing.
|
||||
|
||||
public Command(string name, Action<Object[]> command, string help)
|
||||
public Command(string name, CommandIntentions intention, Action<Object[]> command, string help)
|
||||
{
|
||||
m_name = name;
|
||||
m_command = command;
|
||||
m_help = help;
|
||||
m_intentions = intention;
|
||||
}
|
||||
|
||||
#region ICommand Members
|
||||
@@ -67,6 +69,11 @@ namespace OpenSim.Region.Environment.Modules.Framework.InterfaceCommander
|
||||
get { return m_name; }
|
||||
}
|
||||
|
||||
public CommandIntentions Intentions
|
||||
{
|
||||
get { return m_intentions; }
|
||||
}
|
||||
|
||||
public string Help
|
||||
{
|
||||
get { return m_help; }
|
||||
|
||||
@@ -56,7 +56,7 @@ namespace OpenSim.Region.Environment.Modules.Framework.InterfaceCommander
|
||||
|
||||
public void PostInitialise()
|
||||
{
|
||||
Command testCommand = new Command("hello", InterfaceHelloWorld, "Says a simple debugging test string");
|
||||
Command testCommand = new Command("hello", CommandIntentions.COMMAND_STATISTICAL, InterfaceHelloWorld, "Says a simple debugging test string");
|
||||
testCommand.AddArgument("world", "Write world here", "string");
|
||||
|
||||
m_commander.RegisterCommand("hello", testCommand);
|
||||
|
||||
Reference in New Issue
Block a user