Search in sources :

Example 1 with SchemaMethod

use of org.apache.qpid.qmf2.common.SchemaMethod in project qpid by apache.

the class AgentExternalTest method setupSchema.

public void setupSchema() throws QmfException {
    System.out.println("*** AgentExternalTest initialising the various Schema classes ***");
    // Create and register schema for this agent.
    String packageName = "com.profitron.gizmo";
    // Declare a schema for a structured exception that can be used in failed method invocations.
    _exceptionSchema = new SchemaObjectClass(packageName, "exception");
    _exceptionSchema.addProperty(new SchemaProperty("whatHappened", QmfType.TYPE_STRING));
    _exceptionSchema.addProperty(new SchemaProperty("howBad", QmfType.TYPE_INT));
    _exceptionSchema.addProperty(new SchemaProperty("details", QmfType.TYPE_MAP));
    // Declare a control object to test methods against.
    _controlSchema = new SchemaObjectClass(packageName, "control");
    _controlSchema.addProperty(new SchemaProperty("state", QmfType.TYPE_STRING));
    _controlSchema.addProperty(new SchemaProperty("methodCount", QmfType.TYPE_INT));
    _controlSchema.addProperty(new SchemaProperty("offset", QmfType.TYPE_INT));
    _controlSchema.setIdNames("state");
    SchemaMethod stopMethod = new SchemaMethod("stop", "Stop Agent");
    stopMethod.addArgument(new SchemaProperty("message", QmfType.TYPE_STRING, "{dir:IN}"));
    _controlSchema.addMethod(stopMethod);
    SchemaMethod echoMethod = new SchemaMethod("echo", "Echo Arguments");
    echoMethod.addArgument(new SchemaProperty("message", QmfType.TYPE_STRING, "{dir:INOUT}"));
    _controlSchema.addMethod(echoMethod);
    SchemaMethod eventMethod = new SchemaMethod("event", "Raise an Event");
    eventMethod.addArgument(new SchemaProperty("text", QmfType.TYPE_STRING, "{dir:IN}"));
    eventMethod.addArgument(new SchemaProperty("severity", QmfType.TYPE_INT, "{dir:IN}"));
    _controlSchema.addMethod(eventMethod);
    SchemaMethod failMethod = new SchemaMethod("fail", "Expected to Fail");
    failMethod.addArgument(new SchemaProperty("useString", QmfType.TYPE_BOOL, "{dir:IN}"));
    failMethod.addArgument(new SchemaProperty("stringVal", QmfType.TYPE_STRING, "{dir:IN}"));
    failMethod.addArgument(new SchemaProperty("details", QmfType.TYPE_MAP, "{dir:IN}"));
    _controlSchema.addMethod(failMethod);
    SchemaMethod createMethod = new SchemaMethod("create_child", "Create Child Object");
    createMethod.addArgument(new SchemaProperty("name", QmfType.TYPE_STRING, "{dir:IN}"));
    createMethod.addArgument(new SchemaProperty("childAddr", QmfType.TYPE_MAP, "{dir:OUT}"));
    _controlSchema.addMethod(createMethod);
    // Declare the child class
    _childSchema = new SchemaObjectClass(packageName, "child");
    _childSchema.addProperty(new SchemaProperty("name", QmfType.TYPE_STRING));
    _childSchema.setIdNames("name");
    // Declare the event class
    _eventSchema = new SchemaEventClass(packageName, "event");
    _eventSchema.addProperty(new SchemaProperty("text", QmfType.TYPE_STRING));
    System.out.println("AgentExternalTest Schema classes initialised OK");
    _agent.registerObjectClass(_exceptionSchema);
    _agent.registerObjectClass(_controlSchema);
    _agent.registerObjectClass(_childSchema);
    _agent.registerEventClass(_eventSchema);
    System.out.println("AgentExternalTest Schema classes registered OK");
}
Also used : SchemaProperty(org.apache.qpid.qmf2.common.SchemaProperty) SchemaMethod(org.apache.qpid.qmf2.common.SchemaMethod) SchemaEventClass(org.apache.qpid.qmf2.common.SchemaEventClass) SchemaObjectClass(org.apache.qpid.qmf2.common.SchemaObjectClass)

Example 2 with SchemaMethod

use of org.apache.qpid.qmf2.common.SchemaMethod in project qpid by apache.

the class BigPayloadAgentTest method setupSchema.

public void setupSchema() throws QmfException {
    System.out.println("*** BigPayloadAgentTest initialising the various Schema classes ***");
    // Create and register schema for this agent.
    String packageName = "com.test.bigagent";
    // Declare a control object to test methods against.
    _controlSchema = new SchemaObjectClass(packageName, "control");
    _controlSchema.addProperty(new SchemaProperty("name", QmfType.TYPE_STRING));
    _controlSchema.setIdNames("name");
    SchemaMethod createMethod = new SchemaMethod("processPayload", "Process a large payload");
    createMethod.addArgument(new SchemaProperty("parameter", QmfType.TYPE_STRING, "{dir:IN}"));
    createMethod.addArgument(new SchemaProperty("return", QmfType.TYPE_STRING, "{dir:OUT}"));
    _controlSchema.addMethod(createMethod);
    System.out.println("BigPayloadAgentTest Schema classes initialised OK");
    _agent.registerObjectClass(_controlSchema);
    System.out.println("BigPayloadAgentTest Schema classes registered OK");
}
Also used : SchemaProperty(org.apache.qpid.qmf2.common.SchemaProperty) SchemaMethod(org.apache.qpid.qmf2.common.SchemaMethod) SchemaObjectClass(org.apache.qpid.qmf2.common.SchemaObjectClass)

Example 3 with SchemaMethod

use of org.apache.qpid.qmf2.common.SchemaMethod in project qpid by apache.

the class AgentTest method setupSchema.

public void setupSchema() throws QmfException {
    System.out.println("*** AgentTest initialising the various Schema classes ***");
    // Create and register schema for this agent.
    String packageName = "com.profitron.gizmo";
    // Declare a schema for a structured exception that can be used in failed method invocations.
    _exceptionSchema = new SchemaObjectClass(packageName, "exception");
    _exceptionSchema.addProperty(new SchemaProperty("whatHappened", QmfType.TYPE_STRING));
    _exceptionSchema.addProperty(new SchemaProperty("howBad", QmfType.TYPE_INT));
    _exceptionSchema.addProperty(new SchemaProperty("details", QmfType.TYPE_MAP));
    // Declare a control object to test methods against.
    _controlSchema = new SchemaObjectClass(packageName, "control");
    _controlSchema.addProperty(new SchemaProperty("state", QmfType.TYPE_STRING));
    _controlSchema.addProperty(new SchemaProperty("methodCount", QmfType.TYPE_INT));
    _controlSchema.addProperty(new SchemaProperty("offset", QmfType.TYPE_INT));
    _controlSchema.setIdNames("state");
    SchemaMethod stopMethod = new SchemaMethod("stop", "Stop Agent");
    stopMethod.addArgument(new SchemaProperty("message", QmfType.TYPE_STRING, "{dir:IN}"));
    _controlSchema.addMethod(stopMethod);
    SchemaMethod echoMethod = new SchemaMethod("echo", "Echo Arguments");
    echoMethod.addArgument(new SchemaProperty("message", QmfType.TYPE_STRING, "{dir:INOUT}"));
    _controlSchema.addMethod(echoMethod);
    SchemaMethod eventMethod = new SchemaMethod("event", "Raise an Event");
    eventMethod.addArgument(new SchemaProperty("text", QmfType.TYPE_STRING, "{dir:IN}"));
    eventMethod.addArgument(new SchemaProperty("severity", QmfType.TYPE_INT, "{dir:IN}"));
    _controlSchema.addMethod(eventMethod);
    SchemaMethod failMethod = new SchemaMethod("fail", "Expected to Fail");
    failMethod.addArgument(new SchemaProperty("useString", QmfType.TYPE_BOOL, "{dir:IN}"));
    failMethod.addArgument(new SchemaProperty("stringVal", QmfType.TYPE_STRING, "{dir:IN}"));
    failMethod.addArgument(new SchemaProperty("details", QmfType.TYPE_MAP, "{dir:IN}"));
    _controlSchema.addMethod(failMethod);
    SchemaMethod createMethod = new SchemaMethod("create_child", "Create Child Object");
    createMethod.addArgument(new SchemaProperty("name", QmfType.TYPE_STRING, "{dir:IN}"));
    createMethod.addArgument(new SchemaProperty("childAddr", QmfType.TYPE_MAP, "{dir:OUT}"));
    _controlSchema.addMethod(createMethod);
    // Declare the child class
    _childSchema = new SchemaObjectClass(packageName, "child");
    _childSchema.addProperty(new SchemaProperty("name", QmfType.TYPE_STRING));
    _childSchema.setIdNames("name");
    // Declare the event class
    _eventSchema = new SchemaEventClass(packageName, "event");
    _eventSchema.addProperty(new SchemaProperty("text", QmfType.TYPE_STRING));
    System.out.println("AgentTest Schema classes initialised OK");
    _agent.registerObjectClass(_exceptionSchema);
    _agent.registerObjectClass(_controlSchema);
    _agent.registerObjectClass(_childSchema);
    _agent.registerEventClass(_eventSchema);
    System.out.println("AgentTest Schema classes registered OK");
}
Also used : SchemaProperty(org.apache.qpid.qmf2.common.SchemaProperty) SchemaMethod(org.apache.qpid.qmf2.common.SchemaMethod) SchemaEventClass(org.apache.qpid.qmf2.common.SchemaEventClass) SchemaObjectClass(org.apache.qpid.qmf2.common.SchemaObjectClass)

Aggregations

SchemaMethod (org.apache.qpid.qmf2.common.SchemaMethod)3 SchemaObjectClass (org.apache.qpid.qmf2.common.SchemaObjectClass)3 SchemaProperty (org.apache.qpid.qmf2.common.SchemaProperty)3 SchemaEventClass (org.apache.qpid.qmf2.common.SchemaEventClass)2