1 26 27 package org.objectweb.openccm.Containers; 28 29 36 37 public abstract class CallContextBase 38 extends org.omg.CORBA.LocalObject 39 implements CallContext 40 { 41 47 50 protected HomeServant the_home_servant_; 51 52 55 protected java.lang.String the_uid_; 56 57 63 67 public 68 CallContextBase(HomeServant servant, 69 java.lang.String uid) 70 { 71 the_home_servant_ = servant; 72 the_uid_ = uid; 73 } 74 75 81 84 protected abstract SystemConfiguration 85 getConfiguration(); 86 87 93 99 public CallCoordinator 100 get_call_coordinator(java.lang.String op_name) 101 { 102 SystemConfiguration config = getConfiguration(); 103 104 if (config == null) 105 return new org.objectweb.openccm.Containers.Plugins.EmptyCoordinator(); 106 107 SystemHomeFinder finder = the_home_servant_.the_home_finder(); 108 CallCoordinator coord = config.create_call_coordinator(the_uid_, op_name, finder); 109 CallController[] crtls = config.create_call_controllers(the_uid_, op_name, finder); 110 for (int i=0;i<crtls.length;i++) 111 coord.add(crtls[i]); 112 113 return coord; 114 } 115 116 122 public CallContext 123 duplicate(java.lang.String op_name) 124 { 125 CallContext child = new OperationCallContext(this, op_name); 126 return child; 127 } 128 129 135 public java.lang.String 136 uid() 137 { 138 return the_uid_; 139 } 140 141 147 public java.lang.String 148 operation_name() 149 { 150 throw new org.omg.CORBA.NO_IMPLEMENT (); 153 } 154 } 155 | Popular Tags |