//ResultImpl.java import IDLInterchange.*; import CosPropertyService.*; import ACM.*; public class ResultImpl extends CCollectionImpl implements Runnable { Thread result_collection; private USMarc lusmarc = new USMarc(); private boolean started; private static boolean gatekeeper; public static boolean completed; public static GeneralDoc[] objects = new GeneralDoc[100]; // objects[0] contains the names of the properties, it is never used for // something else public static short pobjects; public static short current_MessageID; public static int total = -1; private short calls; // pointer to the next two tables // these tables hold the information sent by the proxy // we need tables just in case the proxy sends the docs in more than // one connection (several calls to AddItems) private IDLInterchange.TItemsACState[] resultdata = new IDLInterchange.TItemsACState[50]; private IDLInterchange.TAccessOption[][] moredata = new IDLInterchange.TAccessOption[50][1]; private static String nameRC; // Here the implementation of the Result Collection begins public ResultImpl () { started = false; nameRC = "ResultTarget"; gatekeeper = false; // Creating the thread System.out.println("Creating the thread...."); result_collection = new Thread(this); result_collection.start(); System.out.println("Thread created"); } public ResultImpl (int usegatekeeper, String pnameRC) { started = false; nameRC = pnameRC; if ( usegatekeeper == 1 ) { gatekeeper = true; } else { gatekeeper = false; } // Creating the thread System.out.println("Creating the thread...."); result_collection = new Thread(this); result_collection.start(); System.out.println("Thread created"); } public ResultImpl (String name) { super(name); Init(); } public void SetItemsProperties( CosPropertyService.Any pMessageID, IDLInterchange.TItemsCookieState pItems) { System.out.println("Result Target: SetItemsProperties\n"); if ( current_MessageID != (pMessageID.a_short())) { System.out.println("Error: Different message IDs"); return; } try { for(int i =0;i