@Override public void clearMetadata() { clearDataset( "metadata" ); }
@Override public List<Entity> getCollections( String key ) { return getDataset( "collections", key ); }
@Override public String toString() { return "Entity(" + getProperties() + ")"; }
@Override public Entity toTypedEntity() { Entity entity = EntityFactory.newEntity( getUuid(), getType() ); entity.setProperties( getProperties() ); return entity; }
@Override public void setCollections( String key, List<Entity> results ) { setDataset( "collections", key, results ); }
@Override public void mergeMetadata( Map<String, Object> new_metadata ) { mergeDataset( "metadata", new_metadata ); }
@Override public void setProperties( Map<String, Object> properties ) { dynamic_properties = new TreeMap<String, Object>( String.CASE_INSENSITIVE_ORDER ); addProperties(properties); }
@JsonIgnore @Override public long getSize() { Object size = this.getMetadata("size"); return size != null && size instanceof Long ? (Long) size : 0; }
@Override @JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public String getName() { Object value = getProperty( PROPERTY_NAME ); if ( value instanceof UUID ) { // fixes existing data that uses UUID in USERGRID-2099 return value.toString(); } return ( String ) value; }
@Override public Id asId() { return new SimpleId( uuid, getType() ); }
@Override public void setMetadata( String key, Object value ) { setDataset( "metadata", key, value ); }
@Override public List<Entity> getConnections( String key ) { return getDataset( "connections", key ); }
@Override public void setConnections( String key, List<Entity> results ) { setDataset( "connections", key, results ); }
@Override public boolean deleteServiceProperty(String name) { EntityManager em = getEntityManager(getManagementAppId()); Query q = Query.fromQL( "select *"); Results results = null; try { results = em.searchCollection( em.getApplicationRef(), "propertymaps", q); } catch (Exception ex) { logger.error("Error getting service property for delete of property: {}", name, ex); return false; } org.apache.usergrid.persistence.Entity propsEntity = null; if ( !results.isEmpty() ) { propsEntity = results.getEntity(); } else { propsEntity = EntityFactory.newEntity( UUIDUtils.newTimeUUID(), "propertymap"); } try { ((AbstractEntity)propsEntity).clearDataset( name ); em.update( propsEntity ); } catch (Exception ex) { logger.error("Error deleting service property orgAppName: {}", name, ex); return false; } return true; }
@Override @JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public Object getMetadata( String key ) { return getDataset( "metadata", key ); }