public DeleteStatement(Class<? extends TaggedLogAPIEntity> entityClass) { try { this.entityDefinition = EntityDefinitionManager.getEntityDefinitionByEntityClass(entityClass); } catch (InstantiationException e) { throw new IllegalArgumentException(e); } catch (IllegalAccessException e) { throw new IllegalArgumentException(e); } }
public RowkeyQueryStatement(List<String> rowkeys,String serviceName) throws IllegalAccessException, InstantiationException { this.rowkeys = rowkeys; this.entityDefinition = EntityDefinitionManager.getEntityByServiceName(serviceName); }
@Before public void setUp() { try { if (EntityDefinitionManager.getEntityByServiceName("TestLogAPIEntity") == null) { EntityDefinitionManager.registerEntity(TestLogAPIEntity.class); } ed = EntityDefinitionManager.getEntityByServiceName("TestLogAPIEntity"); } catch (InstantiationException e) { e.printStackTrace(); // To change body of catch statement use File | Settings | File Templates. } catch (IllegalAccessException e) { e.printStackTrace(); // To change body of catch statement use File | Settings | File Templates. } }
/** * it is allowed that user can register their own entity * * @param clazz entity class * @throws IllegalArgumentException */ public static void registerEntity(Class<? extends TaggedLogAPIEntity> clazz) throws IllegalArgumentException { registerEntity(createEntityDefinition(clazz)); }
private static void addRepo(EntityRepository repo) { final Map<Class<?>, EntitySerDeser<?>> serDeserMap = repo.getSerDeserMap(); for (Map.Entry<Class<?>, EntitySerDeser<?>> entry : serDeserMap.entrySet()) { EntityDefinitionManager.registerSerDeser(entry.getKey(), entry.getValue()); } final Collection<Class<? extends TaggedLogAPIEntity>> entityClasses = repo.getEntitySet(); for (Class<? extends TaggedLogAPIEntity> clazz : entityClasses) { EntityDefinitionManager.registerEntity(clazz); } }
@Before public void setUp() { try { ed = EntityDefinitionManager.getEntityDefinitionByEntityClass(TestLogAPIEntity.class); if (ed == null) { EntityDefinitionManager.registerEntity(TestLogAPIEntity.class); ed = EntityDefinitionManager.getEntityDefinitionByEntityClass(TestLogAPIEntity.class); } } catch (InstantiationException e) { Assert.fail(e.getMessage()); } catch (IllegalAccessException e) { Assert.fail(e.getMessage()); } }
try { if (request.getServiceName() != null) { entityDefinition = EntityDefinitionManager.getEntityByServiceName(request.getServiceName()); } else if (request.getEntityClassName() != null) { Class<? extends TaggedLogAPIEntity> entityClass = (Class<? extends TaggedLogAPIEntity>) Class.forName(request.getEntityClassName()); entityDefinition = EntityDefinitionManager.getEntityDefinitionByEntityClass(entityClass); } else { throw new AttributeResolveException("At least serviceName or entityClassName is required, but neither found");
@GET @Produces({"application/json", "application/xml"}) public Map<String, EntityDefinition> getServiceDefinitions() { Map<String, EntityDefinition> result = null; try { result = EntityDefinitionManager.entities(); } catch (Exception ex) { LOG.error("Error in getting entity definitions", ex); } return result; }
/** * it is allowed that user can register their own entity definition * * @param entityDef entity definition * @throws IllegalArgumentException */ public static void registerEntity(EntityDefinition entityDef) { registerEntity(entityDef.getService(), entityDef); }
@Test public void testCreateMetricEntityDefinition() { EntityDefinition entityDefinition = EntityDefinitionManager .createEntityDefinition(GenericMetricEntity.class); Assert.assertNotNull(entityDefinition); } }
@Before public void setUp() throws IllegalAccessException, InstantiationException, IOException { EntityDefinition entityDefinition = EntityDefinitionManager .getEntityDefinitionByEntityClass(TestLogAPIEntity.class); hbase.createTable(entityDefinition.getTable(), entityDefinition.getColumnFamily()); EntityDefinitionManager.registerEntity(TestLogAPIEntity.class); try { ed = EntityDefinitionManager.getEntityDefinitionByEntityClass(TestLogAPIEntity.class); ed.setTimeSeries(true); } catch (InstantiationException | IllegalAccessException e) { Assert.fail(e.getMessage()); } }
/** * it is allowed that user can register their own entity * @param clazz entity class * @throws IllegalArgumentException */ public static void registerEntity(Class<? extends TaggedLogAPIEntity> clazz) throws IllegalArgumentException{ registerEntity(createEntityDefinition(clazz)); }
@GET @Produces({"application/json", "application/xml"}) public Map<String, EntityDefinition> getServiceDefinitions(){ Map<String, EntityDefinition> result = null; try{ result = EntityDefinitionManager.entities(); }catch(Exception ex){ LOG.error("Error in getting entity definitions", ex); } return result; }
private static void addRepo(EntityRepository repo) { final Map<Class<?>, EntitySerDeser<?>> serDeserMap = repo.getSerDeserMap(); for (Map.Entry<Class<?>, EntitySerDeser<?>> entry : serDeserMap.entrySet()) { EntityDefinitionManager.registerSerDeser(entry.getKey(), entry.getValue()); } final Collection<Class<? extends TaggedLogAPIEntity>> entityClasses = repo.getEntitySet(); for (Class<? extends TaggedLogAPIEntity> clazz : entityClasses) { EntityDefinitionManager.registerEntity(clazz); } }
/** * it is allowed that user can register their own entity definition * @param entityDef entity definition * @throws IllegalArgumentException */ public static void registerEntity(EntityDefinition entityDef) { registerEntity(entityDef.getService(), entityDef); }
@Test public void testCreateEntityDefinition() { EntityDefinition entityDefinition = EntityDefinitionManager .createEntityDefinition(TestLogAPIEntity.class); Assert.assertNotNull(entityDefinition); }
@Override public <T> String build(T t) { if(t == null) return null; try { EntityDefinition entityDefinition = EntityDefinitionManager.getEntityDefinitionByEntityClass((Class<? extends TaggedLogAPIEntity>) t.getClass()); return EagleBase64Wrapper.encodeByteArray2URLSafeString(RowkeyHelper.getRowkey((TaggedLogAPIEntity) t,entityDefinition)); } catch (Exception e) { LOG.error("Got error to build rowKey for {}",t,e); throw new RuntimeException("Got error to build rowKey",e); } } }
private List<String> prepareData(int count) throws Exception { List<TaggedLogAPIEntity> list = new ArrayList<TaggedLogAPIEntity>(); EntityDefinition ed = EntityDefinitionManager.getEntityDefinitionByEntityClass(TestLogAPIEntity.class); EntityDefinitionManager.registerEntity(TestLogAPIEntity.class); ed = EntityDefinitionManager.getEntityDefinitionByEntityClass(TestLogAPIEntity.class);
public RowkeyQueryStatement(String rowkey,String serviceName) throws IllegalAccessException, InstantiationException { this.rowkeys = new ArrayList<>(1); this.rowkeys.add(rowkey); this.entityDefinition = EntityDefinitionManager.getEntityByServiceName(serviceName); }
@Test public void testObjectTypeFieldQuery() throws IllegalAccessException, InstantiationException { String startTime = DateTimeUtil.secondsToHumanDate(System.currentTimeMillis() / 1000); String endTime = DateTimeUtil.secondsToHumanDate((System.currentTimeMillis() + 1000) / 1000); String[] partitions = new String[2]; partitions[0] = "cluster"; partitions[1] = "datacenter"; EntityDefinitionManager.registerEntity(TestLogAPIEntity.class); EntityDefinition entityDef = EntityDefinitionManager.getEntityByServiceName("TestLogAPIEntity"); entityDef.setPartitions(partitions); entityDef.setTimeSeries(true); ListQueryResource resource = new ListQueryResource(); String query = "TestLogAPIEntity[]{@cluster}"; // Field with numeric query = "TestLogAPIEntity[@cluster=\"cluster1\" AND @datacenter=\"dc1\" AND " + "(@field1 < 1 or @field2 = 2 or @field3 = 13456789 or @field4 = 987654321 or @field5 = 5.6 or @field7 < \"value7\")]{@cluster}"; ListQueryAPIResponseEntity response = resource.listQuery(query, startTime, endTime, 100, null, false, true, 1, 0, false, 0, null); Assert.assertNotNull(response); Assert.assertTrue("Field with numeric, should success",response.isSuccess()); }