@Override protected Object[] getComboFeatureValues() { nodes.clear(); Set<DimensionNode> input = new HashSet<DimensionNode>(); CubeQuery c = (CubeQuery) getAxisEntry().eContainer(); if (c != null) { // during deletion UmlUimLinks currentUmlLinks = UmlUimLinks.getCurrentUmlLinks(getAxisEntry()); Classifier clazz = currentUmlLinks.getRepresentedClass(c); if (clazz != null) { addDimensions(clazz, null, input); } for (DimensionNode dimensionNode : input) { if (!(isInUse(dimensionNode, c.getColumnAxis()) || isInUse(dimensionNode, c.getRowAxis()))) { DimensionBinding dimensionBinding = dimensionNode.linkToInnermostDetail().toDimensionBinding(); nodes.put(dimensionBinding, dimensionNode); } } } ArrayList<Object> result = new ArrayList<Object>(nodes.keySet()); result.add(""); return result.toArray(); }
protected Object[] getComboFeatureValues() { Collection<Object> results = new ArrayList<Object>(); results.add(""); Property p = (Property) UmlUimLinks.getCurrentUmlLinks(getEObject()).getUmlElement(getMeasureProperty()); if (p != null) { for (EObject eo : p.getStereotypeApplications()) { EStructuralFeature sf = eo.eClass().getEStructuralFeature("aggregationFormulas"); if (sf != null) { Collection<? extends EEnumLiteral> avFormulas = (Collection<? extends EEnumLiteral>) eo.eGet(sf); for (EEnumLiteral l : avFormulas) { results.add(AggregationFormula.getByName(l.getName())); } break; } } } return results.toArray(); }