StreamlineEventImpl extends ForwardingMap<String, Object> implements StreamlineEvent { public static StreamlineEventImpl.Builder builder() { return new StreamlineEventImpl.Builder(); } private  StreamlineEventImpl(); private  StreamlineEventImpl(Map<String, Object> keyValues, String dataSourceId, Map<String, Object> header,
                                String sourceStream, Map<String, Object> auxiliaryFieldsAndValues); static StreamlineEventImpl.Builder builder(); @Override Map<String, Object> getAuxiliaryFieldsAndValues(); @Override StreamlineEvent addAuxiliaryFieldAndValue(String field, Object value); @Override String getId(); @Override String getDataSourceId(); @Override String getSourceStream(); @Override StreamlineEvent addFieldsAndValues(Map<String, Object> fieldsAndValues); @Override StreamlineEvent addFieldAndValue(String key, Object value); @Override StreamlineEvent addHeaders(Map<String, Object> headers); @Override Map<String, Object> getHeader(); @Override byte[] getBytes(); @Override boolean equals(Object o); @Override int hashCode(); final Object put(String k, Object v); final Object remove(Object o); final void putAll(Map<? extends String, ? extends Object> map); final void clear(); static StreamlineEvent fromString(String s); @Override String toString(); final static String DEFAULT_SOURCE_STREAM; static final StreamlineEvent GROUP_BY_TRIGGER_EVENT; static final String TO_STRING_PREFIX; }
@Test public void testBuilder() { StreamlineEventImpl event = StreamlineEventImpl.builder().put("a", "A").build(); assertEquals(1, event.size()); assertEquals("A", event.get("a")); event = StreamlineEventImpl.builder().put("a", "A").put("b", "B").build(); assertEquals(2, event.size()); assertEquals("A", event.get("a")); assertEquals("B", event.get("b")); event = StreamlineEventImpl.builder().put("a", "A").putAll(ImmutableMap.of("b", "B", "c", "C")).build(); assertEquals(3, event.size()); assertEquals("A", event.get("a")); assertEquals("B", event.get("b")); assertEquals("C", event.get("c")); ImmutableMap<String, Object> kv = ImmutableMap.of("b", "B", "c", "C"); event = StreamlineEventImpl.builder().putAll(kv).build(); assertEquals(2, event.size()); assertEquals("B", event.get("b")); assertEquals("C", event.get("c")); assertTrue(kv == event.delegate()); event = StreamlineEventImpl.builder().put("a", "A").put("b", "B").build(); StreamlineEventImpl event2 = StreamlineEventImpl.builder().dataSourceId("dsrcid").putAll(event).build(); assertTrue(event.delegate() == event2.delegate()); }