package cadena;

public class Scenario{
	public static void main(String[] args) throws Exception {
		org.omg.Components.CCMHome ccmhome;
		// Init the ORB.
		System.out.println("Initializing the ORB...");
		// Init the OpenCCM Components Runtime.
		org.omg.CORBA.ORB corbaorb = org.objectweb.ccm.Components.Runtime.init(args);

		// Obtain the Name Service.
		System.out.println("Obtaining the Name Service...");
		org.omg.CORBA.Object corbaobj = corbaorb.resolve_initial_references("NameService");
		org.omg.CosNaming.NamingContext namingContext = org.omg.CosNaming.NamingContextHelper.narrow(corbaobj);

		// Obtain the component servers.
		System.out.println("Obtaining Component Servers...");
		org.omg.CosNaming.NameComponent[] nameComponent = new org.omg.CosNaming.NameComponent[1];
		nameComponent[0] = new org.omg.CosNaming.NameComponent("Processor1","");
		corbaobj = namingContext.resolve(nameComponent);
		org.objectweb.ccm.Deployment.Server processor1_server =
		org.objectweb.ccm.Deployment.ServerHelper.narrow(corbaobj);


		// Obtain the container homes.
		org.omg.Components.Deployment.ComponentServer processor1_cs = 
		processor1_server.provide_component_server();

		//Install archives.
		System.out.println("Installing archives...");
		org.omg.Components.Deployment.ComponentInstallation processor1_inst = 
		processor1_server.provide_install();
		processor1_inst.install("mediumsp", "./archives/mediumsp.jar");
		processor1_inst.install("openccm_plugins", "./OpenCCM_Plugins.jar");

		org.omg.Components.Deployment.Container processor1_cont =
			processor1_cs.create_container(new org.omg.Components.ConfigValue[0]);

		System.out.println("Instantiating homes, components...");
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.common.EventChannelHomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.common.EventChannelHome eventchannelProcessor1Home = cadena.common.EventChannelHomeHelper.narrow(ccmhome);
		cadena.common.EventChannel eventchannel = eventchannelProcessor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.common.BMDeviceHomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.common.BMDeviceHome bmdeviceProcessor1Home = cadena.common.BMDeviceHomeHelper.narrow(ccmhome);
		cadena.common.BMDevice gps = bmdeviceProcessor1Home.create();
		cadena.common.BMDevice ins = bmdeviceProcessor1Home.create();
		cadena.common.BMDevice adc = bmdeviceProcessor1Home.create();
		cadena.common.BMDevice radar1 = bmdeviceProcessor1Home.create();
		cadena.common.BMDevice tracksensor1 = bmdeviceProcessor1Home.create();
		cadena.common.BMDevice tracksensor2 = bmdeviceProcessor1Home.create();
		cadena.common.BMDevice tracksensor3 = bmdeviceProcessor1Home.create();
		cadena.common.BMDevice tracksensor4 = bmdeviceProcessor1Home.create();
		cadena.common.BMDevice radar2 = bmdeviceProcessor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.FourCorrelatorHomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.FourCorrelatorHome fourcorrelatorProcessor1Home = cadena.mediumsp.FourCorrelatorHomeHelper.narrow(ccmhome);
		cadena.mediumsp.FourCorrelator toairframefourdataavailable = fourcorrelatorProcessor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.BMLazyActive1HomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.BMLazyActive1Home bmlazyactive1Processor1Home = cadena.mediumsp.BMLazyActive1HomeHelper.narrow(ccmhome);
		cadena.mediumsp.BMLazyActive1 airframe = bmlazyactive1Processor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.common.BMDisplayHomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.common.BMDisplayHome bmdisplayProcessor1Home = cadena.common.BMDisplayHomeHelper.narrow(ccmhome);
		cadena.common.BMDisplay navdisplay = bmdisplayProcessor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.ThreeCorrelatorHomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.ThreeCorrelatorHome threecorrelatorProcessor1Home = cadena.mediumsp.ThreeCorrelatorHomeHelper.narrow(ccmhome);
		cadena.mediumsp.ThreeCorrelator totrack1threedataavailable = threecorrelatorProcessor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.BMOpenED1HomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.BMOpenED1Home bmopened1Processor1Home = cadena.mediumsp.BMOpenED1HomeHelper.narrow(ccmhome);
		cadena.mediumsp.BMOpenED1 track1 = bmopened1Processor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.TwoCorrelatorHomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.TwoCorrelatorHome twocorrelatorProcessor1Home = cadena.mediumsp.TwoCorrelatorHomeHelper.narrow(ccmhome);
		cadena.mediumsp.TwoCorrelator totrack2twodataavailable = twocorrelatorProcessor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.BMOpenED2HomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.BMOpenED2Home bmopened2Processor1Home = cadena.mediumsp.BMOpenED2HomeHelper.narrow(ccmhome);
		cadena.mediumsp.BMOpenED2 track2 = bmopened2Processor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.common.BMOpenEDHomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.common.BMOpenEDHome bmopenedProcessor1Home = cadena.common.BMOpenEDHomeHelper.narrow(ccmhome);
		cadena.common.BMOpenED track3 = bmopenedProcessor1Home.create();
		cadena.common.BMOpenED track4 = bmopenedProcessor1Home.create();
		cadena.common.BMOpenED track6 = bmopenedProcessor1Home.create();
		cadena.mediumsp.TwoCorrelator totrack5twodataavailable = twocorrelatorProcessor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.BMClosedED1HomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.BMClosedED1Home bmcloseded1Processor1Home = cadena.mediumsp.BMClosedED1HomeHelper.narrow(ccmhome);
		cadena.mediumsp.BMClosedED1 track5 = bmcloseded1Processor1Home.create();
		cadena.mediumsp.BMClosedED1 track7 = bmcloseded1Processor1Home.create();
		cadena.mediumsp.BMClosedED1 track8 = bmcloseded1Processor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.common.BMClosedEDHomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.common.BMClosedEDHome bmclosededProcessor1Home = cadena.common.BMClosedEDHomeHelper.narrow(ccmhome);
		cadena.common.BMClosedED track9 = bmclosededProcessor1Home.create();
		cadena.mediumsp.BMClosedED1 track10 = bmcloseded1Processor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.TwelveCorrelatorHomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.TwelveCorrelatorHome twelvecorrelatorProcessor1Home = cadena.mediumsp.TwelveCorrelatorHomeHelper.narrow(ccmhome);
		cadena.mediumsp.TwelveCorrelator totacticalsteeringtwelvedataavailable = twelvecorrelatorProcessor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.BMOpenED3HomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.BMOpenED3Home bmopened3Processor1Home = cadena.mediumsp.BMOpenED3HomeHelper.narrow(ccmhome);
		cadena.mediumsp.BMOpenED3 tacticalsteering = bmopened3Processor1Home.create();
		cadena.common.BMDisplay hud = bmdisplayProcessor1Home.create();
		cadena.common.BMDisplay tacticaldisplay1 = bmdisplayProcessor1Home.create();
		cadena.common.BMDisplay tacticaldisplay2 = bmdisplayProcessor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.BMPushDataSource1HomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.BMPushDataSource1Home bmpushdatasource1Processor1Home = cadena.mediumsp.BMPushDataSource1HomeHelper.narrow(ccmhome);
		cadena.mediumsp.BMPushDataSource1 earthmodel = bmpushdatasource1Processor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.common.BMModeSourceHomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.common.BMModeSourceHome bmmodesourceProcessor1Home = cadena.common.BMModeSourceHomeHelper.narrow(ccmhome);
		cadena.common.BMModeSource pilotcontrols = bmmodesourceProcessor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.common.BMPassiveHomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.common.BMPassiveHome bmpassiveProcessor1Home = cadena.common.BMPassiveHomeHelper.narrow(ccmhome);
		cadena.common.BMPassive waypoint1 = bmpassiveProcessor1Home.create();
		cadena.common.BMPassive waypoint2 = bmpassiveProcessor1Home.create();
		cadena.common.BMPassive waypoint3 = bmpassiveProcessor1Home.create();
		cadena.common.BMPassive waypoint4 = bmpassiveProcessor1Home.create();
		cadena.common.BMPassive waypoint5 = bmpassiveProcessor1Home.create();
		cadena.common.BMPassive waypoint6 = bmpassiveProcessor1Home.create();
		cadena.common.BMPassive waypoint7 = bmpassiveProcessor1Home.create();
		cadena.common.BMPassive waypoint8 = bmpassiveProcessor1Home.create();
		cadena.common.BMPassive waypoint9 = bmpassiveProcessor1Home.create();
		cadena.common.BMPassive waypoint10 = bmpassiveProcessor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.BMLazyActive2HomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.BMLazyActive2Home bmlazyactive2Processor1Home = cadena.mediumsp.BMLazyActive2HomeHelper.narrow(ccmhome);
		cadena.mediumsp.BMLazyActive2 leg1 = bmlazyactive2Processor1Home.create();
		cadena.mediumsp.BMLazyActive2 leg2 = bmlazyactive2Processor1Home.create();
		cadena.mediumsp.BMLazyActive2 leg3 = bmlazyactive2Processor1Home.create();
		cadena.mediumsp.BMLazyActive2 leg4 = bmlazyactive2Processor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.BMLazyActive3HomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.BMLazyActive3Home bmlazyactive3Processor1Home = cadena.mediumsp.BMLazyActive3HomeHelper.narrow(ccmhome);
		cadena.mediumsp.BMLazyActive3 leg5 = bmlazyactive3Processor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.common.BMModalHomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.common.BMModalHome bmmodalProcessor1Home = cadena.common.BMModalHomeHelper.narrow(ccmhome);
		cadena.common.BMModal navsteering = bmmodalProcessor1Home.create();
		cadena.common.BMModal waypointsteering = bmmodalProcessor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.BMOpenED4HomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.BMOpenED4Home bmopened4Processor1Home = cadena.mediumsp.BMOpenED4HomeHelper.narrow(ccmhome);
		cadena.mediumsp.BMOpenED4 route = bmopened4Processor1Home.create();
		ccmhome = processor1_cont.install_home("mediumsp", "cadena.mediumsp.BMOpenED5HomeImpl.create_home",
 		new org.omg.Components.ConfigValue[0]);
		cadena.mediumsp.BMOpenED5Home bmopened5Processor1Home = cadena.mediumsp.BMOpenED5HomeHelper.narrow(ccmhome);
		cadena.mediumsp.BMOpenED5 flightplan = bmopened5Processor1Home.create();
		cadena.common.BMDisplay flightplandisplay = bmdisplayProcessor1Home.create();
		cadena.common.BMDisplay navdisplay2 = bmdisplayProcessor1Home.create();
		cadena.common.BMClosedED groundpoints = bmclosededProcessor1Home.create();
		cadena.common.BMOpenED pilotprefs = bmopenedProcessor1Home.create();

		System.out.println("set instance names...");
		eventchannel.name("EventChannel");
		gps.name("GPS");
		ins.name("INS");
		adc.name("ADC");
		radar1.name("Radar1");
		tracksensor1.name("TrackSensor1");
		tracksensor2.name("TrackSensor2");
		tracksensor3.name("TrackSensor3");
		tracksensor4.name("TrackSensor4");
		radar2.name("Radar2");
		toairframefourdataavailable.name("ToAirFrameFourDataAvailable");
		airframe.name("AirFrame");
		navdisplay.name("NavDisplay");
		totrack1threedataavailable.name("ToTrack1ThreeDataAvailable");
		track1.name("Track1");
		totrack2twodataavailable.name("ToTrack2TwoDataAvailable");
		track2.name("Track2");
		track3.name("Track3");
		track4.name("Track4");
		track6.name("Track6");
		totrack5twodataavailable.name("ToTrack5TwoDataAvailable");
		track5.name("Track5");
		track7.name("Track7");
		track8.name("Track8");
		track9.name("Track9");
		track10.name("Track10");
		totacticalsteeringtwelvedataavailable.name("ToTacticalSteeringTwelveDataAvailable");
		tacticalsteering.name("TacticalSteering");
		hud.name("HUD");
		tacticaldisplay1.name("TacticalDisplay1");
		tacticaldisplay2.name("TacticalDisplay2");
		earthmodel.name("EarthModel");
		pilotcontrols.name("PilotControls");
		waypoint1.name("WayPoint1");
		waypoint2.name("WayPoint2");
		waypoint3.name("WayPoint3");
		waypoint4.name("WayPoint4");
		waypoint5.name("WayPoint5");
		waypoint6.name("WayPoint6");
		waypoint7.name("WayPoint7");
		waypoint8.name("WayPoint8");
		waypoint9.name("WayPoint9");
		waypoint10.name("WayPoint10");
		leg1.name("Leg1");
		leg2.name("Leg2");
		leg3.name("Leg3");
		leg4.name("Leg4");
		leg5.name("Leg5");
		navsteering.name("NavSteering");
		waypointsteering.name("WayPointSteering");
		route.name("Route");
		flightplan.name("FlightPlan");
		flightplandisplay.name("FlightPlanDisplay");
		navdisplay2.name("NavDisplay2");
		groundpoints.name("GroundPoints");
		pilotprefs.name("PilotPrefs");

		System.out.println("Interconnecting components...");
		eventchannel.subscribe_timeOut20(tracksensor3.get_consumer_timeOut());
		eventchannel.subscribe_timeOut20(radar2.get_consumer_timeOut());
		eventchannel.subscribe_timeOut20(ins.get_consumer_timeOut());
		eventchannel.subscribe_timeOut1(pilotcontrols.get_consumer_timeOut());
		eventchannel.subscribe_timeOut20(tracksensor1.get_consumer_timeOut());
		eventchannel.subscribe_timeOut1(earthmodel.get_consumer_timeOut());
		eventchannel.subscribe_timeOut20(tracksensor2.get_consumer_timeOut());
		eventchannel.subscribe_timeOut20(radar1.get_consumer_timeOut());
		eventchannel.subscribe_timeOut20(adc.get_consumer_timeOut());
		eventchannel.subscribe_timeOut20(gps.get_consumer_timeOut());
		eventchannel.subscribe_timeOut20(tracksensor4.get_consumer_timeOut());
		airframe.connect_dataIn1(gps.provide_dataOut());
		gps.subscribe_outDataAvailable(toairframefourdataavailable.get_consumer_inDataAvailable1());
		ins.subscribe_outDataAvailable(toairframefourdataavailable.get_consumer_inDataAvailable2());
		airframe.connect_dataIn2(ins.provide_dataOut());
		adc.subscribe_outDataAvailable(toairframefourdataavailable.get_consumer_inDataAvailable3());
		airframe.connect_dataIn3(adc.provide_dataOut());
		radar1.subscribe_outDataAvailable(toairframefourdataavailable.get_consumer_inDataAvailable4());
		airframe.connect_dataIn4(radar1.provide_dataOut());
		tracksensor1.subscribe_outDataAvailable(track3.get_consumer_inDataAvailable());
		track2.connect_dataIn1(tracksensor1.provide_dataOut());
		tracksensor1.subscribe_outDataAvailable(totrack1threedataavailable.get_consumer_inDataAvailable1());
		track1.connect_dataIn1(tracksensor1.provide_dataOut());
		track7.connect_dataIn1(tracksensor1.provide_dataOut());
		tracksensor1.subscribe_outDataAvailable(totrack2twodataavailable.get_consumer_inDataAvailable1());
		track3.connect_dataIn(tracksensor1.provide_dataOut());
		tracksensor2.subscribe_outDataAvailable(totrack1threedataavailable.get_consumer_inDataAvailable2());
		tracksensor2.subscribe_outDataAvailable(track4.get_consumer_inDataAvailable());
		track4.connect_dataIn(tracksensor2.provide_dataOut());
		tracksensor2.subscribe_outDataAvailable(totrack2twodataavailable.get_consumer_inDataAvailable2());
		track7.connect_dataIn2(tracksensor2.provide_dataOut());
		track1.connect_dataIn2(tracksensor2.provide_dataOut());
		track2.connect_dataIn2(tracksensor2.provide_dataOut());
		track1.connect_dataIn3(tracksensor3.provide_dataOut());
		tracksensor3.subscribe_outDataAvailable(totrack1threedataavailable.get_consumer_inDataAvailable3());
		track10.connect_dataIn1(tracksensor3.provide_dataOut());
		tracksensor3.subscribe_outDataAvailable(totrack5twodataavailable.get_consumer_inDataAvailable1());
		track5.connect_dataIn1(tracksensor3.provide_dataOut());
		track8.connect_dataIn1(tracksensor3.provide_dataOut());
		track8.connect_dataIn2(tracksensor4.provide_dataOut());
		track6.connect_dataIn(tracksensor4.provide_dataOut());
		tracksensor4.subscribe_outDataAvailable(track6.get_consumer_inDataAvailable());
		tracksensor4.subscribe_outDataAvailable(track9.get_consumer_inDataAvailable());
		track10.connect_dataIn2(tracksensor4.provide_dataOut());
		track9.connect_dataIn(tracksensor4.provide_dataOut());
		track5.connect_dataIn2(tracksensor4.provide_dataOut());
		tracksensor4.subscribe_outDataAvailable(totrack5twodataavailable.get_consumer_inDataAvailable2());
		radar2.subscribe_outDataAvailable(totacticalsteeringtwelvedataavailable.get_consumer_inDataAvailable11());
		tacticalsteering.connect_dataIn11(radar2.provide_dataOut());
		toairframefourdataavailable.subscribe_outDataAvailable(airframe.get_consumer_inDataAvailable());
		navdisplay.connect_dataIn(airframe.provide_dataOut());
		tacticalsteering.connect_dataIn12(airframe.provide_dataOut());
		airframe.subscribe_outDataAvailable(navdisplay.get_consumer_inDataAvailable());
		airframe.subscribe_outDataAvailable(totacticalsteeringtwelvedataavailable.get_consumer_inDataAvailable12());
		totrack1threedataavailable.subscribe_outDataAvailable(track1.get_consumer_inDataAvailable());
		track1.subscribe_outDataAvailable(totacticalsteeringtwelvedataavailable.get_consumer_inDataAvailable1());
		tacticalsteering.connect_dataIn1(track1.provide_dataOut());
		totrack2twodataavailable.subscribe_outDataAvailable(track7.get_consumer_inDataAvailable());
		totrack2twodataavailable.subscribe_outDataAvailable(track2.get_consumer_inDataAvailable());
		tacticalsteering.connect_dataIn2(track2.provide_dataOut());
		track2.subscribe_outDataAvailable(totacticalsteeringtwelvedataavailable.get_consumer_inDataAvailable2());
		tacticalsteering.connect_dataIn3(track3.provide_dataOut());
		track3.subscribe_outDataAvailable(totacticalsteeringtwelvedataavailable.get_consumer_inDataAvailable3());
		tacticalsteering.connect_dataIn4(track4.provide_dataOut());
		track4.subscribe_outDataAvailable(totacticalsteeringtwelvedataavailable.get_consumer_inDataAvailable4());
		tacticalsteering.connect_dataIn6(track6.provide_dataOut());
		track6.subscribe_outDataAvailable(totacticalsteeringtwelvedataavailable.get_consumer_inDataAvailable6());
		totrack5twodataavailable.subscribe_outDataAvailable(track5.get_consumer_inDataAvailable());
		totrack5twodataavailable.subscribe_outDataAvailable(track10.get_consumer_inDataAvailable());
		totrack5twodataavailable.subscribe_outDataAvailable(track8.get_consumer_inDataAvailable());
		track5.subscribe_outDataAvailable(totacticalsteeringtwelvedataavailable.get_consumer_inDataAvailable5());
		tacticalsteering.connect_dataIn5(track5.provide_dataOut());
		tacticalsteering.connect_dataIn7(track7.provide_dataOut());
		track7.subscribe_outDataAvailable(totacticalsteeringtwelvedataavailable.get_consumer_inDataAvailable7());
		tacticalsteering.connect_dataIn8(track8.provide_dataOut());
		track8.subscribe_outDataAvailable(totacticalsteeringtwelvedataavailable.get_consumer_inDataAvailable8());
		tacticalsteering.connect_dataIn9(track9.provide_dataOut());
		track9.subscribe_outDataAvailable(totacticalsteeringtwelvedataavailable.get_consumer_inDataAvailable9());
		tacticalsteering.connect_dataIn10(track10.provide_dataOut());
		track10.subscribe_outDataAvailable(totacticalsteeringtwelvedataavailable.get_consumer_inDataAvailable10());
		totacticalsteeringtwelvedataavailable.subscribe_outDataAvailable(tacticalsteering.get_consumer_inDataAvailable());
		tacticalsteering.subscribe_outDataAvailable(hud.get_consumer_inDataAvailable());
		hud.connect_dataIn(tacticalsteering.provide_dataOut());
		tacticaldisplay2.connect_dataIn(tacticalsteering.provide_dataOut());
		tacticalsteering.subscribe_outDataAvailable(tacticaldisplay2.get_consumer_inDataAvailable());
		tacticaldisplay1.connect_dataIn(tacticalsteering.provide_dataOut());
		tacticalsteering.subscribe_outDataAvailable(tacticaldisplay1.get_consumer_inDataAvailable());
		leg1.connect_dataIn1(waypoint1.provide_dataOut());
		earthmodel.connect_dataWriteOut1(waypoint1.provide_dataWriteIn());
		waypoint1.subscribe_outDataAvailable(leg1.get_consumer_inDataAvailable1());
		earthmodel.connect_dataWriteOut2(waypoint2.provide_dataWriteIn());
		waypoint2.subscribe_outDataAvailable(leg1.get_consumer_inDataAvailable2());
		leg1.connect_dataIn2(waypoint2.provide_dataOut());
		waypoint3.subscribe_outDataAvailable(leg1.get_consumer_inDataAvailable3());
		waypoint3.subscribe_outDataAvailable(leg2.get_consumer_inDataAvailable1());
		earthmodel.connect_dataWriteOut3(waypoint3.provide_dataWriteIn());
		leg2.connect_dataIn1(waypoint3.provide_dataOut());
		leg1.connect_dataIn3(waypoint3.provide_dataOut());
		waypoint4.subscribe_outDataAvailable(leg2.get_consumer_inDataAvailable2());
		earthmodel.connect_dataWriteOut4(waypoint4.provide_dataWriteIn());
		leg2.connect_dataIn2(waypoint4.provide_dataOut());
		waypoint5.subscribe_outDataAvailable(leg3.get_consumer_inDataAvailable1());
		leg3.connect_dataIn1(waypoint5.provide_dataOut());
		earthmodel.connect_dataWriteOut5(waypoint5.provide_dataWriteIn());
		leg2.connect_dataIn3(waypoint5.provide_dataOut());
		waypoint5.subscribe_outDataAvailable(leg2.get_consumer_inDataAvailable3());
		leg3.connect_dataIn2(waypoint6.provide_dataOut());
		earthmodel.connect_dataWriteOut6(waypoint6.provide_dataWriteIn());
		waypoint6.subscribe_outDataAvailable(leg3.get_consumer_inDataAvailable2());
		waypoint7.subscribe_outDataAvailable(leg3.get_consumer_inDataAvailable3());
		leg3.connect_dataIn3(waypoint7.provide_dataOut());
		earthmodel.connect_dataWriteOut7(waypoint7.provide_dataWriteIn());
		waypoint7.subscribe_outDataAvailable(leg4.get_consumer_inDataAvailable1());
		leg4.connect_dataIn1(waypoint7.provide_dataOut());
		leg4.connect_dataIn2(waypoint8.provide_dataOut());
		earthmodel.connect_dataWriteOut8(waypoint8.provide_dataWriteIn());
		waypoint8.subscribe_outDataAvailable(leg4.get_consumer_inDataAvailable2());
		leg4.connect_dataIn3(waypoint9.provide_dataOut());
		waypoint9.subscribe_outDataAvailable(leg5.get_consumer_inDataAvailable1());
		leg5.connect_dataIn1(waypoint9.provide_dataOut());
		earthmodel.connect_dataWriteOut9(waypoint9.provide_dataWriteIn());
		waypoint9.subscribe_outDataAvailable(leg4.get_consumer_inDataAvailable3());
		leg5.connect_dataIn2(waypoint10.provide_dataOut());
		waypoint10.subscribe_outDataAvailable(leg5.get_consumer_inDataAvailable2());
		earthmodel.connect_dataWriteOut10(waypoint10.provide_dataWriteIn());
		leg1.subscribe_outDataAvailable(route.get_consumer_inDataAvailable1());
		route.connect_dataIn1(leg1.provide_dataOut());
		route.connect_dataIn2(leg2.provide_dataOut());
		leg2.subscribe_outDataAvailable(route.get_consumer_inDataAvailable2());
		route.connect_dataIn3(leg3.provide_dataOut());
		leg3.subscribe_outDataAvailable(route.get_consumer_inDataAvailable3());
		leg4.subscribe_outDataAvailable(route.get_consumer_inDataAvailable4());
		route.connect_dataIn4(leg4.provide_dataOut());
		leg5.subscribe_outDataAvailable(route.get_consumer_inDataAvailable5());
		route.connect_dataIn5(leg5.provide_dataOut());
		navdisplay2.connect_dataIn(navsteering.provide_dataOut());
		pilotcontrols.connect_modeToggle1(navsteering.provide_modeChange());
		navsteering.subscribe_outDataAvailable(navdisplay2.get_consumer_inDataAvailable());
		waypointsteering.subscribe_outDataAvailable(flightplandisplay.get_consumer_inDataAvailable());
		pilotcontrols.connect_modeToggle2(waypointsteering.provide_modeChange());
		flightplandisplay.connect_dataIn(waypointsteering.provide_dataOut());
		flightplan.connect_dataIn1(route.provide_dataOut());
		groundpoints.connect_dataIn(route.provide_dataOut());
		route.subscribe_outDataAvailable(flightplan.get_consumer_inDataAvailable());
		route.subscribe_outDataAvailable(groundpoints.get_consumer_inDataAvailable());
		waypointsteering.connect_dataIn(flightplan.provide_dataOut());
		flightplan.subscribe_outDataAvailable(waypointsteering.get_consumer_inDataAvailable());
		groundpoints.subscribe_outDataAvailable(navsteering.get_consumer_inDataAvailable());
		navsteering.connect_dataIn(groundpoints.provide_dataOut());
		flightplan.connect_dataIn2(pilotprefs.provide_dataOut());

		System.out.println("Components configuration completion...");
		eventchannel.configuration_complete();
		gps.configuration_complete();
		ins.configuration_complete();
		adc.configuration_complete();
		radar1.configuration_complete();
		tracksensor1.configuration_complete();
		tracksensor2.configuration_complete();
		tracksensor3.configuration_complete();
		tracksensor4.configuration_complete();
		radar2.configuration_complete();
		toairframefourdataavailable.configuration_complete();
		airframe.configuration_complete();
		navdisplay.configuration_complete();
		totrack1threedataavailable.configuration_complete();
		track1.configuration_complete();
		totrack2twodataavailable.configuration_complete();
		track2.configuration_complete();
		track3.configuration_complete();
		track4.configuration_complete();
		track6.configuration_complete();
		totrack5twodataavailable.configuration_complete();
		track5.configuration_complete();
		track7.configuration_complete();
		track8.configuration_complete();
		track9.configuration_complete();
		track10.configuration_complete();
		totacticalsteeringtwelvedataavailable.configuration_complete();
		tacticalsteering.configuration_complete();
		hud.configuration_complete();
		tacticaldisplay1.configuration_complete();
		tacticaldisplay2.configuration_complete();
		earthmodel.configuration_complete();
		pilotcontrols.configuration_complete();
		waypoint1.configuration_complete();
		waypoint2.configuration_complete();
		waypoint3.configuration_complete();
		waypoint4.configuration_complete();
		waypoint5.configuration_complete();
		waypoint6.configuration_complete();
		waypoint7.configuration_complete();
		waypoint8.configuration_complete();
		waypoint9.configuration_complete();
		waypoint10.configuration_complete();
		leg1.configuration_complete();
		leg2.configuration_complete();
		leg3.configuration_complete();
		leg4.configuration_complete();
		leg5.configuration_complete();
		navsteering.configuration_complete();
		waypointsteering.configuration_complete();
		route.configuration_complete();
		flightplan.configuration_complete();
		flightplandisplay.configuration_complete();
		navdisplay2.configuration_complete();
		groundpoints.configuration_complete();
		pilotprefs.configuration_complete();
		System.exit(0);
	}
}


syntax highlighted by Code2HTML, v. 0.9.1