use of org.hypertrace.core.datamodel.Entity in project hypertrace-ingester by hypertrace.
the class AvroEntityConverterTest method convertsAttributeLists.
@Test
void convertsAttributeLists() {
org.hypertrace.entity.data.service.v1.Entity inputEntity = BASIC_ENTITY.toBuilder().putAttributes("string-list", stringListAttributeValue("s-v-1", "s-v-2")).putAttributes("long-list", longListAttributeValue(42L, 30L)).putAttributes("double-list", doubleListAttributeValue(10.2, 30.3)).putAttributes("boolean-list", booleanListAttributeValue(true, false)).build();
Entity expectedAvroEntity = Entity.newBuilder(BASIC_AVRO_ENTITY).setAttributesBuilder(Attributes.newBuilder().setAttributeMap(Map.of("string-list", buildAttributeValueList(List.of("s-v-1", "s-v-2")), "long-list", buildAttributeValueList(List.of("42", "30")), "double-list", buildAttributeValueList(List.of("10.2", "30.3")), "boolean-list", buildAttributeValueList(List.of("true", "false"))))).build();
assertEquals(expectedAvroEntity, convertToAvroEntity(TENANT_ID, inputEntity).blockingGet());
}
use of org.hypertrace.core.datamodel.Entity in project hypertrace-ingester by hypertrace.
the class BaseViewGenerator method process.
@Override
public List<OUT> process(StructuredTrace trace) {
DataflowMetricUtils.reportArrivalLagAndInsertTimestamp(trace, viewGeneratorArrivalTimer, VIEW_GENERATION_ARRIVAL_TIME);
TraceState traceState = ViewGeneratorState.getTraceState(trace);
Map<String, Entity> entityMap = Collections.unmodifiableMap(traceState.getEntityMap());
Map<ByteBuffer, Event> eventMap = Collections.unmodifiableMap(traceState.getEventMap());
Map<ByteBuffer, List<ByteBuffer>> parentToChildrenEventIds = Collections.unmodifiableMap(traceState.getParentToChildrenEventIds());
Map<ByteBuffer, ByteBuffer> childToParentEventIds = Collections.unmodifiableMap(traceState.getChildToParentEventIds());
return generateView(trace, entityMap, eventMap, parentToChildrenEventIds, childToParentEventIds);
}
Aggregations