@Override public Conf delete(final String key) { Conf instance = get(); Optional<? extends CPlainAttr> attr = instance.getPlainAttr(key); if (attr.isPresent()) { attr.get().setOwner(null); instance.remove(attr.get()); instance = entityManager().merge(instance); } return instance; } }
@Override public List<AttrTO> getConfTO() { return confDAO.get().getPlainAttrs().stream().map(attr -> getAttrTO(attr)).collect(Collectors.toList()); }
@Override public Conf save(final CPlainAttr attr) { Conf instance = get(); Optional<? extends CPlainAttr> old = instance.getPlainAttr(attr.getSchema().getKey()); if (old.isPresent() && (!attr.getSchema().isUniqueConstraint() || (!attr.getUniqueValue().getStringValue().equals(old.get().getUniqueValue().getStringValue())))) { old.get().setOwner(null); instance.remove(old.get()); } instance.add(attr); attr.setOwner(instance); return entityManager().merge(instance); }
@Transactional(readOnly = true) @Override public Optional<? extends CPlainAttr> find(final String key) { return get().getPlainAttr(key); }
@Override public Conf get() { Conf instance = entityManager().find(entityFactory.confClass(), KEY); if (instance == null) { instance = entityFactory.newEntity(Conf.class); instance.setKey(KEY); instance = entityManager().merge(instance); } return instance; }
protected Map<String, String> findAllSyncopeConfs() { return confDAO.get().getPlainAttrs().stream().collect( Collectors.toMap(attr -> attr.getSchema().getKey(), attr -> attr.getValuesAsStrings().get(0))); } }
JexlUtils.addPlainAttrsToContext(confDAO.get().getPlainAttrs(), jexlContext);