VN1.waitReady();
VN2.waitReady();
Component boot = Utils.getBootstrapComponent();
PAGCMTypeFactory tf = Utils.getPAGCMTypeFactory(boot);
PAGenericFactory gf = Utils.getPAGenericFactory(boot);
ComponentType tComposite = tf.createFcType(new InterfaceType[] {
tf.createGCMItfType(
"runnable",
Runnable.class.getName(),
GCMTypeFactory.SERVER,
GCMTypeFactory.MANDATORY,
GCMTypeFactory.SINGLETON_CARDINALITY),
tf.createGCMItfType(
"scc",
SkandiumComponentController.class.getName(),
GCMTypeFactory.SERVER,
GCMTypeFactory.OPTIONAL,
GCMTypeFactory.SINGLETON_CARDINALITY)
});
ComponentType tExample = tf.createFcType(new InterfaceType[] {
tf.createGCMItfType(
"runnable",
Runnable.class.getName(),
GCMTypeFactory.SERVER,
GCMTypeFactory.MANDATORY,
GCMTypeFactory.SINGLETON_CARDINALITY),
tf.createGCMItfType(
"sc",
SkandiumComponent.class.getName(),
GCMTypeFactory.CLIENT,
GCMTypeFactory.MANDATORY,
GCMTypeFactory.SINGLETON_CARDINALITY),
tf.createGCMItfType(
"scrr",
SCResultReceiver.class.getName(),
GCMTypeFactory.SERVER,
GCMTypeFactory.MANDATORY,
GCMTypeFactory.SINGLETON_CARDINALITY)
});
ComponentType tSC = tf.createFcType(new InterfaceType[] {
tf.createGCMItfType(
"sc",
SkandiumComponent.class.getName(),
GCMTypeFactory.SERVER,
GCMTypeFactory.MANDATORY,
GCMTypeFactory.SINGLETON_CARDINALITY),
tf.createGCMItfType(
"scrr",
SCResultReceiver.class.getName(),
GCMTypeFactory.CLIENT,
GCMTypeFactory.OPTIONAL,
GCMTypeFactory.SINGLETON_CARDINALITY),
tf.createGCMItfType(
"sctS",
SCTransmitter.class.getName(),
GCMTypeFactory.SERVER,
GCMTypeFactory.MANDATORY,
GCMTypeFactory.SINGLETON_CARDINALITY),
tf.createGCMItfType(
"sct",
SCTransmitter.class.getName(),
GCMTypeFactory.CLIENT,
GCMTypeFactory.OPTIONAL,
GCMTypeFactory.SINGLETON_CARDINALITY),
tf.createGCMItfType(
"scrS",
SCReceiver.class.getName(),
GCMTypeFactory.SERVER,
GCMTypeFactory.MANDATORY,
GCMTypeFactory.SINGLETON_CARDINALITY),
tf.createGCMItfType(
"scr",
SCReceiver.class.getName(),
GCMTypeFactory.CLIENT,
GCMTypeFactory.OPTIONAL,
GCMTypeFactory.SINGLETON_CARDINALITY),
tf.createGCMItfType(
"scc",
SkandiumComponentController.class.getName(),
GCMTypeFactory.SERVER,
GCMTypeFactory.OPTIONAL,
GCMTypeFactory.SINGLETON_CARDINALITY)
});
Node N1composite = VN1.getANode();
Node N1example = VN1.getANode();
Node N1sc1 = VN1.getANode();
Node N2sc2 = VN2.getANode();
Component compositeComp = gf.newFcInstance(
tComposite,
new ControllerDescription("compositeComp", Constants.COMPOSITE),
null,
N1composite);
Component exampleComp = gf.newFcInstance(
tExample,
new ControllerDescription("exampleComp", Constants.PRIMITIVE),
new ContentDescription(NQueens.class.getName()),
N1example);
Component SC1 = gf.newFcInstance(
tSC,
new ControllerDescription("SC1", Constants.PRIMITIVE),
new ContentDescription(SkandiumComponentImp.class.getName()),
N1sc1);
Component SC2 = gf.newFcInstance(
tSC,
new ControllerDescription("SC2", Constants.PRIMITIVE),
new ContentDescription(SkandiumComponentImp.class.getName()),
N2sc2);