public static FunctionblockModel convertToFlatHierarchy(FunctionblockModel fbm) { FunctionBlock fb = fbm.getFunctionblock(); // Consolidate all properties List<Property> properties = getFlatProperties(fbm); // remove super type reference if (fbm.getSuperType() != null) { removeSuperTypeModelReference(fbm); } properties.stream().filter(p -> p.getType() instanceof ObjectPropertyType) .forEach(p -> createReference(fbm, (ObjectPropertyType) p.getType())); Status status = FunctionblockFactory.eINSTANCE.createStatus(); status.getProperties().addAll(properties.stream().filter(p -> p.eContainer() instanceof Status) .collect(Collectors.toList())); fb.setStatus(status); Configuration configuration = FunctionblockFactory.eINSTANCE.createConfiguration(); configuration.getProperties().addAll(properties.stream() .filter(p -> p.eContainer() instanceof Configuration).collect(Collectors.toList())); fb.setConfiguration(configuration); // Consolidate all operations List<Operation> operations = getFlatOperations(fbm); fb.getOperations().clear(); fb.getOperations().addAll(operations); return fbm; }
String _xblockexpression = null; EObject _eContainer = property.eContainer(); EObject _eContainer_1 = _eContainer.eContainer(); EObject _eContainer_2 = _eContainer_1.eContainer(); _builder.append("> for <"); EObject _eContainer_3 = property.eContainer(); if ((_eContainer_3 instanceof Configuration)) { _builder.append("configuration"); EObject _eContainer_4 = property.eContainer(); if ((_eContainer_4 instanceof Status)) { _builder.append("status"); EObject _eContainer_5 = property.eContainer(); if ((_eContainer_5 instanceof Fault)) { _builder.append("fault");
characteristic.setName(map.getAttributeValue("name", "")); } else { characteristic.setName(((FunctionblockModel)(property.eContainer().eContainer().eContainer())).getName() + property.getName());
_builder.append("\t"); Property _property = prop.getProperty(); EObject _eContainer = _property.eContainer(); EObject _eContainer_1 = _eContainer.eContainer(); EObject _eContainer_2 = _eContainer_1.eContainer(); _builder.append("(&"); Property _property_2 = prop.getProperty(); EObject _eContainer_3 = _property_2.eContainer(); EObject _eContainer_4 = _eContainer_3.eContainer(); EObject _eContainer_5 = _eContainer_4.eContainer();