ap = current.getProperty(uid); ap.setDescription(description); if (ap.getType().equalsIgnoreCase(type)) {
/** {@inheritDoc} */ @Override public void update(Feature fp) { Util.assertNotNull(fp); Util.assertHasLength(fp.getUid()); // Check existence read(fp.getUid()); // Create or update core Feature as a first TX Transaction tx = graphDb.beginTx(); graphDb.execute(createUpdateCoreFeature(fp)); tx.success(); // Create, update or delete Flipping Strategy updateFlippingStrategy(fp); // Update groups updateGroups(fp); // Properties Transaction tx3 = graphDb.beginTx(); Map<String, Object> paramUID = new HashMap<>(); paramUID.put("uid", fp.getUid()); graphDb.execute(QUERY_CYPHER_DELETE_PROPERTIES_FEATURE, paramUID); tx3.success(); if (fp.getCustomProperties() != null && fp.getCustomProperties().size() > 0) { for (String pName : fp.getCustomProperties().keySet()) { createProperty(fp.getProperty(pName), fp.getUid()); } } }
/** {@inheritDoc} */ @Override public void create(Feature fp) { if (fp == null) { throw new IllegalArgumentException("Feature cannot be null nor empty"); } if (exist(fp.getUid())) { throw new FeatureAlreadyExistException(fp.getUid()); } Transaction tx = graphDb.beginTx(); // Create core graphDb.execute(createQueryNewCoreFeature(fp)); // Create Flipping Strategy if (fp.getFlippingStrategy() != null) { graphDb.execute(createQueryFlippingStrategy(fp)); } // Create Group if (fp.getGroup() != null && !"".equals(fp.getGroup())) { addToGroup(fp.getUid(), fp.getGroup()); } tx.success(); // Create Properties if (fp.getCustomProperties() != null && fp.getCustomProperties().size() > 0) { for (String pName : fp.getCustomProperties().keySet()) { createProperty(fp.getProperty(pName), fp.getUid()); } } }