/** * {@inheritDoc} */ @Override public <E extends AbstractStorageLabelType<?>> List<E> getLabelTypes(Class<E> labelTypeClass) { return loadAll(labelTypeClass); }
/** * {@inheritDoc} */ @Override public void saveLabelType(AbstractStorageLabelType<?> labelType) { if (labelType.isMultiType()) { entityManager.persist(labelType); } else { List<?> findByClass = loadAll(labelType.getClass()); if (findByClass.isEmpty()) { entityManager.persist(labelType); } } }
/** * {@inheritDoc} */ @Override public boolean saveLabel(AbstractStorageLabel<?> label) { if (label.getStorageLabelType().isValueReusable()) { List<?> exampleFind = loadAll(label.getClass()); if (!exampleFind.contains(label)) { AbstractStorageLabelType<?> labelType = label.getStorageLabelType(); if (null == labelType) { return false; } if ((labelType.getId() == 0) && !labelType.isMultiType()) { return false; } entityManager.persist(label); return true; } } return false; }