public boolean isGenericMetric(){ return this.internal.getEntityClass().equals(GenericMetricEntity.class); }
public boolean isGenericMetric(){ return this.internal.getEntityClass().equals(GenericMetricEntity.class); }
public static Class<?> getType(EntityDefinition ed, String qualifierName) { Field field; try { field = ed.getEntityClass().getDeclaredField(qualifierName); } catch (NoSuchFieldException e) { if (LOG.isDebugEnabled()) { LOG.debug("Field " + qualifierName + " not found in " + ed.getEntityClass()); } return null; } return field.getType(); }
public static Class<?> getType(EntityDefinition ed, String qualifierName) { Field field; try { field = ed.getEntityClass().getDeclaredField(qualifierName); } catch (NoSuchFieldException e) { if(LOG.isDebugEnabled()) LOG.debug("Field "+qualifierName+" not found in "+ed.getEntityClass()); return null; } return field.getType(); }
private List<? extends TaggedLogAPIEntity> unmarshalEntitiesByServie(InputStream inputStream,EntityDefinition entityDefinition) throws IllegalAccessException, InstantiationException, IOException { ObjectMapper objectMapper = new ObjectMapper(); return objectMapper.readValue(inputStream, TypeFactory.defaultInstance().constructCollectionType(LinkedList.class, entityDefinition.getEntityClass())); }
public Class<?> getColumnType(String fieldName) throws NoSuchFieldException { if (fieldName.equalsIgnoreCase(JdbcConstants.TIMESTAMP_COLUMN_NAME)){ return Long.class; }else if(fieldName.equalsIgnoreCase(JdbcConstants.ROW_KEY_COLUMN_NAME)) { return String.class; }else if(fieldName.equalsIgnoreCase(JdbcConstants.METRIC_NAME_COLUMN_NAME)){ return String.class; } for(String realField:internal.getDisplayNameMap().keySet()){ if(realField.equalsIgnoreCase(fieldName)){ return internal.getEntityClass().getDeclaredField(realField).getType(); } } throw new NoSuchFieldException(fieldName); }
public Class<?> getColumnType(String fieldName) throws NoSuchFieldException { if (fieldName.equalsIgnoreCase(JdbcConstants.TIMESTAMP_COLUMN_NAME)){ return Long.class; }else if(fieldName.equalsIgnoreCase(JdbcConstants.ROW_KEY_COLUMN_NAME)) { return String.class; }else if(fieldName.equalsIgnoreCase(JdbcConstants.METRIC_NAME_COLUMN_NAME)){ return String.class; } for(String realField:internal.getDisplayNameMap().keySet()){ if(realField.equalsIgnoreCase(fieldName)){ return internal.getEntityClass().getDeclaredField(realField).getType(); } } throw new NoSuchFieldException(fieldName); }
public static JdbcEntityDefinition getJdbcEntityDefinition(EntityDefinition entityDefinition){ checkInit(); Class<? extends TaggedLogAPIEntity> entityClass = entityDefinition.getEntityClass(); JdbcEntityDefinition jdbcEntityDefinition = sqlEntityDefinitionCache.get(entityClass); if(jdbcEntityDefinition == null){ jdbcEntityDefinition = new JdbcEntityDefinition(entityDefinition); sqlEntityDefinitionCache.put(entityClass, jdbcEntityDefinition); } return jdbcEntityDefinition; }
/** * TODO: Optimize with hashmap */ public String getJavaEntityFieldName(String jdbcColumnName){ for(String javaEntityFieldName:this.internal.getDisplayNameMap().keySet()){ if(javaEntityFieldName.equalsIgnoreCase(jdbcColumnName)){ return javaEntityFieldName; } } throw new IllegalArgumentException("Can't map jdbc column '"+jdbcColumnName+"' with entity: "+this.getInternal().getEntityClass()); }
/** * TODO: Optimize with hashmap */ public String getJavaEntityFieldName(String jdbcColumnName){ for(String javaEntityFieldName:this.internal.getDisplayNameMap().keySet()){ if(javaEntityFieldName.equalsIgnoreCase(jdbcColumnName)){ return javaEntityFieldName; } } throw new IllegalArgumentException("Can't map jdbc column '"+jdbcColumnName+"' with entity: "+this.getInternal().getEntityClass()); }
public static JdbcEntityDefinition getJdbcEntityDefinition(EntityDefinition entityDefinition){ checkInit(); Class<? extends TaggedLogAPIEntity> entityClass = entityDefinition.getEntityClass(); JdbcEntityDefinition jdbcEntityDefinition = sqlEntityDefinitionCache.get(entityClass); if(jdbcEntityDefinition == null){ jdbcEntityDefinition = new JdbcEntityDefinition(entityDefinition); sqlEntityDefinitionCache.put(entityClass, jdbcEntityDefinition); } return jdbcEntityDefinition; }
private List<? extends TaggedLogAPIEntity> unmarshalEntitiesByServie(InputStream inputStream,EntityDefinition entityDefinition) throws IllegalAccessException, InstantiationException, IOException { ObjectMapper objectMapper = new ObjectMapper(); return objectMapper.readValue(inputStream, TypeFactory.defaultInstance().constructCollectionType(LinkedList.class, entityDefinition.getEntityClass())); }
private static void checkInit(){ if (!initialized) { try { Map<String,EntityDefinition> entries = EntityDefinitionManager.entities(); for (Map.Entry<String, EntityDefinition> entry : entries.entrySet()) { Class<? extends TaggedLogAPIEntity> entityClass = entry.getValue().getEntityClass(); JdbcEntityDefinition jdbcEntityDefinition = sqlEntityDefinitionCache.get(entityClass); if(jdbcEntityDefinition == null){ jdbcEntityDefinition = new JdbcEntityDefinition(entry.getValue()); sqlEntityDefinitionCache.put(entityClass, jdbcEntityDefinition); } } initialized = true; } catch (Exception e) { throw new RuntimeException(e); } } }
public byte[] generateIndexRowkey(TaggedLogAPIEntity entity) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException { if (entity.getClass() != entityDef.getEntityClass()) { throw new IllegalArgumentException("Expected entity class: " + entityDef.getEntityClass().getName() + ", but got class " + entity.getClass().getName()); } final byte[][] indexValues = generateIndexValues(entity); final int[] partitionHashCodes = generatePartitionHashCodes(entity); SortedMap<Integer, Integer> tagMap = null; if (!index.unique()) { // non cluster index tagMap = RowkeyBuilder.generateSortedTagMap(entityDef.getPartitions(), entity.getTags()); } return generateUniqueIndexRowkey(indexValues, partitionHashCodes, tagMap); }
public byte[] generateIndexRowkey(TaggedLogAPIEntity entity) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException { if (entity.getClass() != entityDef.getEntityClass()) { throw new IllegalArgumentException("Expected entity class: " + entityDef.getEntityClass().getName() + ", but got class " + entity.getClass().getName()); } final byte[][] indexValues = generateIndexValues(entity); final int[] partitionHashCodes = generatePartitionHashCodes(entity); SortedMap<Integer, Integer> tagMap = null; if (!index.unique()) { // non cluster index tagMap = RowkeyBuilder.generateSortedTagMap(entityDef.getPartitions(), entity.getTags()); } return generateUniqueIndexRowkey(indexValues, partitionHashCodes, tagMap); }
public IndexDefinition(EntityDefinition entityDef, Index index) { this.entityDef = entityDef; this.index = index; this.indexPrefix = entityDef.getPrefix() + "_" + index.name(); final String[] indexColumns = index.columns(); this.columns = new IndexColumn[indexColumns.length]; for (int i = 0; i < indexColumns.length; ++i) { final String name = indexColumns[i]; final boolean isTag = entityDef.isTag(name); final Qualifier qualifier = isTag ? null : entityDef.getDisplayNameMap().get(name); columns[i] = new IndexColumn(name, isTag, qualifier); } LOG.info("Created index " + index.name() + " for " + entityDef.getEntityClass().getSimpleName()); }
public IndexDefinition(EntityDefinition entityDef, Index index) { this.entityDef = entityDef; this.index = index; this.indexPrefix = entityDef.getPrefix() + "_" + index.name(); final String[] indexColumns = index.columns(); this.columns = new IndexColumn[indexColumns.length]; for (int i = 0; i < indexColumns.length; ++i) { final String name = indexColumns[i]; final boolean isTag = entityDef.isTag(name); final Qualifier qualifier = isTag ? null : entityDef.getDisplayNameMap().get(name); columns[i] = new IndexColumn(name, isTag, qualifier); } LOG.info("Created index " + index.name() + " for " + entityDef.getEntityClass().getSimpleName()); }
@Test public void testScan() throws InstantiationException, IllegalAccessException { Assert.assertEquals(MetricMetadataEntity.class, EntityDefinitionManager .getEntityByServiceName("MetricMetadataService").getEntityClass()); } }
public void setEntityDefinition(EntityDefinition ed) { this.entityClass = ed.getEntityClass(); this.table = ed.getTable(); this.columnFamily = ed.getColumnFamily(); this.prefix = ed.getPrefix(); this.service = ed.getService(); this.partitions = ed.getPartitions(); this.displayNameMap = ed.getDisplayNameMap(); this.qualifierGetterMap = ed.getQualifierGetterMap(); this.qualifierNameMap = ed.getQualifierNameMap(); this.isTimeSeries = ed.isTimeSeries(); this.metricDefinition = ed.metricDefinition; this.indexes = ed.getIndexes(); }
public void setEntityDefinition(EntityDefinition ed){ this.entityClass = ed.getEntityClass(); this.table = ed.getTable(); this.columnFamily = ed.getColumnFamily(); this.prefix = ed.getPrefix(); this.service = ed.getService(); this.partitions = ed.getPartitions(); this.displayNameMap = ed.getDisplayNameMap(); this.qualifierGetterMap = ed.getQualifierGetterMap(); this.qualifierNameMap = ed.getQualifierNameMap(); this.isTimeSeries = ed.isTimeSeries(); this.metricDefinition = ed.metricDefinition; this.indexes = ed.getIndexes(); }