/** @exclude */ public void read(NetworkDataRepresentation ndr) { // if (opnum == 10) FOR TESTING ONLY // { // byte[] buffer = new byte[360]; // FileInputStream inputStream; // try { // inputStream = new FileInputStream("c:/temp/ONEEVENTSTRUCT"); // inputStream.read(buffer,0,360); // } catch (Exception e) { // // TODO Auto-generated catch block // e.printStackTrace(); // } // // NdrBuffer ndrBuffer = new NdrBuffer(buffer,0); // ndr.setBuffer(ndrBuffer); // NetworkDataRepresentation ndr2 = new NetworkDataRepresentation(); // ndr2.setBuffer(ndrBuffer); // read2(ndr2); // } // interpret based on the out params flags if (!readOnlyHRESULT) { if (splCOMVersion) { // during handshake and no other time. Kept for OxidResolver methods. serverAlive2 = new JIComVersion(ndr.readUnsignedShort(), ndr.readUnsignedShort()); new JIPointer(new JIPointer(JIDualStringArray.class)) .decode(ndr, new ArrayList(), JIFlags.FLAG_NULL, new HashMap()); ndr.readUnsignedLong(); } else { JIOrpcThat orpcThat = JIOrpcThat.decode(ndr); readPacket(ndr, false); } } readResult(ndr); }
void write2(NetworkDataRepresentation ndr) { // reset buffer size here... // calculate rough length required length + 16 for the last bytes // plus adding 30 more for the verifier etc. ndr.getBuffer().buf = new byte[bufferLength() + 16 + 30]; JIOrpcThat.encode(ndr); writePacket(ndr); }