@Override public Oid deString(final String oidStr) { final char[] oidCharArray = oidStr.toCharArray(); byte[] oidBytes; try { oidBytes = Hex.decodeHex(oidCharArray); final ByteArrayInputStream bais = new ByteArrayInputStream(oidBytes); final DataInputStreamExtended inputImpl = new DataInputStreamExtended(bais); return inputImpl.readEncodable(Oid.class); } catch (final IOException ex) { throw new IsisException("Failed to read object", ex); } catch (final DecoderException ex) { throw new IsisException("Failed to hex decode object", ex); } }
@Before public void setUp() throws Exception { final PipedInputStream pipedInputStream = new PipedInputStream(); final PipedOutputStream pipedOutputStream = new PipedOutputStream(pipedInputStream); outputImpl = new DataOutputStreamExtended(pipedOutputStream); inputImpl = new DataInputStreamExtended(pipedInputStream); }
@Test public void shouldRoundTrip() throws IOException { final PipedInputStream pipedInputStream = new PipedInputStream(); final PipedOutputStream pipedOutputStream = new PipedOutputStream(pipedInputStream); final DataOutputStreamExtended outputImpl = new DataOutputStreamExtended(pipedOutputStream); final DataInputStreamExtended inputImpl = new DataInputStreamExtended(pipedInputStream); outputImpl.writeEncodable(encodable); final Object decodedEncodable = inputImpl.readEncodable(Object.class); assertRoundtripped(decodedEncodable, encodable); }
@Override public void connect() throws IOException { super.connect(); this.input = new DataInputStreamExtended(getTransport().getInputStream()); this.output = new DataOutputStreamExtended(getTransport().getOutputStream()); if (debugging) { this.input = new DebugDataInputExtended(input); this.output = new DebugDataOutputExtended(output); } }