/** * {@inheritDoc} */ @Override public void removeLabel(AbstractStorageLabel<?> label) { if (label.getStorageLabelType().isValueReusable()) { JpaUtil.delete(entityManager, label); } }
if (!Objects.equals(label, editingLabel)) { if (label.getStorageLabelType().isValueReusable() && (cmrRepositoryDefinition.getOnlineStatus() != OnlineStatus.OFFLINE)) { suggestionLabelList.clear(); suggestionLabelList.addAll(cmrRepositoryDefinition.getStorageService().getLabelSuggestions(label.getStorageLabelType()));
/** * {@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; }
/** * Manages the label type selection. */ private void manageLabelTypeSlection() { if (!labelTypeTableViewer.getSelection().isEmpty()) { AbstractStorageLabelType<?> labelType = (AbstractStorageLabelType<?>) ((StructuredSelection) labelTypeTableViewer.getSelection()).getFirstElement(); List<AbstractStorageLabel<?>> inputForLabelTable = new ArrayList<>(); for (AbstractStorageLabel<?> label : labelList) { if (ObjectUtils.equals(label.getStorageLabelType(), labelType)) { inputForLabelTable.add(label); } } if (labelType.isValueReusable()) { createLabel.setEnabled(true); labelsTableViewer.getTable().setEnabled(true); } else { createLabel.setEnabled(false); labelsTableViewer.getTable().setEnabled(false); } removeLabelType.setEnabled(AbstractCustomStorageLabelType.class.isAssignableFrom(labelType.getClass())); labelsTableViewer.setInput(inputForLabelTable); labelsTableViewer.refresh(); } else { removeLabelType.setEnabled(false); createLabel.setEnabled(true); labelsTableViewer.getTable().setEnabled(true); labelsTableViewer.setInput(null); labelsTableViewer.refresh(); } }