SessionDescription { @Override public String toString() { StringBuilder builder = new StringBuilder(); builder.append(String.format("v=%s\n", version.toString())); builder.append(origin.toString()); return builder.toString(); } SessionDescription(); void parse(byte[] data); void init(Text text); Text getVersion(); void setVersion(String version); OriginField getOrigin(); void setOrigin(String name, String sessionID, String sessionVersion,
            String netType, String addressType, String address); String getSession(); ConnectionField getConnection(); TimeField getTime(); Text getFingerprint(); Text getFingerprint(MediaType mediaType); Collection<MediaDescriptorField> getMedia(); MediaDescriptorField getAudioDescriptor(); MediaDescriptorField getVideoDescriptor(); MediaDescriptorField getApplicationDescriptor(); boolean hasAudioDescriptor(); boolean hasVideoDescriptor(); boolean hasApplicationDescriptor(); boolean isIce(); boolean isAudioIce(); void reset(); @Override String toString();  }
@Test public void testSdpTemplate() { long s = System.nanoTime(); String sdp = null; for (int i = 0; i < 1000; i++) { sdp = sdp_template.replace("${audio.port}", Integer.toString(1234)); sdp = sdp.replace("${video.port}", Integer.toString(1234)); } long duration = System.nanoTime() - s; System.out.println(duration); System.out.println(sdp); }