catch up with current development
diff --git a/jenkins.build.config.xml b/jenkins.build.config.xml
index 3b171b0..0b1d232 100644
--- a/jenkins.build.config.xml
+++ b/jenkins.build.config.xml
@@ -15,7 +15,6 @@
<jenkins>
<!-- DO NOT EDIT BELOW THIS LINE -->
<jenkins.build.dependencies>
- <jenkins.build.dependency>org.eclipse.osbp.authentication</jenkins.build.dependency>
<jenkins.build.dependency>org.eclipse.osbp.dsl</jenkins.build.dependency>
<jenkins.build.dependency>org.eclipse.osbp.ecview.core</jenkins.build.dependency>
<jenkins.build.dependency>org.eclipse.osbp.ecview.extension.api</jenkins.build.dependency>
diff --git a/org.eclipse.osbp.autowireHelper.feature/feature.xml b/org.eclipse.osbp.autowireHelper.feature/feature.xml
index 456fe3c..d8cf4c0 100644
--- a/org.eclipse.osbp.autowireHelper.feature/feature.xml
+++ b/org.eclipse.osbp.autowireHelper.feature/feature.xml
@@ -14,7 +14,8 @@
id="org.eclipse.osbp.autowireHelper.feature"
label="%featureName"
version="0.9.0.qualifier"
- provider-name="%providerName">
+ provider-name="%providerName"
+ plugin="org.eclipse.osbp.autowireHelper">
<description>
%description
diff --git a/org.eclipse.osbp.autowireHelper/META-INF/MANIFEST.MF b/org.eclipse.osbp.autowireHelper/META-INF/MANIFEST.MF
index 9d84508..86a7f2d 100644
--- a/org.eclipse.osbp.autowireHelper/META-INF/MANIFEST.MF
+++ b/org.eclipse.osbp.autowireHelper/META-INF/MANIFEST.MF
@@ -8,12 +8,11 @@
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Bundle-ActivationPolicy: lazy
Require-Bundle: org.slf4j.api;bundle-version="1.7.2",
- javax.annotation;bundle-version="[1.1.0,1.2.0)",
com.google.inject;bundle-version="3.0.0";resolution:=optional,
org.eclipse.emf.common,
org.eclipse.emf.ecore;bundle-version="2.10.2",
- org.eclipse.xtext.common.types;bundle-version="[2.7.3,2.8.0)";resolution:=optional,
- org.eclipse.xtext.xbase;bundle-version="[2.7.3,2.8.0)";resolution:=optional,
+ org.eclipse.xtext.common.types;bundle-version="[2.11.0,2.12.0)";resolution:=optional,
+ org.eclipse.xtext.xbase;bundle-version="[2.11.0,2.12.0)";resolution:=optional,
org.eclipse.xtend2.lib;bundle-version="2.7.3";resolution:=optional,
org.eclipse.osbp.runtime.common;bundle-version="[0.9.0,0.10.0)",
org.eclipse.osbp.ecview.dsl;bundle-version="[0.9.0,0.10.0)";resolution:=optional,
@@ -22,8 +21,6 @@
org.eclipse.osbp.ecview.extension.api;bundle-version="[0.9.0,0.10.0)";resolution:=optional,
org.eclipse.osbp.mobile.vaadin.ecview.model;bundle-version="[0.9.0,0.10.0)";resolution:=optional,
org.eclipse.osbp.ecview.extension.model;bundle-version="[0.9.0,0.10.0)",
- org.eclipse.osbp.utils;bundle-version="[0.9.0,0.10.0)",
- org.eclipse.osbp.authentication;bundle-version="[0.9.0,0.10.0)",
javax.validation.api;bundle-version="1.1.0",
org.eclipse.osbp.gitinfo;bundle-version="[0.9.0,0.10.0)",
org.eclipse.osbp.dsl.common.xtext;bundle-version="[0.9.0,0.10.0)",
@@ -32,10 +29,12 @@
org.eclipse.osbp.dsl.datatype.lib;bundle-version="[0.9.0,0.10.0)",
org.eclipse.osbp.ecview.core.util.emf;bundle-version="[0.9.0,0.10.0)",
org.eclipse.core.runtime;bundle-version="3.10.0",
- org.eclipse.xtext.ui;bundle-version="2.7.3",
+ org.eclipse.xtext.ui;bundle-version="[2.11.0,2.12.0)",
org.eclipse.osbp.ecview.extension.api;bundle-version="[0.9.0,0.10.0)",
org.apache.commons.lang;bundle-version="2.6.0"
Export-Package: org.eclipse.osbp.autowirehelper;version="0.9.0",
org.eclipse.osbp.autowirehelper.utils;version="0.9.0"
-Import-Package: org.eclipse.osbp.utils.functionnormalizer.api;version="0.9.0"
+Import-Package: javax.annotation,
+ org.eclipse.osbp.utils.common;version="0.9.0",
+ org.eclipse.osbp.utils.functionnormalizer.api
diff --git a/org.eclipse.osbp.autowireHelper/src/org/eclipse/osbp/autowirehelper/AutowireHelper.xtend b/org.eclipse.osbp.autowireHelper/src/org/eclipse/osbp/autowirehelper/AutowireHelper.xtend
index c261cbf..73de8cb 100644
--- a/org.eclipse.osbp.autowireHelper/src/org/eclipse/osbp/autowirehelper/AutowireHelper.xtend
+++ b/org.eclipse.osbp.autowireHelper/src/org/eclipse/osbp/autowirehelper/AutowireHelper.xtend
@@ -12,7 +12,7 @@
*
*
* This copyright notice shows up in the generated Java code
- *
+ *
*/
package org.eclipse.osbp.autowirehelper
@@ -24,7 +24,7 @@
import java.util.Map
import java.util.Set
import java.util.Stack
-import javax.validation.Constraint
+import javax.validation.Valid
import org.eclipse.emf.common.util.URI
import org.eclipse.emf.ecore.EObject
import org.eclipse.emf.ecore.InternalEObject
@@ -35,6 +35,7 @@
import org.eclipse.osbp.dsl.common.datatypes.IDto
import org.eclipse.osbp.ecview.core.common.model.binding.BindingFactory
import org.eclipse.osbp.ecview.core.common.model.binding.YBindingUpdateStrategy
+import org.eclipse.osbp.ecview.core.common.model.binding.YDetailValueBindingEndpoint
import org.eclipse.osbp.ecview.core.common.model.binding.YECViewModelListBindingEndpoint
import org.eclipse.osbp.ecview.core.common.model.binding.YListBindingEndpoint
import org.eclipse.osbp.ecview.core.common.model.binding.YValueBindingEndpoint
@@ -54,7 +55,6 @@
import org.eclipse.osbp.ecview.dsl.extensions.BindableTypeResolver
import org.eclipse.osbp.ecview.dsl.extensions.BindingInfoHelper
import org.eclipse.osbp.ecview.dsl.extensions.BindingInfoHelper.BindingInfo
-import org.eclipse.osbp.ecview.dsl.extensions.I18nKeyProvider
import org.eclipse.osbp.ecview.dsl.extensions.OperationExtensions
import org.eclipse.osbp.ecview.dsl.extensions.OperationExtensions.OperationInfo
import org.eclipse.osbp.ecview.dsl.extensions.SuperTypeCollector
@@ -77,10 +77,11 @@
import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobileFactory
import org.eclipse.osbp.runtime.common.annotations.DomainDescription
import org.eclipse.osbp.runtime.common.annotations.DomainKey
+import org.eclipse.osbp.runtime.common.annotations.FilterDepth
+import org.eclipse.osbp.runtime.common.annotations.UniqueEntry
import org.eclipse.osbp.runtime.common.metric.TimeLogger
import org.eclipse.osbp.utils.functionnormalizer.api.FunctionTypingAPI
import org.eclipse.xtext.common.types.JvmDeclaredType
-import org.eclipse.xtext.common.types.JvmEnumerationLiteral
import org.eclipse.xtext.common.types.JvmGenericType
import org.eclipse.xtext.common.types.JvmParameterizedTypeReference
import org.eclipse.xtext.common.types.JvmPrimitiveType
@@ -93,6 +94,7 @@
import org.eclipse.xtext.ui.editor.findrefs.IReferenceFinder
import org.eclipse.xtext.util.IAcceptor
import org.eclipse.xtext.util.concurrent.IUnitOfWork
+import org.eclipse.osbp.runtime.common.annotations.OnKanbanCard
@SuppressWarnings("restriction")
class AutowireHelper implements IAutowireDelegate {
@@ -147,12 +149,12 @@
return
}
- // val userAccessService = UserServiceBinder.getUserAccessService
- // val userName = userAccessService.user.userName
- // val permissionList = userAccessService.findPermissionsForUser(userName)
- // for (permission : permissionList.permissions){
- // println(permission)
- // }
+ // val userAccessService = UserServiceBinder.getUserAccessService
+ // val userName = userAccessService.user.userName
+ // val permissionList = userAccessService.findPermissionsForUser(userName)
+ // for (permission : permissionList.permissions){
+ // println(permission)
+ // }
val BindableTypeResolver resolver = new BindableTypeResolver
var resolvedType = resolver.resolveType(uiLayout.autoWireSource)
if (resolvedType instanceof JvmDeclaredType) {
@@ -180,7 +182,7 @@
jvmTypeURIs += EcoreUtil.getURI(dtoType)
val IAcceptor<IReferenceDescription> acceptor = [
val IReferenceDescription desc = it
- if (desc.EReference == TypesPackage.Literals.JVM_PARAMETERIZED_TYPE_REFERENCE__TYPE) {
+ if (desc.EReference === TypesPackage.Literals.JVM_PARAMETERIZED_TYPE_REFERENCE__TYPE) {
if (sourceEObjectUri.fragment.endsWith("/@superTypes.0")) {
val URI uri = desc.sourceEObjectUri;
result += URI.createURI(uri.toString.replace("/@superTypes.0", ""))
@@ -213,11 +215,11 @@
sortedOpInfoMapList.createSuspectStructure(type, mobile, parentSuspect)
}
- def createSuspectStructure(LinkedList<Map<String, OperationInfo>> sortedOpInfoMapList, JvmType dtoType,
+ def createSuspectStructure(LinkedList<Map<String, OperationInfo>> sortedOpInfoMapList, JvmDeclaredType dtoType,
boolean mobile, YTypedCompoundSuspect parentSuspect) {
if (!dtoType.isEnum) {
sortedOpInfoMapList.forEach [
- it.createSuspectStructure(mobile, parentSuspect)
+ it.createSuspectStructure(dtoType, mobile, parentSuspect)
]
}
@@ -241,7 +243,7 @@
}
}
- def createSuspectStructure(Map<String, OperationInfo> opInfoMap, boolean mobile,
+ def createSuspectStructure(Map<String, OperationInfo> opInfoMap, JvmDeclaredType dtoType, boolean mobile,
YTypedCompoundSuspect parentSuspect) {
opInfoMap.values.forEach [
@@ -253,18 +255,18 @@
}
var YSuspect suspect
var properties = newArrayList()
- if (it.field != null) {
- properties.addAll(beanType.toProperties(it.field.declaringType.qualifiedName + "." + it.name))
+ if (it.field !== null) {
+ properties.addAll(dtoType.toProperties(it.field.declaringType.qualifiedName + "." + it.name))
}
- if (type.boolean) {
+ if (type.boolean && !it.isDirtyMark) {
if(mobile) type.createMobileSwitch(it) else suspect = type.createCheckbox(it)
} else if (type.numberWithDigits) {
suspect = type.createDecimalField(it)
- if (beanType.isAttribute(it.name, "NumberToUomo")) {
+ if (dtoType.isAttribute(it.name, "NumberToUomo")) {
suspect.tags += "NumberToUomo"
} else {
- var dataType = beanType.toDataType(it.name)
- if (dataType != null) {
+ var dataType = dtoType.toDataType(it.name)
+ if (dataType !== null) {
var dataTypeName = dataType.jvmTypeReference.type.identifier
if (dataTypeName.equals(Double.canonicalName)) {
suspect = type.createCustomDecimalField(it)
@@ -273,15 +275,13 @@
}
} else if (type.numberWithoutDigits) {
- // TODO Pirchner _ fix me with @ID annotation
- if (!it.name.equals("id") && !it.name.equals("uuid")) {
+ if (!it.idOrUUID && !it.version && !it.dirtyMark) {
suspect = type.createNumberField(it)
}
} else if (type.string) {
val fieldType = properties.findFirst[it.key.equals(ILayoutingStrategy.PROPERTY_KEY__FIELD_TYPE)]?.value
- // TODO Pirchner _ fix me with @ID annotation
- if (!it.name.equals("id") && !it.name.equals("uuid")) {
+ if (!it.idOrUUID && !it.version && !it.dirtyMark) {
var functionTypingAPI = new FunctionTypingAPI()
val functionImagePicker = functionTypingAPI.functionImagePickerTypeName
if (it.isDomainKey || it.isDomainDescription ||
@@ -302,6 +302,10 @@
suspect = type.createOrganizationComboBox(it)
} else if (properties.exists[key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_PERSPECTIVE)]) {
suspect = type.createPerspectiveComboBox(it)
+ } else if (properties.exists[key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_PRINTSERVICE)]) {
+ suspect = type.createPrintServiceComboBox(it)
+ } else if (properties.exists[key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_THEME)]) {
+ suspect = type.createThemeComboBox(it)
} else if (properties.exists[key.equalsIgnoreCase(functionImagePicker)]) {
suspect = type.createIconComboBox(it)
} else {
@@ -325,7 +329,7 @@
}
} else if (it.domainReference) {
suspect = type.createBeanReferenceField(it)
- } else if (it.field != null && it.field.collection) {
+ } else if (it.field !== null && it.field.collection) {
if (properties.exists[key.toLowerCase.equals(ILayoutingStrategy.PROPERTY_GRID)]) {
suspect = type.createGrid(it)
} else if (properties.exists[key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_TABLE)]) {
@@ -334,19 +338,19 @@
} else if (type.dto) {
suspect = type.createDtoSuspect(it)
}
- if (parentSuspect == null) {
- type.completeSuspect(it, suspect)
+ if (parentSuspect === null) {
+ type.completeSuspect(it, suspect, dtoType)
} else {
- type.completeSuspect(it, suspect, parentSuspect)
+ type.completeSuspect(it, suspect, parentSuspect, dtoType)
}
for (keyAndValue : properties) {
- if(suspect != null) suspect.properties.put(keyAndValue.key.toLowerCase, keyAndValue.value)
+ if(suspect !== null) suspect.properties.put(keyAndValue.key.toLowerCase, keyAndValue.value)
}
]
}
def createAuthorizationVisibilityProcessor(YAuthorizationable element, OperationInfo info) {
- if (info.field != null) {
+ if (info.field !== null) {
val type = info.field.eContainer as JvmGenericType
if (!info.getter.returnType.type.isClass && info.getter.returnType.type.isAllowed(type, info)) {
element.authorizationGroup = type.fullyQualifiedName.toString
@@ -417,14 +421,31 @@
return superTypes.contains(typeof(IDto).name)
}
- def completeSuspect(JvmType type, OperationInfo info, YSuspect suspect) {
- if (suspect != null) {
+ def completeSuspect(JvmType type, OperationInfo info, YSuspect suspect, JvmType parentType) {
+ if (suspect !== null) {
suspect.id = '''«uiLayout.generateId».«info.name»'''
if (info.readonly) {
suspect.tags += "readonly"
}
+ if(info.isOnKanbanCard) {
+ suspect.tags += "onKanbanCard"
+ }
+
+ if (info.isUniqueEntry) {
+ suspect.tags += "unique"
+ var splittedId = info.id.split(":")
+ if (splittedId.length > 1) {
+ var fqClassName = splittedId.get(0)
+ suspect.properties.put("class", fqClassName)
+ }
+ suspect.properties.put("name", info.name)
+
+ // register the container of the binding to the suspect. Otherwise we can not check for the uniqueness
+ suspect.createModelValueContainerBinding(info.name, type, "value")
+ }
+
if (isValidationConstraint(info)) {
suspect.tags += "constraint"
var splittedId = info.id.split(":")
@@ -436,10 +457,27 @@
}
layouter.add(suspect)
- if (info.field != null && info.field.collection) {
+ if (info.field !== null && info.field.collection) {
suspect.createModelListBinding(info, type, "list");
} else {
- suspect.createBinding(info.name, type, "value");
+ suspect.createModelValueBinding(info.name, type, "value", parentType);
+ }
+
+ // fix the masterDetailBinding endpoint of the child suspects
+ if (suspect instanceof YTypedCompoundSuspect) {
+ val masterValueEP = suspect.valueBindingEndpoints.get(0)
+ if (!suspect.valueBindingEndpoints.isEmpty) {
+ for (child : suspect.children) {
+ child.id = suspect.id + child.id
+ if (!child.valueBindingEndpoints.isEmpty) {
+ val childValueEP = child.valueBindingEndpoints.get(0)
+ if (childValueEP instanceof YDetailValueBindingEndpoint) {
+ childValueEP.masterObservable = EcoreUtil.copy(masterValueEP) as YValueBindingEndpoint
+ }
+ }
+ }
+ }
+
}
// create the authorization infos
@@ -447,8 +485,8 @@
}
}
- def completeSuspect(JvmType type, OperationInfo info, YSuspect suspect, YTypedCompoundSuspect parentSuspect) {
- if (suspect != null) {
+ def completeSuspect(JvmType type, OperationInfo info, YSuspect suspect, YTypedCompoundSuspect parentSuspect, JvmType parentType) {
+ if (suspect !== null) {
suspect.id = '''«parentSuspect.id».«info.name»'''
if (info.readonly) {
@@ -466,10 +504,10 @@
}
parentSuspect.children.add(suspect)
- if (info.field != null && info.field.collection) {
+ if (info.field !== null && info.field.collection) {
suspect.createModelListBinding(info, type, "list");
} else {
- suspect.createBinding(info.name, type, "value");
+ suspect.createModelValueBinding(info.name, type, "value", parentType);
}
// create the authorization infos
@@ -479,14 +517,14 @@
/**
* Sorted the attributes with the primitive types first and the rest after. Also all collections were left out.
- */
+ */
def createSortedOpInfoMapForCollections(Map<String, OperationInfo> opInfoMap) {
val sortedOpInfoList = <String, OperationInfo>newLinkedHashMap()
val nonPrimitiveOpInfoMap = <String, OperationInfo>newLinkedHashMap()
opInfoMap.forEach [ key, opInfo |
var JvmType detailType
// do not create a column if field is a collection
- if (opInfo.field != null && !opInfo.field.collection) {
+ if (opInfo.field !== null && !opInfo.field.collection) {
detailType = opInfo.getter.returnType.type
val isPrimitive = detailType instanceof JvmPrimitiveType || detailType.getQualifiedName().equals(
@@ -505,37 +543,37 @@
/**
* Sorted the attributes in a individual but fix order.
- */
+ */
def createSortedMapList(Map<String, OperationInfo> opInfoMap) {
val sortedOpInfoList = <Map<String, OperationInfo>>newLinkedList()
// At this moment the order of the following method is not desired. See #203.
// +++++ Due to the not existing sorting the following lines of code are replaced by ...
/*
- val domainKeyOpInfoMap = <String, OperationInfo>newHashMap()
- val constraintsOpInfoMap = <String, OperationInfo>newHashMap()
- val indexOpInfoMap = <String, OperationInfo>newHashMap()
- val stringOpInfoMap = <String, OperationInfo>newHashMap()
- val restOpInfoMap = <String, OperationInfo>newHashMap()
+ * val domainKeyOpInfoMap = <String, OperationInfo>newHashMap()
+ * val constraintsOpInfoMap = <String, OperationInfo>newHashMap()
+ * val indexOpInfoMap = <String, OperationInfo>newHashMap()
+ * val stringOpInfoMap = <String, OperationInfo>newHashMap()
+ * val restOpInfoMap = <String, OperationInfo>newHashMap()
- // extract String-OperationInfos into a new Map to display later and display all string attributes first.
- opInfoMap.forEach [ key, opInfo |
- val type = opInfo.getter.returnType.type
- if (opInfo != null && isDomainKey(opInfo)) {
- domainKeyOpInfoMap.put(key, opInfo)
- } else if (opInfo != null && isIndex(opInfo)) {
- indexOpInfoMap.put(key, opInfo)
- } else if (type.string) {
- stringOpInfoMap.put(key, opInfo)
- } else {
- restOpInfoMap.put(key, opInfo)
- }
- ]
- sortedOpInfoList.add(domainKeyOpInfoMap)
- sortedOpInfoList.add(indexOpInfoMap)
- sortedOpInfoList.add(stringOpInfoMap)
- sortedOpInfoList.add(constraintsOpInfoMap)
- sortedOpInfoList.add(restOpInfoMap)
+ * // extract String-OperationInfos into a new Map to display later and display all string attributes first.
+ * opInfoMap.forEach [ key, opInfo |
+ * val type = opInfo.getter.returnType.type
+ * if (opInfo !== null && isDomainKey(opInfo)) {
+ * domainKeyOpInfoMap.put(key, opInfo)
+ * } else if (opInfo !== null && isIndex(opInfo)) {
+ * indexOpInfoMap.put(key, opInfo)
+ * } else if (type.string) {
+ * stringOpInfoMap.put(key, opInfo)
+ * } else {
+ * restOpInfoMap.put(key, opInfo)
+ * }
+ * ]
+ * sortedOpInfoList.add(domainKeyOpInfoMap)
+ * sortedOpInfoList.add(indexOpInfoMap)
+ * sortedOpInfoList.add(stringOpInfoMap)
+ * sortedOpInfoList.add(constraintsOpInfoMap)
+ * sortedOpInfoList.add(restOpInfoMap)
*/
// ++++ ... this line.
sortedOpInfoList.add(opInfoMap)
@@ -543,7 +581,7 @@
}
def isDomainKey(OperationInfo info) {
- if (info != null && info.field != null) {
+ if (info !== null && info.field !== null) {
for (annotationRefs : info.field.annotations) {
if (DomainKey.canonicalName.equals(annotationRefs.annotation.identifier)) {
return true
@@ -552,9 +590,20 @@
}
return false
}
+
+ def isOnKanbanCard(OperationInfo info) {
+ if (info !== null && info.field !== null) {
+ for (annotationRefs : info.field.annotations) {
+ if (OnKanbanCard.canonicalName.equals(annotationRefs.annotation.identifier)) {
+ return true
+ }
+ }
+ }
+ return false
+ }
def isDomainDescription(OperationInfo info) {
- if (info != null && info.field != null) {
+ if (info !== null && info.field !== null) {
for (annotationRefs : info.field.annotations) {
if (DomainDescription.canonicalName.equals(annotationRefs.annotation.identifier)) {
return true
@@ -565,10 +614,22 @@
}
def isValidationConstraint(OperationInfo info) {
- if (info != null && info.field != null) {
+ if (info !== null && info.field !== null) {
for (annotationRefs : info.field.annotations) {
- if (annotationRefs.annotation.identifier != null &&
- annotationRefs.annotation.identifier.startsWith(Constraint.canonicalName.toLowerCase)) {
+ if (annotationRefs.annotation.identifier !== null &&
+ annotationRefs.annotation.identifier.equals(Valid.canonicalName)) {
+ return true
+ }
+ }
+ }
+ return false
+ }
+
+ def isUniqueEntry(OperationInfo info) {
+ if (info !== null && info.field !== null) {
+ for (annotationRefs : info.field.annotations) {
+ if (annotationRefs.annotation.identifier !== null &&
+ annotationRefs.annotation.identifier.equals(UniqueEntry.canonicalName)) {
return true
}
}
@@ -577,7 +638,7 @@
}
def isIndex(OperationInfo info) {
- if (info != null && info.field != null) {
+ if (info !== null && info.field !== null) {
for (annotationRefs : info.field.annotations) {
if (DomainKey.canonicalName.equals(annotationRefs.annotation.identifier)) {
return true
@@ -594,7 +655,7 @@
* @return
*/
def isByteArray(JvmType type) {
- if (type == null)
+ if (type === null)
return false;
if (isArray(type, Byte) || isArray(type, Byte.TYPE)) {
return true;
@@ -603,7 +664,7 @@
}
def isArray(JvmType type, Class<?> clazz) {
- if (type == null)
+ if (type === null)
return false;
var className = clazz.getName();
if (className.charAt(0) == '[') {
@@ -624,7 +685,7 @@
def YTypedSuspect createSuggestTextField(JvmType type, OperationInfo info, Map<String, OperationInfo> opInfoMap) {
val OperationInfo idAttInfo = opInfoMap.values.toIdInfo
- if (idAttInfo == null) {
+ if (idAttInfo === null) {
return createTextField(type, info)
}
@@ -642,12 +703,11 @@
/**
* Returns the operation info for the id property.
- */
+ */
def OperationInfo getToIdInfo(Collection<OperationInfo> infos) {
- // TODO change me!!! Very bad hack for now! Needs adding an ID annotation to DTOs
for (OperationInfo info : infos) {
- if (info.name.equals("id") || info.name.equals("uuid")) {
+ if (info.idOrUUID) {
return info
}
}
@@ -735,6 +795,28 @@
suspect
}
+ def YTypedSuspect createThemeComboBox(JvmType type, OperationInfo info) {
+ val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
+ suspect.tags += ILayoutingStrategy.TAG__THEME_COMBO
+ suspect.type = typeof(String)
+ suspect.typeQualifiedName = typeof(String).name
+ if (info.readonly) {
+ suspect.tags += "readonly"
+ }
+ suspect
+ }
+
+ def YTypedSuspect createPrintServiceComboBox(JvmType type, OperationInfo info) {
+ val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
+ suspect.tags += ILayoutingStrategy.TAG__PRINTSERVICE_COMBO
+ suspect.type = typeof(String)
+ suspect.typeQualifiedName = typeof(String).name
+ if (info.readonly) {
+ suspect.tags += "readonly"
+ }
+ suspect
+ }
+
def YTypedSuspect createEnumOptionsGroup(JvmType type, OperationInfo info) {
val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
suspect.tags += ILayoutingStrategy.TAG__ENUM_OPTIONS
@@ -748,11 +830,13 @@
}
def YTypedSuspect createBeanReferenceField(JvmType type, OperationInfo info) {
- val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
- suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
- var captionProperty = BeanHelper.findCaptionProperty(suspect.type)
- var captionDescription = BeanHelper.findDescriptionProperty(suspect.type)
- if (captionProperty != null || captionDescription != null) {
+ var YTypedSuspect suspect = null
+ var suspectType = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
+ var captionProperty = BeanHelper.findCaptionProperty(suspectType)
+ var captionDescription = BeanHelper.findDescriptionProperty(suspectType)
+ if (captionProperty !== null || captionDescription !== null) {
+ suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
+ suspect.type = suspectType
suspect.tags += ILayoutingStrategy.TAG__BEAN_REFERENCE
suspect.id = '''«uiLayout.generateId».«info.name»'''
@@ -760,10 +844,16 @@
suspect.tags += "readonly"
}
+ if (info.hasAnnotation(FilterDepth)) {
+ val depth = toFilterDepth(info.field)
+ suspect.properties.put(ILayoutingStrategy.PROPERTY__FILTER_DEPTH, Integer.toString(depth))
+ }
+
suspect.typeQualifiedName = type.qualifiedName
suspect.properties.put(ILayoutingStrategy.PROPERTY__ITEM_CAPTION, captionProperty)
suspect.properties.put(ILayoutingStrategy.PROPERTY__ITEM_DESCRIPTION, captionDescription)
}
+
suspect
}
@@ -784,8 +874,8 @@
suspect.typeQualifiedName = typeInCollection.type.qualifiedName
// Not used! Has to be removed!
- // var typeRef = info.field.type
- // var JvmDeclaredType argType
+ // var typeRef = info.field.type
+ // var JvmDeclaredType argType
if (typeInCollection.type instanceof JvmDeclaredType) {
val castedType = typeInCollection.type as JvmDeclaredType
@@ -804,12 +894,12 @@
if (nestedInfo.hasAnnotation(typeof(DomainKey))) {
val nestPropMap = (detailType as JvmDeclaredType).toFieldProperties
columnInfo = nestedInfo.type.createYColumnInfo
- columnInfo.name = it.field.type.simpleName + "." + nestedInfo.attributePath
+ columnInfo.name = it.field.simpleName + "." + nestedInfo.attributePath
var propList = nestPropMap.get(nestedInfo.name)
columnInfo.setYColumnInfoProperties(propList)
}
}
- } else {
+ } else if (!it.idOrUUID && !it.version && !it.dirtyMark) {
var JvmType objectType = it.field.type.type;
if (isPrimitive) {
val primitiveTypeName = it.field.type.type.qualifiedName
@@ -822,7 +912,7 @@
var propList = propMap.get(it.field.identifier)
columnInfo.setYColumnInfoProperties(propList)
}
- if (columnInfo != null) {
+ if (columnInfo !== null) {
// TODO (JCD): Simple name instead of FQN till solution of ticket - #581
columnInfo.labelI18nKey = columnInfo.name
@@ -850,7 +940,7 @@
val yField = vFactory.createVMSwitch
yField.initialEnabled = !info.readonly
- // yField.labelI18nKey = i18nRootKey + "." + info.name
+ // yField.labelI18nKey = i18nRootKey + "." + info.name
yField.label = info.name
layouter.add(yField)
@@ -867,354 +957,404 @@
suspect.tags += ILayoutingStrategy.TAG__RICH_TEXT__BLOB
} else {
throw new IllegalArgumentException(
- "RichTextFields need to be bound to String or byte[]. " + type.qualifiedName + " is not a valid option.")
- }
+ "RichTextFields need to be bound to String or byte[]. " + type.qualifiedName +
+ " is not a valid option.")
+ }
- suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
- suspect.typeQualifiedName = type.qualifiedName
- suspect
- }
-
- def YSuspect createMaskedTextField(JvmType type, OperationInfo info, String mask) {
- val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
- suspect.tags += ILayoutingStrategy.TAG__MASKED_TEXT_FIELD
- suspect.properties.put(ILayoutingStrategy.PROPERTY_MASK, mask)
- suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
- suspect.typeQualifiedName = type.qualifiedName
- suspect
- }
-
- def YSuspect createMaskedDecimalField(JvmType type, OperationInfo info, String mask) {
- val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
- suspect.tags += ILayoutingStrategy.TAG__MASKED_DECIMAL_FIELD
- suspect.properties.put(ILayoutingStrategy.PROPERTY_MASK, mask)
- suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
- suspect.typeQualifiedName = type.qualifiedName
- suspect
- }
-
- def YSuspect createPasswordField(JvmType type, OperationInfo info) {
- val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
-
- if (type.string) {
- suspect.tags += ILayoutingStrategy.TAG__PASSWORD
- } else {
- throw new IllegalArgumentException(
- "PasswordField need to be bound to String. " + type.qualifiedName + " is not a valid option.")
- }
-
- suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
- suspect.typeQualifiedName = type.qualifiedName
- suspect
- }
-
- def YSuspect createBlopUploadComponent(JvmType type, OperationInfo info) {
- val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
- suspect.tags += ILayoutingStrategy.TAG__BLOB
- suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
- suspect.typeQualifiedName = type.qualifiedName
- suspect
- }
-
- def YSuspect createCustomDecimalField(JvmType type, OperationInfo info) {
- val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
- suspect.tags += ILayoutingStrategy.TAG__DECIMAL
- suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
- suspect.typeQualifiedName = type.qualifiedName
- suspect
- }
-
- /**
- * Create the bindings and install at the view
- */
- def createBinding(YEmbeddable yField, OperationInfo info, JvmType type, String fieldProperty) {
-
- // use the autoWireSource as the model endpoint
- val UiBindingEndpointAssignment uiModelEndpoint = uiLayout.autoWireSource as UiBindingEndpointAssignment
- val yModelEndpoint = computer.createValueBindingEndpoint(uiModelEndpoint)
- val detailValueEndpoint = yModelEndpoint.createDetailValueEndpoint
- detailValueEndpoint.propertyPath = info.name
- detailValueEndpoint.type = computer.loadClass(uiLayout.eResource.resourceSet, beanType.qualifiedName)
-
- // create the field endpoint
- val yFieldEndpoint = BindingFactory.eINSTANCE.createYECViewModelValueBindingEndpoint
- yFieldEndpoint.element = yField
- yFieldEndpoint.propertyPath = fieldProperty
- yFieldEndpoint.typeQualifiedName = beanType.qualifiedName
- yFieldEndpoint.type = computer.loadClass(uiLayout.eResource.resourceSet, beanType.qualifiedName)
- if (yFieldEndpoint.type != null && yFieldEndpoint.type.isAssignableFrom(typeof(EObject))) {
- yFieldEndpoint.emfNsURI = yField.eClass.EPackage.nsURI
- }
-
- // bind model to target
- val yBinding = BindingFactory.eINSTANCE.createYValueBinding();
- yBinding.setTargetEndpoint(yFieldEndpoint);
- yBinding.setModelEndpoint(detailValueEndpoint);
- yBinding.setModelToTargetStrategy(YBindingUpdateStrategy.UPDATE);
- yBinding.setTargetToModelStrategy(
- if(info.readonly) YBindingUpdateStrategy.NEVER else YBindingUpdateStrategy.UPDATE)
-
- // register the binding at the current view
- yLayout.view.orCreateBindingSet.bindings += yBinding
-
- // set the i18n key based on the binding
- // yField.labelI18nKey = I18nKeyProvider.toI18nKey(beanType.qualifiedName, detailValueEndpoint.propertyPath)
- yField.labelI18nKey = detailValueEndpoint.propertyPath
- }
-
- /**
- * Create the bindings and install at the view
- */
- def createBinding(YSuspect suspect, String propertyPath, JvmType type, String fieldProperty) {
-
- val YBeanSlot subTypeBeanSlot = suspect.findSubTypeBeanSlot
- var YValueBindingEndpoint endpoint = null
- var path = ""
-
- // If a subTypeBeanSlot could be found, then we need to create a binding endpoint against this beanslot.
- // The main slot has a different type then detail beanslot. And we can not bind fields contained in the subtype
- // to the main bean slot. Eclipse databinding requires a proper type at binding creation.
- if (subTypeBeanSlot == null) {
-
- // use the autoWireSource as the model endpoint
- val UiBindingEndpointAssignment uiModelEndpoint = uiLayout.autoWireSource as UiBindingEndpointAssignment
- val yModelEndpoint = computer.createValueBindingEndpoint(uiModelEndpoint)
- val detailValueEndpoint = yModelEndpoint.createDetailValueEndpoint
- detailValueEndpoint.propertyPath = propertyPath
- detailValueEndpoint.type = computer.loadClass(uiLayout.eResource.resourceSet, beanType.qualifiedName)
- endpoint = detailValueEndpoint
- path = detailValueEndpoint.propertyPath
- } else {
- endpoint = subTypeBeanSlot.createBindingEndpoint(propertyPath)
- path = propertyPath
- }
-
- suspect.getValueBindingEndpoints().add(endpoint);
-
- // set the i18n key based on the binding
- // suspect.labelI18nKey = I18nKeyProvider.toI18nKey(beanType.qualifiedName, path)
- suspect.labelI18nKey = path
- suspect.label = propertyPath
- }
-
- /**
- * Checks if the suspect is contained in an YSubTypeSuspect. <br>
- * If so, then the detail beanslot of the YSubTypeSuspect is returned. Null otherwise.
- */
- def YBeanSlot findSubTypeBeanSlot(YSuspect suspect) {
- if (suspect == null) {
- return null
- }
- if (suspect instanceof YSubTypeSuspect) {
- return suspect.beanSlot
- }
-
- val parent = suspect.eContainer
- if (parent instanceof YSuspect) {
- return parent.findSubTypeBeanSlot
- }
- return null
- }
-
- /**
- * Create the bindings and install at the view
- */
- def createModelListBinding(YSuspect suspect, OperationInfo info, JvmType type, String fieldProperty) {
-
- // use the autoWireSource as the model endpoint
- val UiBindingEndpointAssignment uiModelEndpoint = uiLayout.autoWireSource as UiBindingEndpointAssignment
- val yModelEndpoint = createListBindingEndpointWithNested(uiModelEndpoint, info.name)
-
- suspect.getValueBindingEndpoints().add(yModelEndpoint);
-
- // set the i18n key based on the binding
- // suspect.labelI18nKey = I18nKeyProvider.toI18nKey(beanType.qualifiedName, info.name)
- suspect.labelI18nKey = info.name
- suspect.label = info.name
-
- }
-
- /**
- * Creates a listbinding with respect to nested collection fields. <p>
- * For instance:<br>
- * beanSlot contains Person. We want to bind the children of persons father to a table.
- * So we need to access the children collection of the beanslot by a nested property path: <code>beanslot.father.children</code>
- */
- def YListBindingEndpoint createListBindingEndpointWithNested(UiBindingEndpointAssignment epDef, String attributePath) {
- if (epDef == null) {
- return null
- }
-
- var YListBindingEndpoint result = null;
- val BindingInfoHelper.BindingInfo info = new BindingInfoHelper.BindingInfo()
- bindingInfoHelper.collectBindingInfo(epDef, info);
-
- if (info.bindingRoot instanceof UiBeanSlot) {
- val uiBeanSlot = info.bindingRoot as UiBeanSlot
-
- val YBeanSlot yBeanSlot = computer.associatedUi(uiBeanSlot)
- val YBeanSlotListBindingEndpoint ep = factory.createBeanSlotListBindingEndpoint
- ep.beanSlot = yBeanSlot
-
- ep.attributePath = toNestedCollectionPath(info, attributePath)
- result = ep
- } else if (info.bindingRoot instanceof UiEmbeddable) {
- val YEmbeddable yElement = computer.associatedUi(info.bindingRoot)
- val YECViewModelListBindingEndpoint ep = factory.createECViewModelListBindingEndpoint
- ep.element = yElement
- ep.propertyPath = toNestedCollectionPath(info, attributePath)
- if (info.typeForBinding != null) {
- ep.typeQualifiedName = info.typeForBinding.qualifiedName
- ep.type = computer.loadClass(epDef.eResource.resourceSet, ep.typeQualifiedName)
+ suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
+ suspect.typeQualifiedName = type.qualifiedName
+ suspect
}
- if (yElement != null) {
- ep.emfNsURI = yElement.eClass.EPackage.nsURI
+
+ def YSuspect createMaskedTextField(JvmType type, OperationInfo info, String mask) {
+ val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
+ suspect.tags += ILayoutingStrategy.TAG__MASKED_TEXT_FIELD
+ suspect.properties.put(ILayoutingStrategy.PROPERTY_MASK, mask)
+ suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
+ suspect.typeQualifiedName = type.qualifiedName
+ suspect
}
- result = ep
- }
- return result
- }
-
- def toNestedCollectionPath(BindingInfo info, String attributePath) {
- val StringBuilder b = new StringBuilder
- if (!info.path.toString.nullOrEmpty) {
- b.append(info.path.toString)
- }
-
- if (!attributePath.nullOrEmpty) {
- if (b.length > 0) {
- b.append(".")
+ def YSuspect createMaskedDecimalField(JvmType type, OperationInfo info, String mask) {
+ val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
+ suspect.tags += ILayoutingStrategy.TAG__MASKED_DECIMAL_FIELD
+ suspect.properties.put(ILayoutingStrategy.PROPERTY_MASK, mask)
+ suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
+ suspect.typeQualifiedName = type.qualifiedName
+ suspect
}
- b.append(attributePath)
- }
- val pathResult = b.toString
- pathResult
- }
- /**
- * Creates y column info element
- */
- def YColumnInfo createYColumnInfo(JvmType type) {
- val YColumnInfo columnInfo = YECviewFactory.eINSTANCE.createYColumnInfo
+ def YSuspect createPasswordField(JvmType type, OperationInfo info) {
+ val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
- columnInfo.typeQualifiedName = type.qualifiedName
- columnInfo.type = computer.loadClass(uiLayout.eResource.resourceSet, columnInfo.typeQualifiedName)
- columnInfo
- }
+ if (type.string) {
+ suspect.tags += ILayoutingStrategy.TAG__PASSWORD
+ } else {
+ throw new IllegalArgumentException(
+ "PasswordField need to be bound to String. " + type.qualifiedName + " is not a valid option.")
+ }
- /**
- * Sets properties into y column info
- */
- def setYColumnInfoProperties(YColumnInfo columnInfo, List<AutowireUtil.Pair> propList) {
- var properties = columnInfo.properties
- if (propList != null) {
- for (prop : propList) {
- properties.put(prop.key, prop.value)
+ suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
+ suspect.typeQualifiedName = type.qualifiedName
+ suspect
+ }
+
+ def YSuspect createBlopUploadComponent(JvmType type, OperationInfo info) {
+ val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
+ suspect.tags += ILayoutingStrategy.TAG__BLOB
+ suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
+ suspect.typeQualifiedName = type.qualifiedName
+ suspect
+ }
+
+ def YSuspect createCustomDecimalField(JvmType type, OperationInfo info) {
+ val suspect = YECviewFactory.eINSTANCE.createYTypedSuspect
+ suspect.tags += ILayoutingStrategy.TAG__DECIMAL
+ suspect.type = computer.loadClass(uiLayout.eResource.resourceSet, type.qualifiedName)
+ suspect.typeQualifiedName = type.qualifiedName
+ suspect
+ }
+
+ /**
+ * Create the bindings and install at the view
+ */
+ def createBinding(YEmbeddable yField, OperationInfo info, JvmType type, String fieldProperty) {
+
+ // use the autoWireSource as the model endpoint
+ val UiBindingEndpointAssignment uiModelEndpoint = uiLayout.autoWireSource as UiBindingEndpointAssignment
+ val yModelEndpoint = computer.createValueBindingEndpoint(uiModelEndpoint)
+ val detailValueEndpoint = yModelEndpoint.createDetailValueEndpoint
+ detailValueEndpoint.propertyPath = info.name
+ detailValueEndpoint.type = computer.loadClass(uiLayout.eResource.resourceSet, beanType.qualifiedName)
+
+ // create the field endpoint
+ val yFieldEndpoint = BindingFactory.eINSTANCE.createYECViewModelValueBindingEndpoint
+ yFieldEndpoint.element = yField
+ yFieldEndpoint.propertyPath = fieldProperty
+ yFieldEndpoint.typeQualifiedName = beanType.qualifiedName
+ yFieldEndpoint.type = computer.loadClass(uiLayout.eResource.resourceSet, beanType.qualifiedName)
+ if (yFieldEndpoint.type !== null && yFieldEndpoint.type.isAssignableFrom(typeof(EObject))) {
+ yFieldEndpoint.emfNsURI = yField.eClass.EPackage.nsURI
+ }
+
+ // bind model to target
+ val yBinding = BindingFactory.eINSTANCE.createYValueBinding();
+ yBinding.setTargetEndpoint(yFieldEndpoint);
+ yBinding.setModelEndpoint(detailValueEndpoint);
+ yBinding.setModelToTargetStrategy(YBindingUpdateStrategy.UPDATE);
+ yBinding.setTargetToModelStrategy(
+ if(info.readonly) YBindingUpdateStrategy.NEVER else YBindingUpdateStrategy.UPDATE)
+
+ // register the binding at the current view
+ yLayout.view.orCreateBindingSet.bindings += yBinding
+
+ // set the i18n key based on the binding
+ // yField.labelI18nKey = I18nKeyProvider.toI18nKey(beanType.qualifiedName, detailValueEndpoint.propertyPath)
+ yField.labelI18nKey = detailValueEndpoint.propertyPath
+ }
+
+ /**
+ * Create the bindings and install at the view
+ */
+ def createModelValueBinding(YSuspect suspect, String propertyPath, JvmType type, String fieldProperty, JvmType parentType) {
+
+ val YBeanSlot subTypeBeanSlot = suspect.findSubTypeBeanSlot
+ var YValueBindingEndpoint endpoint = null
+ var path = ""
+
+ // If a subTypeBeanSlot could be found, then we need to create a binding endpoint against this beanslot.
+ // The main slot has a different type then detail beanslot. And we can not bind fields contained in the subtype
+ // to the main bean slot. Eclipse databinding requires a proper type at binding creation.
+ if (subTypeBeanSlot === null) {
+
+ // use the autoWireSource as the model endpoint
+ val UiBindingEndpointAssignment uiModelEndpoint = uiLayout.
+ autoWireSource as UiBindingEndpointAssignment
+ val yModelEndpoint = computer.createValueBindingEndpoint(uiModelEndpoint)
+ val detailValueEndpoint = yModelEndpoint.createDetailValueEndpoint
+ detailValueEndpoint.propertyPath = propertyPath
+ detailValueEndpoint.type = computer.loadClass(uiLayout.eResource.resourceSet,
+ parentType.qualifiedName)
+ endpoint = detailValueEndpoint
+ path = detailValueEndpoint.propertyPath
+ } else {
+ endpoint = subTypeBeanSlot.createBindingEndpoint(propertyPath)
+ path = propertyPath
+ }
+
+ suspect.getValueBindingEndpoints().add(endpoint);
+
+ // set the i18n key based on the binding
+ // suspect.labelI18nKey = I18nKeyProvider.toI18nKey(beanType.qualifiedName, path)
+ suspect.labelI18nKey = path
+ suspect.label = propertyPath
+ }
+
+ /**
+ * Creates a binding which points to the container of the property
+ */
+ def createModelValueContainerBinding(YSuspect suspect, String propertyPath, JvmType type, String property) {
+
+ var fieldProperty = property
+ if (fieldProperty.contains(".")) {
+ fieldProperty = fieldProperty.substring(0, fieldProperty.lastIndexOf("."))
+ } else {
+ fieldProperty = null
+ }
+
+ val YBeanSlot subTypeBeanSlot = suspect.findSubTypeBeanSlot
+ var YValueBindingEndpoint endpoint = null
+
+ // If a subTypeBeanSlot could be found, then we need to create a binding endpoint against this beanslot.
+ // The main slot has a different type then detail beanslot. And we can not bind fields contained in the subtype
+ // to the main bean slot. Eclipse databinding requires a proper type at binding creation.
+ if (subTypeBeanSlot === null) {
+
+ // use the autoWireSource as the model endpoint
+ val UiBindingEndpointAssignment uiModelEndpoint = uiLayout.
+ autoWireSource as UiBindingEndpointAssignment
+ val yModelEndpoint = computer.createValueBindingEndpoint(uiModelEndpoint)
+ endpoint = yModelEndpoint
+ if (fieldProperty !== null) {
+ val detailValueEndpoint = yModelEndpoint.createDetailValueEndpoint
+ detailValueEndpoint.propertyPath = propertyPath
+ detailValueEndpoint.type = computer.loadClass(uiLayout.eResource.resourceSet,
+ beanType.qualifiedName)
+ endpoint = detailValueEndpoint
+ }
+ } else {
+ endpoint = subTypeBeanSlot.createBindingEndpoint(propertyPath)
+ }
+
+ suspect.containerValueBindingEndpoint = endpoint
+ }
+
+ /**
+ * Checks if the suspect is contained in an YSubTypeSuspect. <br>
+ * If so, then the detail beanslot of the YSubTypeSuspect is returned. Null otherwise.
+ */
+ def YBeanSlot findSubTypeBeanSlot(YSuspect suspect) {
+ if (suspect === null) {
+ return null
+ }
+ if (suspect instanceof YSubTypeSuspect) {
+ return suspect.beanSlot
+ }
+
+ val parent = suspect.eContainer
+ if (parent instanceof YSuspect) {
+ return parent.findSubTypeBeanSlot
+ }
+ return null
+ }
+
+ /**
+ * Create the bindings and install at the view
+ */
+ def createModelListBinding(YSuspect suspect, OperationInfo info, JvmType type, String fieldProperty) {
+
+ val YBeanSlot subTypeBeanSlot = suspect.findSubTypeBeanSlot
+ var YListBindingEndpoint endpoint = null
+ if (subTypeBeanSlot === null) {
+ // use the autoWireSource as the model endpoint
+ val UiBindingEndpointAssignment uiModelEndpoint = uiLayout.
+ autoWireSource as UiBindingEndpointAssignment
+ endpoint = createListBindingEndpointWithNested(uiModelEndpoint, info.name)
+ } else {
+ endpoint = subTypeBeanSlot.createListBindingEndpoint(info.name, subTypeBeanSlot.valueType)
+ }
+
+ suspect.getValueBindingEndpoints().add(endpoint);
+
+ // set the i18n key based on the binding
+ // suspect.labelI18nKey = I18nKeyProvider.toI18nKey(beanType.qualifiedName, info.name)
+ suspect.labelI18nKey = info.name
+ suspect.label = info.name
+ }
+
+ /**
+ * Creates a listbinding with respect to nested collection fields. <p>
+ * For instance:<br>
+ * beanSlot contains Person. We want to bind the children of persons father to a table.
+ * So we need to access the children collection of the beanslot by a nested property path: <code>beanslot.father.children</code>
+ */
+ def YListBindingEndpoint createListBindingEndpointWithNested(UiBindingEndpointAssignment epDef,
+ String attributePath) {
+ if (epDef === null) {
+ return null
+ }
+
+ var YListBindingEndpoint result = null;
+ val BindingInfoHelper.BindingInfo info = new BindingInfoHelper.BindingInfo()
+ bindingInfoHelper.collectBindingInfo(epDef, info);
+
+ if (info.bindingRoot instanceof UiBeanSlot) {
+ val uiBeanSlot = info.bindingRoot as UiBeanSlot
+
+ val YBeanSlot yBeanSlot = computer.associatedUi(uiBeanSlot)
+ val YBeanSlotListBindingEndpoint ep = factory.createBeanSlotListBindingEndpoint
+ ep.beanSlot = yBeanSlot
+
+ ep.attributePath = toNestedCollectionPath(info, attributePath)
+ result = ep
+ } else if (info.bindingRoot instanceof UiEmbeddable) {
+ val YEmbeddable yElement = computer.associatedUi(info.bindingRoot)
+ val YECViewModelListBindingEndpoint ep = factory.createECViewModelListBindingEndpoint
+ ep.element = yElement
+ ep.propertyPath = toNestedCollectionPath(info, attributePath)
+ if (info.typeForBinding !== null) {
+ ep.typeQualifiedName = info.typeForBinding.qualifiedName
+ ep.type = computer.loadClass(epDef.eResource.resourceSet, ep.typeQualifiedName)
+ }
+ if (yElement !== null) {
+ ep.emfNsURI = yElement.eClass.EPackage.nsURI
+ }
+ result = ep
+ }
+
+ return result
+ }
+
+ def toNestedCollectionPath(BindingInfo info, String attributePath) {
+ val StringBuilder b = new StringBuilder
+ if (!info.path.toString.nullOrEmpty) {
+ b.append(info.path.toString)
+ }
+
+ if (!attributePath.nullOrEmpty) {
+ if (b.length > 0) {
+ b.append(".")
+ }
+ b.append(attributePath)
+ }
+ val pathResult = b.toString
+ pathResult
+ }
+
+ /**
+ * Creates y column info element
+ */
+ def YColumnInfo createYColumnInfo(JvmType type) {
+ val YColumnInfo columnInfo = YECviewFactory.eINSTANCE.createYColumnInfo
+
+ columnInfo.typeQualifiedName = type.qualifiedName
+ columnInfo.type = computer.loadClass(uiLayout.eResource.resourceSet, columnInfo.typeQualifiedName)
+ columnInfo
+ }
+
+ /**
+ * Sets properties into y column info
+ */
+ def setYColumnInfoProperties(YColumnInfo columnInfo, List<AutowireUtil.Pair> propList) {
+ var properties = columnInfo.properties
+ if (propList !== null) {
+ for (prop : propList) {
+ properties.put(prop.key, prop.value)
+ }
+ }
+ }
+
+ public interface Layouter {
+ def void setup(UiLayout uiRootLayout, YLayout yRootLayout)
+
+ def void add(YEmbeddable element);
+
+ def void add(YSuspect suspect);
+
+ def void pushHierarchy(YTypedCompoundSuspect suspect);
+
+ def void popHierarchy();
+
+ }
+
+ public static class MobileLayouter implements Layouter {
+
+ VMVerticalComponentGroup group
+
+ override setup(UiLayout uiRootLayout, YLayout yRootLayout) {
+ group = VaadinMobileFactory.eINSTANCE.createVMVerticalComponentGroup
+
+ yRootLayout.elements += group
+ }
+
+ override add(YEmbeddable element) {
+ group.addElement(element)
+ }
+
+ override add(YSuspect ySuspect) {
+ // layout.suspects += ySuspect
+ }
+
+ override pushHierarchy(YTypedCompoundSuspect suspect) {
+ throw new UnsupportedOperationException("TODO: auto-generated method stub")
+ }
+
+ override popHierarchy() {
+ throw new UnsupportedOperationException("TODO: auto-generated method stub")
+ }
+
+ }
+
+ public static class StrategyLayoutLayouter implements Layouter {
+
+ Stack<YTypedCompoundSuspect> currentSubDtoSuspect = new Stack
+ YStrategyLayout layout
+
+ override setup(UiLayout uiRootLayout, YLayout yRootLayout) {
+ layout = YECviewFactory.eINSTANCE.createYStrategyLayout
+ layout.id = "cx-StrategyLayout"
+
+ yRootLayout.elements += layout
+ yRootLayout.view.visibilityProcessors +=
+ YVisibilityFactory.eINSTANCE.createYAuthorizationVisibilityProcessor
+ if (yRootLayout instanceof YAlignmentContainer) {
+ yRootLayout.applyAlignment(layout, YAlignment.FILL_FILL)
+ }
+ }
+
+ override add(YEmbeddable element) {
+ }
+
+ override add(YSuspect ySuspect) {
+ if (!currentSubDtoSuspect.isEmpty) {
+ currentSubDtoSuspect.peek.children += ySuspect
+ } else {
+ layout.suspects += ySuspect
+ }
+ }
+
+ override pushHierarchy(YTypedCompoundSuspect suspect) {
+ currentSubDtoSuspect.push(suspect)
+ }
+
+ override popHierarchy() {
+ currentSubDtoSuspect.pop
+ }
+
+ }
+
+ /**
+ * The Class LocalResourceAccess.
+ */
+ public static class LocalResourceAccess implements IReferenceFinder.ILocalResourceAccess {
+
+ ResourceSet rs
+
+ new(ResourceSet rs) {
+ this.rs = rs
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.xtext.findReferences.IReferenceFinder.IResourceAccess
+ * #readOnly(org.eclipse.emf.common.util.URI,
+ * org.eclipse.xtext.util.concurrent.IUnitOfWork)
+ */
+ override <R> R readOnly(URI targetURI, IUnitOfWork<R, ResourceSet> work) {
+ return work.exec(rs);
+ }
}
}
- }
-
- public interface Layouter {
- def void setup(UiLayout uiRootLayout, YLayout yRootLayout)
-
- def void add(YEmbeddable element);
-
- def void add(YSuspect suspect);
-
- def void pushHierarchy(YTypedCompoundSuspect suspect);
-
- def void popHierarchy();
-
- }
-
- public static class MobileLayouter implements Layouter {
-
- VMVerticalComponentGroup group
-
- override setup(UiLayout uiRootLayout, YLayout yRootLayout) {
- group = VaadinMobileFactory.eINSTANCE.createVMVerticalComponentGroup
-
- yRootLayout.elements += group
- }
-
- override add(YEmbeddable element) {
- group.addElement(element)
- }
-
- override add(YSuspect ySuspect) {
- // layout.suspects += ySuspect
- }
-
- override pushHierarchy(YTypedCompoundSuspect suspect) {
- throw new UnsupportedOperationException("TODO: auto-generated method stub")
- }
-
- override popHierarchy() {
- throw new UnsupportedOperationException("TODO: auto-generated method stub")
- }
-
- }
-
- public static class StrategyLayoutLayouter implements Layouter {
-
- Stack<YTypedCompoundSuspect> currentSubDtoSuspect = new Stack
- YStrategyLayout layout
-
- override setup(UiLayout uiRootLayout, YLayout yRootLayout) {
- layout = YECviewFactory.eINSTANCE.createYStrategyLayout
- layout.id = "cx-StrategyLayout"
-
- yRootLayout.elements += layout
- yRootLayout.view.visibilityProcessors +=
- YVisibilityFactory.eINSTANCE.createYAuthorizationVisibilityProcessor
- if (yRootLayout instanceof YAlignmentContainer) {
- yRootLayout.applyAlignment(layout, YAlignment.FILL_FILL)
- }
- }
-
- override add(YEmbeddable element) {
- }
-
- override add(YSuspect ySuspect) {
- if (!currentSubDtoSuspect.isEmpty) {
- currentSubDtoSuspect.peek.children += ySuspect
- } else {
- layout.suspects += ySuspect
- }
- }
-
- override pushHierarchy(YTypedCompoundSuspect suspect) {
- currentSubDtoSuspect.push(suspect)
- }
-
- override popHierarchy() {
- currentSubDtoSuspect.pop
- }
-
- }
-
- /**
- * The Class LocalResourceAccess.
- */
- public static class LocalResourceAccess implements IReferenceFinder.ILocalResourceAccess {
-
- ResourceSet rs
-
- new(ResourceSet rs) {
- this.rs = rs
- }
-
- /*
- * (non-Javadoc)
- *
- * @see
- * org.eclipse.xtext.findReferences.IReferenceFinder.IResourceAccess
- * #readOnly(org.eclipse.emf.common.util.URI,
- * org.eclipse.xtext.util.concurrent.IUnitOfWork)
- */
- override <R> R readOnly(URI targetURI, IUnitOfWork<R, ResourceSet> work) {
- return work.exec(rs);
- }
- }
-}
+
\ No newline at end of file
diff --git a/org.eclipse.osbp.autowireHelper/src/org/eclipse/osbp/autowirehelper/JvmTypeProperties.java b/org.eclipse.osbp.autowireHelper/src/org/eclipse/osbp/autowirehelper/JvmTypeProperties.java
index 373a3c9..975e1ce 100644
--- a/org.eclipse.osbp.autowireHelper/src/org/eclipse/osbp/autowirehelper/JvmTypeProperties.java
+++ b/org.eclipse.osbp.autowireHelper/src/org/eclipse/osbp/autowirehelper/JvmTypeProperties.java
@@ -23,6 +23,9 @@
import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.osbp.autowirehelper.AutowireHelper.LocalResourceAccess;
+import org.eclipse.osbp.runtime.common.annotations.Filter;
+import org.eclipse.osbp.runtime.common.annotations.Range;
+import org.eclipse.osbp.runtime.common.annotations.UniqueEntry;
import org.eclipse.xtext.common.types.JvmAnnotationReference;
import org.eclipse.xtext.common.types.JvmDeclaredType;
import org.eclipse.xtext.common.types.JvmFeature;
@@ -310,7 +313,7 @@
private JvmType type;
private JvmType parameterizedType;
private boolean many;
-
+
public Info getParent() {
return parent;
}
@@ -455,6 +458,18 @@
return postFix;
}
}
+
+ public boolean isRange() {
+ return hasAnnotation(Range.class);
+ }
+
+ public boolean isFilter() {
+ return hasAnnotation(Filter.class);
+ }
+
+ public boolean isUniqueEntry() {
+ return hasAnnotation(UniqueEntry.class);
+ }
@Override
public int compareTo(Info other) {
@@ -463,5 +478,6 @@
}
return name.compareTo(other.getName());
}
+
}
}
diff --git a/org.eclipse.osbp.autowireHelper/src/org/eclipse/osbp/autowirehelper/utils/AutowireUtil.xtend b/org.eclipse.osbp.autowireHelper/src/org/eclipse/osbp/autowirehelper/utils/AutowireUtil.xtend
index 969920d..d460d35 100644
--- a/org.eclipse.osbp.autowireHelper/src/org/eclipse/osbp/autowirehelper/utils/AutowireUtil.xtend
+++ b/org.eclipse.osbp.autowireHelper/src/org/eclipse/osbp/autowirehelper/utils/AutowireUtil.xtend
@@ -49,6 +49,8 @@
import org.eclipse.xtext.common.types.JvmType
import org.eclipse.xtext.common.types.util.TypeReferences
import org.eclipse.xtext.naming.IQualifiedNameProvider
+import org.eclipse.xtext.common.types.JvmIntAnnotationValue
+import org.eclipse.osbp.runtime.common.annotations.FilterDepth
class AutowireUtil {
@Inject extension IQualifiedNameProvider
@@ -136,6 +138,23 @@
return propMap
}
+
+ /**
+ * Returns the depth of the filter for BeanReferenceFields
+ */
+ public def int toFilterDepth(JvmField field) {
+ val ref = field.annotations.findFirst[ e |
+ val result = e.annotation.identifier.equals(typeof(FilterDepth).name)
+ return result
+ ]
+
+ if(ref === null) {
+ return 0
+ }
+
+ val JvmIntAnnotationValue depthVal = ref.values.get(0) as JvmIntAnnotationValue
+ return depthVal.values.get(0)
+ }
/**
* Detects all the existing properties of the jvmtype corresponding datatype of the attribute.
diff --git a/org.eclipse.osbp.autowireHelper/xtend-gen/org/eclipse/osbp/autowirehelper/AutowireHelper.java b/org.eclipse.osbp.autowireHelper/xtend-gen/org/eclipse/osbp/autowirehelper/AutowireHelper.java
index addd820..376d82e 100644
--- a/org.eclipse.osbp.autowireHelper/xtend-gen/org/eclipse/osbp/autowirehelper/AutowireHelper.java
+++ b/org.eclipse.osbp.autowireHelper/xtend-gen/org/eclipse/osbp/autowirehelper/AutowireHelper.java
@@ -27,13 +27,11 @@
import java.util.Stack;
import java.util.function.BiConsumer;
import java.util.function.Consumer;
-import javax.validation.Constraint;
+import javax.validation.Valid;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.common.util.EMap;
import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.resource.Resource;
@@ -46,7 +44,6 @@
import org.eclipse.osbp.ecview.core.common.model.binding.BindingFactory;
import org.eclipse.osbp.ecview.core.common.model.binding.YBinding;
import org.eclipse.osbp.ecview.core.common.model.binding.YBindingEndpoint;
-import org.eclipse.osbp.ecview.core.common.model.binding.YBindingSet;
import org.eclipse.osbp.ecview.core.common.model.binding.YBindingUpdateStrategy;
import org.eclipse.osbp.ecview.core.common.model.binding.YDetailValueBindingEndpoint;
import org.eclipse.osbp.ecview.core.common.model.binding.YECViewModelListBindingEndpoint;
@@ -59,7 +56,6 @@
import org.eclipse.osbp.ecview.core.common.model.core.YAuthorizationable;
import org.eclipse.osbp.ecview.core.common.model.core.YBeanSlot;
import org.eclipse.osbp.ecview.core.common.model.core.YBeanSlotListBindingEndpoint;
-import org.eclipse.osbp.ecview.core.common.model.core.YBeanSlotValueBindingEndpoint;
import org.eclipse.osbp.ecview.core.common.model.core.YDetailBeanSlot;
import org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable;
import org.eclipse.osbp.ecview.core.common.model.core.YLayout;
@@ -98,15 +94,16 @@
import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobileFactory;
import org.eclipse.osbp.runtime.common.annotations.DomainDescription;
import org.eclipse.osbp.runtime.common.annotations.DomainKey;
+import org.eclipse.osbp.runtime.common.annotations.FilterDepth;
+import org.eclipse.osbp.runtime.common.annotations.OnKanbanCard;
+import org.eclipse.osbp.runtime.common.annotations.UniqueEntry;
import org.eclipse.osbp.runtime.common.metric.TimeLogger;
import org.eclipse.osbp.utils.functionnormalizer.api.FunctionTypingAPI;
import org.eclipse.xtend2.lib.StringConcatenation;
import org.eclipse.xtext.common.types.JvmAnnotationReference;
-import org.eclipse.xtext.common.types.JvmAnnotationType;
import org.eclipse.xtext.common.types.JvmDeclaredType;
import org.eclipse.xtext.common.types.JvmField;
import org.eclipse.xtext.common.types.JvmGenericType;
-import org.eclipse.xtext.common.types.JvmOperation;
import org.eclipse.xtext.common.types.JvmParameterizedTypeReference;
import org.eclipse.xtext.common.types.JvmPrimitiveType;
import org.eclipse.xtext.common.types.JvmType;
@@ -115,7 +112,6 @@
import org.eclipse.xtext.common.types.TypesFactory;
import org.eclipse.xtext.common.types.TypesPackage;
import org.eclipse.xtext.naming.IQualifiedNameProvider;
-import org.eclipse.xtext.naming.QualifiedName;
import org.eclipse.xtext.resource.IReferenceDescription;
import org.eclipse.xtext.ui.editor.findrefs.IReferenceFinder;
import org.eclipse.xtext.util.IAcceptor;
@@ -127,7 +123,7 @@
import org.eclipse.xtext.xbase.lib.IterableExtensions;
import org.eclipse.xtext.xbase.lib.StringExtensions;
-@SuppressWarnings("all")
+@SuppressWarnings("restriction")
public class AutowireHelper implements IAutowireDelegate {
public interface Layouter {
public abstract void setup(final UiLayout uiRootLayout, final YLayout yRootLayout);
@@ -144,24 +140,28 @@
public static class MobileLayouter implements AutowireHelper.Layouter {
private VMVerticalComponentGroup group;
+ @Override
public void setup(final UiLayout uiRootLayout, final YLayout yRootLayout) {
- VMVerticalComponentGroup _createVMVerticalComponentGroup = VaadinMobileFactory.eINSTANCE.createVMVerticalComponentGroup();
- this.group = _createVMVerticalComponentGroup;
+ this.group = VaadinMobileFactory.eINSTANCE.createVMVerticalComponentGroup();
EList<YEmbeddable> _elements = yRootLayout.getElements();
_elements.add(this.group);
}
+ @Override
public void add(final YEmbeddable element) {
this.group.addElement(element);
}
+ @Override
public void add(final YSuspect ySuspect) {
}
+ @Override
public void pushHierarchy(final YTypedCompoundSuspect suspect) {
throw new UnsupportedOperationException("TODO: auto-generated method stub");
}
+ @Override
public void popHierarchy() {
throw new UnsupportedOperationException("TODO: auto-generated method stub");
}
@@ -172,14 +172,13 @@
private YStrategyLayout layout;
+ @Override
public void setup(final UiLayout uiRootLayout, final YLayout yRootLayout) {
- YStrategyLayout _createYStrategyLayout = YECviewFactory.eINSTANCE.createYStrategyLayout();
- this.layout = _createYStrategyLayout;
+ this.layout = YECviewFactory.eINSTANCE.createYStrategyLayout();
this.layout.setId("cx-StrategyLayout");
EList<YEmbeddable> _elements = yRootLayout.getElements();
_elements.add(this.layout);
- YView _view = yRootLayout.getView();
- EList<YVisibilityProcessor> _visibilityProcessors = _view.getVisibilityProcessors();
+ EList<YVisibilityProcessor> _visibilityProcessors = yRootLayout.getView().getVisibilityProcessors();
YAuthorizationVisibilityProcessor _createYAuthorizationVisibilityProcessor = YVisibilityFactory.eINSTANCE.createYAuthorizationVisibilityProcessor();
_visibilityProcessors.add(_createYAuthorizationVisibilityProcessor);
if ((yRootLayout instanceof YAlignmentContainer)) {
@@ -187,15 +186,16 @@
}
}
+ @Override
public void add(final YEmbeddable element) {
}
+ @Override
public void add(final YSuspect ySuspect) {
boolean _isEmpty = this.currentSubDtoSuspect.isEmpty();
boolean _not = (!_isEmpty);
if (_not) {
- YTypedCompoundSuspect _peek = this.currentSubDtoSuspect.peek();
- EList<YSuspect> _children = _peek.getChildren();
+ EList<YSuspect> _children = this.currentSubDtoSuspect.peek().getChildren();
_children.add(ySuspect);
} else {
EList<YSuspect> _suspects = this.layout.getSuspects();
@@ -203,10 +203,12 @@
}
}
+ @Override
public void pushHierarchy(final YTypedCompoundSuspect suspect) {
this.currentSubDtoSuspect.push(suspect);
}
+ @Override
public void popHierarchy() {
this.currentSubDtoSuspect.pop();
}
@@ -230,6 +232,7 @@
* #readOnly(org.eclipse.emf.common.util.URI,
* org.eclipse.xtext.util.concurrent.IUnitOfWork)
*/
+ @Override
public <R extends Object> R readOnly(final URI targetURI, final IUnitOfWork<R, ResourceSet> work) {
try {
return work.exec(this.rs);
@@ -280,6 +283,7 @@
private YBeanSlot yMainBeanslot;
+ @Override
public void autowire(final UiLayout uiLayout, final UiModelDerivedStateComputerx computer, final boolean mobile) {
boolean _isAutowire = uiLayout.isAutowire();
boolean _not = (!_isAutowire);
@@ -290,32 +294,26 @@
this.computer = computer;
this.mobile = mobile;
this.uiLayout = uiLayout;
- YLayout _associatedUi = computer.<YLayout>associatedUi(uiLayout);
- this.yLayout = _associatedUi;
- YView _view = this.yLayout.getView();
- this.yView = _view;
- YBeanSlot _beanSlot = this.getBeanSlot(uiLayout);
- this.yMainBeanslot = _beanSlot;
+ this.yLayout = computer.<YLayout>associatedUi(uiLayout);
+ this.yView = this.yLayout.getView();
+ this.yMainBeanslot = this.getBeanSlot(uiLayout);
boolean _matched = false;
- if (!_matched) {
- if (uiLayout instanceof UiHorizontalLayout) {
- _matched=true;
- AutowireHelper.Layouter _xifexpression = null;
- if ((!mobile)) {
- _xifexpression = new AutowireHelper.StrategyLayoutLayouter();
- } else {
- _xifexpression = new AutowireHelper.MobileLayouter();
- }
- this.layouter = _xifexpression;
- this.layouter.setup(uiLayout, this.yLayout);
+ if (uiLayout instanceof UiHorizontalLayout) {
+ _matched=true;
+ AutowireHelper.Layouter _xifexpression = null;
+ if ((!mobile)) {
+ _xifexpression = new AutowireHelper.StrategyLayoutLayouter();
+ } else {
+ _xifexpression = new AutowireHelper.MobileLayouter();
}
+ this.layouter = _xifexpression;
+ this.layouter.setup(uiLayout, this.yLayout);
}
if (!_matched) {
return;
}
final BindableTypeResolver resolver = new BindableTypeResolver();
- UiBindingExpression _autoWireSource = uiLayout.getAutoWireSource();
- JvmType resolvedType = resolver.resolveType(_autoWireSource);
+ JvmType resolvedType = resolver.resolveType(uiLayout.getAutoWireSource());
if ((resolvedType instanceof JvmDeclaredType)) {
this.beanType = ((JvmDeclaredType) resolvedType);
final Map<String, OperationExtensions.OperationInfo> opInfoMap = OperationExtensions.getOperationInfos(this.beanType);
@@ -334,22 +332,16 @@
final Set<URI> jvmTypeURIs = CollectionLiterals.<URI>newHashSet();
URI _uRI = EcoreUtil.getURI(dtoType);
jvmTypeURIs.add(_uRI);
- final IAcceptor<IReferenceDescription> _function = new IAcceptor<IReferenceDescription>() {
- public void accept(final IReferenceDescription it) {
- final IReferenceDescription desc = it;
- EReference _eReference = desc.getEReference();
- boolean _equals = Objects.equal(_eReference, TypesPackage.Literals.JVM_PARAMETERIZED_TYPE_REFERENCE__TYPE);
- if (_equals) {
- URI _sourceEObjectUri = it.getSourceEObjectUri();
- String _fragment = _sourceEObjectUri.fragment();
- boolean _endsWith = _fragment.endsWith("/@superTypes.0");
- if (_endsWith) {
- final URI uri = desc.getSourceEObjectUri();
- String _string = uri.toString();
- String _replace = _string.replace("/@superTypes.0", "");
- URI _createURI = URI.createURI(_replace);
- result.add(_createURI);
- }
+ final IAcceptor<IReferenceDescription> _function = (IReferenceDescription it) -> {
+ final IReferenceDescription desc = it;
+ EReference _eReference = desc.getEReference();
+ boolean _tripleEquals = (_eReference == TypesPackage.Literals.JVM_PARAMETERIZED_TYPE_REFERENCE__TYPE);
+ if (_tripleEquals) {
+ boolean _endsWith = it.getSourceEObjectUri().fragment().endsWith("/@superTypes.0");
+ if (_endsWith) {
+ final URI uri = desc.getSourceEObjectUri();
+ URI _createURI = URI.createURI(uri.toString().replace("/@superTypes.0", ""));
+ result.add(_createURI);
}
}
};
@@ -379,38 +371,30 @@
this.createSuspectStructure(sortedOpInfoMapList, type, mobile, parentSuspect);
}
- public void createSuspectStructure(final LinkedList<Map<String, OperationExtensions.OperationInfo>> sortedOpInfoMapList, final JvmType dtoType, final boolean mobile, final YTypedCompoundSuspect parentSuspect) {
+ public void createSuspectStructure(final LinkedList<Map<String, OperationExtensions.OperationInfo>> sortedOpInfoMapList, final JvmDeclaredType dtoType, final boolean mobile, final YTypedCompoundSuspect parentSuspect) {
boolean _isEnum = this._typeHelper.isEnum(dtoType);
boolean _not = (!_isEnum);
if (_not) {
- final Consumer<Map<String, OperationExtensions.OperationInfo>> _function = new Consumer<Map<String, OperationExtensions.OperationInfo>>() {
- public void accept(final Map<String, OperationExtensions.OperationInfo> it) {
- AutowireHelper.this.createSuspectStructure(it, mobile, parentSuspect);
- }
+ final Consumer<Map<String, OperationExtensions.OperationInfo>> _function = (Map<String, OperationExtensions.OperationInfo> it) -> {
+ this.createSuspectStructure(it, dtoType, mobile, parentSuspect);
};
sortedOpInfoMapList.forEach(_function);
}
- Resource _eResource = this.uiLayout.eResource();
- final Set<URI> subTypeURIs = this.findSubTypes(dtoType, _eResource);
+ final Set<URI> subTypeURIs = this.findSubTypes(dtoType, this.uiLayout.eResource());
boolean _isEmpty = subTypeURIs.isEmpty();
boolean _not_1 = (!_isEmpty);
if (_not_1) {
final YSubTypeBaseSuspect subtypeRootSuspect = YECviewFactory.eINSTANCE.createYSubTypeBaseSuspect();
EList<String> _tags = subtypeRootSuspect.getTags();
_tags.add(ILayoutingStrategy.TAG__SUBTYPES_ROOT);
- String _qualifiedName = dtoType.getQualifiedName();
- subtypeRootSuspect.setTypeQualifiedName(_qualifiedName);
+ subtypeRootSuspect.setTypeQualifiedName(dtoType.getQualifiedName());
this.layouter.add(subtypeRootSuspect);
this.layouter.pushHierarchy(subtypeRootSuspect);
}
- final Consumer<URI> _function_1 = new Consumer<URI>() {
- public void accept(final URI it) {
- Resource _eResource = AutowireHelper.this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- EObject _eObject = _resourceSet.getEObject(it, true);
- final JvmDeclaredType subDtoJvmType = ((JvmDeclaredType) _eObject);
- AutowireHelper.this.createSubTypeDtoSuspect(subDtoJvmType);
- }
+ final Consumer<URI> _function_1 = (URI it) -> {
+ EObject _eObject = this.uiLayout.eResource().getResourceSet().getEObject(it, true);
+ final JvmDeclaredType subDtoJvmType = ((JvmDeclaredType) _eObject);
+ this.createSubTypeDtoSuspect(subDtoJvmType);
};
subTypeURIs.forEach(_function_1);
boolean _isEmpty_1 = subTypeURIs.isEmpty();
@@ -420,250 +404,147 @@
}
}
- public void createSuspectStructure(final Map<String, OperationExtensions.OperationInfo> opInfoMap, final boolean mobile, final YTypedCompoundSuspect parentSuspect) {
- Collection<OperationExtensions.OperationInfo> _values = opInfoMap.values();
- final Consumer<OperationExtensions.OperationInfo> _function = new Consumer<OperationExtensions.OperationInfo>() {
- public void accept(final OperationExtensions.OperationInfo it) {
- JvmType type = null;
- try {
- JvmOperation _getter = it.getGetter();
- JvmTypeReference _returnType = _getter.getReturnType();
- JvmType _type = _returnType.getType();
- type = _type;
- } catch (final Throwable _t) {
- if (_t instanceof NullPointerException) {
- final NullPointerException e = (NullPointerException)_t;
- return;
- } else {
- throw Exceptions.sneakyThrow(_t);
- }
- }
- YSuspect suspect = null;
- ArrayList<AutowireUtil.Pair> properties = CollectionLiterals.<AutowireUtil.Pair>newArrayList();
- JvmField _field = it.getField();
- boolean _notEquals = (!Objects.equal(_field, null));
- if (_notEquals) {
- JvmField _field_1 = it.getField();
- JvmDeclaredType _declaringType = _field_1.getDeclaringType();
- String _qualifiedName = _declaringType.getQualifiedName();
- String _plus = (_qualifiedName + ".");
- String _name = it.getName();
- String _plus_1 = (_plus + _name);
- List<AutowireUtil.Pair> _properties = AutowireHelper.this._autowireUtil.toProperties(AutowireHelper.this.beanType, _plus_1);
- properties.addAll(_properties);
- }
- boolean _isBoolean = AutowireHelper.this._typeHelper.isBoolean(type);
- if (_isBoolean) {
- if (mobile) {
- AutowireHelper.this.createMobileSwitch(type, it);
- } else {
- YTypedSuspect _createCheckbox = AutowireHelper.this.createCheckbox(type, it);
- suspect = _createCheckbox;
- }
+ public void createSuspectStructure(final Map<String, OperationExtensions.OperationInfo> opInfoMap, final JvmDeclaredType dtoType, final boolean mobile, final YTypedCompoundSuspect parentSuspect) {
+ final Consumer<OperationExtensions.OperationInfo> _function = (OperationExtensions.OperationInfo it) -> {
+ JvmType type = null;
+ try {
+ type = it.getGetter().getReturnType().getType();
+ } catch (final Throwable _t) {
+ if (_t instanceof NullPointerException) {
+ final NullPointerException e = (NullPointerException)_t;
+ return;
} else {
- boolean _isNumberWithDigits = AutowireHelper.this._typeHelper.isNumberWithDigits(type);
- if (_isNumberWithDigits) {
- YTypedSuspect _createDecimalField = AutowireHelper.this.createDecimalField(type, it);
- suspect = _createDecimalField;
- String _name_1 = it.getName();
- boolean _isAttribute = AutowireHelper.this._autowireUtil.isAttribute(AutowireHelper.this.beanType, _name_1, "NumberToUomo");
- if (_isAttribute) {
- EList<String> _tags = suspect.getTags();
- _tags.add("NumberToUomo");
- } else {
- String _name_2 = it.getName();
- LDataType dataType = AutowireHelper.this._autowireUtil.toDataType(AutowireHelper.this.beanType, _name_2);
- boolean _notEquals_1 = (!Objects.equal(dataType, null));
- if (_notEquals_1) {
- JvmTypeReference _jvmTypeReference = dataType.getJvmTypeReference();
- JvmType _type_1 = _jvmTypeReference.getType();
- String dataTypeName = _type_1.getIdentifier();
- String _canonicalName = Double.class.getCanonicalName();
- boolean _equals = dataTypeName.equals(_canonicalName);
- if (_equals) {
- YSuspect _createCustomDecimalField = AutowireHelper.this.createCustomDecimalField(type, it);
- suspect = _createCustomDecimalField;
- }
+ throw Exceptions.sneakyThrow(_t);
+ }
+ }
+ YSuspect suspect = null;
+ ArrayList<AutowireUtil.Pair> properties = CollectionLiterals.<AutowireUtil.Pair>newArrayList();
+ JvmField _field = it.getField();
+ boolean _tripleNotEquals = (_field != null);
+ if (_tripleNotEquals) {
+ String _qualifiedName = it.getField().getDeclaringType().getQualifiedName();
+ String _plus = (_qualifiedName + ".");
+ String _name = it.getName();
+ String _plus_1 = (_plus + _name);
+ properties.addAll(this._autowireUtil.toProperties(dtoType, _plus_1));
+ }
+ if ((this._typeHelper.isBoolean(type) && (!it.isDirtyMark()))) {
+ if (mobile) {
+ this.createMobileSwitch(type, it);
+ } else {
+ suspect = this.createCheckbox(type, it);
+ }
+ } else {
+ boolean _isNumberWithDigits = this._typeHelper.isNumberWithDigits(type);
+ if (_isNumberWithDigits) {
+ suspect = this.createDecimalField(type, it);
+ boolean _isAttribute = this._autowireUtil.isAttribute(dtoType, it.getName(), "NumberToUomo");
+ if (_isAttribute) {
+ EList<String> _tags = suspect.getTags();
+ _tags.add("NumberToUomo");
+ } else {
+ LDataType dataType = this._autowireUtil.toDataType(dtoType, it.getName());
+ if ((dataType != null)) {
+ String dataTypeName = dataType.getJvmTypeReference().getType().getIdentifier();
+ boolean _equals = dataTypeName.equals(Double.class.getCanonicalName());
+ if (_equals) {
+ suspect = this.createCustomDecimalField(type, it);
}
}
+ }
+ } else {
+ boolean _isNumberWithoutDigits = this._typeHelper.isNumberWithoutDigits(type);
+ if (_isNumberWithoutDigits) {
+ if ((((!it.isIdOrUUID()) && (!it.isVersion())) && (!it.isDirtyMark()))) {
+ suspect = this.createNumberField(type, it);
+ }
} else {
- boolean _isNumberWithoutDigits = AutowireHelper.this._typeHelper.isNumberWithoutDigits(type);
- if (_isNumberWithoutDigits) {
- boolean _and = false;
- String _name_3 = it.getName();
- boolean _equals_1 = _name_3.equals("id");
- boolean _not = (!_equals_1);
- if (!_not) {
- _and = false;
- } else {
- String _name_4 = it.getName();
- boolean _equals_2 = _name_4.equals("uuid");
- boolean _not_1 = (!_equals_2);
- _and = _not_1;
+ boolean _isString = this._typeHelper.isString(type);
+ if (_isString) {
+ final Function1<AutowireUtil.Pair, Boolean> _function_1 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.equals(ILayoutingStrategy.PROPERTY_KEY__FIELD_TYPE));
+ };
+ AutowireUtil.Pair _findFirst = IterableExtensions.<AutowireUtil.Pair>findFirst(properties, _function_1);
+ String _value = null;
+ if (_findFirst!=null) {
+ _value=_findFirst.value;
}
- if (_and) {
- YTypedSuspect _createNumberField = AutowireHelper.this.createNumberField(type, it);
- suspect = _createNumberField;
- }
- } else {
- boolean _isString = AutowireHelper.this._typeHelper.isString(type);
- if (_isString) {
- final Function1<AutowireUtil.Pair, Boolean> _function = new Function1<AutowireUtil.Pair, Boolean>() {
- public Boolean apply(final AutowireUtil.Pair it) {
- return Boolean.valueOf(it.key.equals(ILayoutingStrategy.PROPERTY_KEY__FIELD_TYPE));
- }
- };
- AutowireUtil.Pair _findFirst = IterableExtensions.<AutowireUtil.Pair>findFirst(properties, _function);
- String _value = null;
- if (_findFirst!=null) {
- _value=_findFirst.value;
- }
- final String fieldType = _value;
- boolean _and_1 = false;
- String _name_5 = it.getName();
- boolean _equals_3 = _name_5.equals("id");
- boolean _not_2 = (!_equals_3);
- if (!_not_2) {
- _and_1 = false;
+ final String fieldType = _value;
+ if ((((!it.isIdOrUUID()) && (!it.isVersion())) && (!it.isDirtyMark()))) {
+ FunctionTypingAPI functionTypingAPI = new FunctionTypingAPI();
+ final String functionImagePicker = functionTypingAPI.getFunctionImagePickerTypeName();
+ if (((this.isDomainKey(it) || this.isDomainDescription(it)) || ((!StringExtensions.isNullOrEmpty(fieldType)) && fieldType.equals(ILayoutingStrategy.PROPERTY_SUGGESTTEXT)))) {
+ suspect = this.createSuggestTextField(type, it, opInfoMap);
} else {
- String _name_6 = it.getName();
- boolean _equals_4 = _name_6.equals("uuid");
- boolean _not_3 = (!_equals_4);
- _and_1 = _not_3;
- }
- if (_and_1) {
- FunctionTypingAPI functionTypingAPI = new FunctionTypingAPI();
- final String functionImagePicker = functionTypingAPI.getFunctionImagePickerTypeName();
- boolean _or = false;
- boolean _or_1 = false;
- boolean _isDomainKey = AutowireHelper.this.isDomainKey(it);
- if (_isDomainKey) {
- _or_1 = true;
+ final Function1<AutowireUtil.Pair, Boolean> _function_2 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.toLowerCase().equals(ILayoutingStrategy.PROPERTY_BLOB));
+ };
+ boolean _exists = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_2);
+ if (_exists) {
+ suspect = this.createBlopUploadComponent(type, it);
} else {
- boolean _isDomainDescription = AutowireHelper.this.isDomainDescription(it);
- _or_1 = _isDomainDescription;
- }
- if (_or_1) {
- _or = true;
- } else {
- boolean _and_2 = false;
- boolean _isNullOrEmpty = StringExtensions.isNullOrEmpty(fieldType);
- boolean _not_4 = (!_isNullOrEmpty);
- if (!_not_4) {
- _and_2 = false;
+ if (((!StringExtensions.isNullOrEmpty(fieldType)) && fieldType.equals(ILayoutingStrategy.PROPERTY_RICH_TEXT))) {
+ suspect = this.createRichTextField(type, it);
} else {
- boolean _equals_5 = fieldType.equals(ILayoutingStrategy.PROPERTY_SUGGESTTEXT);
- _and_2 = _equals_5;
- }
- _or = _and_2;
- }
- if (_or) {
- YTypedSuspect _createSuggestTextField = AutowireHelper.this.createSuggestTextField(type, it, opInfoMap);
- suspect = _createSuggestTextField;
- } else {
- final Function1<AutowireUtil.Pair, Boolean> _function_1 = new Function1<AutowireUtil.Pair, Boolean>() {
- public Boolean apply(final AutowireUtil.Pair it) {
- String _lowerCase = it.key.toLowerCase();
- return Boolean.valueOf(_lowerCase.equals(ILayoutingStrategy.PROPERTY_BLOB));
- }
- };
- boolean _exists = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_1);
- if (_exists) {
- YSuspect _createBlopUploadComponent = AutowireHelper.this.createBlopUploadComponent(type, it);
- suspect = _createBlopUploadComponent;
- } else {
- boolean _and_3 = false;
- boolean _isNullOrEmpty_1 = StringExtensions.isNullOrEmpty(fieldType);
- boolean _not_5 = (!_isNullOrEmpty_1);
- if (!_not_5) {
- _and_3 = false;
- } else {
- boolean _equals_6 = fieldType.equals(ILayoutingStrategy.PROPERTY_RICH_TEXT);
- _and_3 = _equals_6;
- }
- if (_and_3) {
- YSuspect _createRichTextField = AutowireHelper.this.createRichTextField(type, it);
- suspect = _createRichTextField;
- } else {
- boolean _and_4 = false;
- boolean _isNullOrEmpty_2 = StringExtensions.isNullOrEmpty(fieldType);
- boolean _not_6 = (!_isNullOrEmpty_2);
- if (!_not_6) {
- _and_4 = false;
- } else {
- boolean _equals_7 = fieldType.equals(ILayoutingStrategy.PROPERTY_MASKED_TEXT);
- _and_4 = _equals_7;
+ if (((!StringExtensions.isNullOrEmpty(fieldType)) && fieldType.equals(ILayoutingStrategy.PROPERTY_MASKED_TEXT))) {
+ final Function1<AutowireUtil.Pair, Boolean> _function_3 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.equals(ILayoutingStrategy.PROPERTY_MASK));
+ };
+ AutowireUtil.Pair _findFirst_1 = IterableExtensions.<AutowireUtil.Pair>findFirst(properties, _function_3);
+ String _value_1 = null;
+ if (_findFirst_1!=null) {
+ _value_1=_findFirst_1.value;
}
- if (_and_4) {
- final Function1<AutowireUtil.Pair, Boolean> _function_2 = new Function1<AutowireUtil.Pair, Boolean>() {
- public Boolean apply(final AutowireUtil.Pair it) {
- return Boolean.valueOf(it.key.equals(ILayoutingStrategy.PROPERTY_MASK));
- }
- };
- AutowireUtil.Pair _findFirst_1 = IterableExtensions.<AutowireUtil.Pair>findFirst(properties, _function_2);
- String _value_1 = null;
- if (_findFirst_1!=null) {
- _value_1=_findFirst_1.value;
- }
- final String mask = _value_1;
- YSuspect _createMaskedTextField = AutowireHelper.this.createMaskedTextField(type, it, mask);
- suspect = _createMaskedTextField;
+ final String mask = _value_1;
+ suspect = this.createMaskedTextField(type, it, mask);
+ } else {
+ if (((!StringExtensions.isNullOrEmpty(fieldType)) && fieldType.equals(ILayoutingStrategy.PROPERTY_PASSWORD))) {
+ suspect = this.createPasswordField(type, it);
} else {
- boolean _and_5 = false;
- boolean _isNullOrEmpty_3 = StringExtensions.isNullOrEmpty(fieldType);
- boolean _not_7 = (!_isNullOrEmpty_3);
- if (!_not_7) {
- _and_5 = false;
+ final Function1<AutowireUtil.Pair, Boolean> _function_4 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_TEXTAREA));
+ };
+ boolean _exists_1 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_4);
+ if (_exists_1) {
+ suspect = this.createTextAreaField(type, it);
} else {
- boolean _equals_8 = fieldType.equals(ILayoutingStrategy.PROPERTY_PASSWORD);
- _and_5 = _equals_8;
- }
- if (_and_5) {
- YSuspect _createPasswordField = AutowireHelper.this.createPasswordField(type, it);
- suspect = _createPasswordField;
- } else {
- final Function1<AutowireUtil.Pair, Boolean> _function_3 = new Function1<AutowireUtil.Pair, Boolean>() {
- public Boolean apply(final AutowireUtil.Pair it) {
- return Boolean.valueOf(it.key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_TEXTAREA));
- }
+ final Function1<AutowireUtil.Pair, Boolean> _function_5 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_ORGANIZATION));
};
- boolean _exists_1 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_3);
- if (_exists_1) {
- YTypedSuspect _createTextAreaField = AutowireHelper.this.createTextAreaField(type, it);
- suspect = _createTextAreaField;
+ boolean _exists_2 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_5);
+ if (_exists_2) {
+ suspect = this.createOrganizationComboBox(type, it);
} else {
- final Function1<AutowireUtil.Pair, Boolean> _function_4 = new Function1<AutowireUtil.Pair, Boolean>() {
- public Boolean apply(final AutowireUtil.Pair it) {
- return Boolean.valueOf(it.key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_ORGANIZATION));
- }
+ final Function1<AutowireUtil.Pair, Boolean> _function_6 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_PERSPECTIVE));
};
- boolean _exists_2 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_4);
- if (_exists_2) {
- YTypedSuspect _createOrganizationComboBox = AutowireHelper.this.createOrganizationComboBox(type, it);
- suspect = _createOrganizationComboBox;
+ boolean _exists_3 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_6);
+ if (_exists_3) {
+ suspect = this.createPerspectiveComboBox(type, it);
} else {
- final Function1<AutowireUtil.Pair, Boolean> _function_5 = new Function1<AutowireUtil.Pair, Boolean>() {
- public Boolean apply(final AutowireUtil.Pair it) {
- return Boolean.valueOf(it.key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_PERSPECTIVE));
- }
+ final Function1<AutowireUtil.Pair, Boolean> _function_7 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_PRINTSERVICE));
};
- boolean _exists_3 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_5);
- if (_exists_3) {
- YTypedSuspect _createPerspectiveComboBox = AutowireHelper.this.createPerspectiveComboBox(type, it);
- suspect = _createPerspectiveComboBox;
+ boolean _exists_4 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_7);
+ if (_exists_4) {
+ suspect = this.createPrintServiceComboBox(type, it);
} else {
- final Function1<AutowireUtil.Pair, Boolean> _function_6 = new Function1<AutowireUtil.Pair, Boolean>() {
- public Boolean apply(final AutowireUtil.Pair it) {
- return Boolean.valueOf(it.key.equalsIgnoreCase(functionImagePicker));
- }
+ final Function1<AutowireUtil.Pair, Boolean> _function_8 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_THEME));
};
- boolean _exists_4 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_6);
- if (_exists_4) {
- YTypedSuspect _createIconComboBox = AutowireHelper.this.createIconComboBox(type, it);
- suspect = _createIconComboBox;
+ boolean _exists_5 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_8);
+ if (_exists_5) {
+ suspect = this.createThemeComboBox(type, it);
} else {
- YTypedSuspect _createTextField = AutowireHelper.this.createTextField(type, it);
- suspect = _createTextField;
+ final Function1<AutowireUtil.Pair, Boolean> _function_9 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.equalsIgnoreCase(functionImagePicker));
+ };
+ boolean _exists_6 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_9);
+ if (_exists_6) {
+ suspect = this.createIconComboBox(type, it);
+ } else {
+ suspect = this.createTextField(type, it);
+ }
}
}
}
@@ -674,160 +555,98 @@
}
}
}
- } else {
- boolean _isDate = AutowireHelper.this._typeHelper.isDate(type);
- if (_isDate) {
- YTypedSuspect _createDateField = AutowireHelper.this.createDateField(type, it);
- suspect = _createDateField;
- } else {
- boolean _isEnum = AutowireHelper.this._typeHelper.isEnum(type);
- if (_isEnum) {
- final Function1<AutowireUtil.Pair, Boolean> _function_7 = new Function1<AutowireUtil.Pair, Boolean>() {
- public Boolean apply(final AutowireUtil.Pair it) {
- String _lowerCase = it.key.toLowerCase();
- return Boolean.valueOf(_lowerCase.equals(ILayoutingStrategy.PROPERTY_OPTION_GROUP));
- }
- };
- boolean _exists_5 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_7);
- if (_exists_5) {
- YTypedSuspect _createEnumOptionsGroup = AutowireHelper.this.createEnumOptionsGroup(type, it);
- suspect = _createEnumOptionsGroup;
- } else {
- YTypedSuspect _createEnumComboBox = AutowireHelper.this.createEnumComboBox(type, it);
- suspect = _createEnumComboBox;
- }
- } else {
- boolean _isByteArray = AutowireHelper.this.isByteArray(type);
- if (_isByteArray) {
- final Function1<AutowireUtil.Pair, Boolean> _function_8 = new Function1<AutowireUtil.Pair, Boolean>() {
- public Boolean apply(final AutowireUtil.Pair it) {
- return Boolean.valueOf(it.key.equals(ILayoutingStrategy.PROPERTY_KEY__FIELD_TYPE));
- }
- };
- AutowireUtil.Pair _findFirst_2 = IterableExtensions.<AutowireUtil.Pair>findFirst(properties, _function_8);
- String _value_2 = null;
- if (_findFirst_2!=null) {
- _value_2=_findFirst_2.value;
- }
- final String fieldType_1 = _value_2;
- boolean _and_6 = false;
- boolean _isNullOrEmpty_4 = StringExtensions.isNullOrEmpty(fieldType_1);
- boolean _not_8 = (!_isNullOrEmpty_4);
- if (!_not_8) {
- _and_6 = false;
- } else {
- boolean _equals_9 = fieldType_1.equals(ILayoutingStrategy.PROPERTY_RICH_TEXT);
- _and_6 = _equals_9;
- }
- if (_and_6) {
- YSuspect _createRichTextField_1 = AutowireHelper.this.createRichTextField(type, it);
- suspect = _createRichTextField_1;
- } else {
- YSuspect _createBlopUploadComponent_1 = AutowireHelper.this.createBlopUploadComponent(type, it);
- suspect = _createBlopUploadComponent_1;
- }
- } else {
- boolean _isDomainReference = AutowireHelper.this._typeHelper.isDomainReference(it);
- if (_isDomainReference) {
- YTypedSuspect _createBeanReferenceField = AutowireHelper.this.createBeanReferenceField(type, it);
- suspect = _createBeanReferenceField;
- } else {
- boolean _and_7 = false;
- JvmField _field_2 = it.getField();
- boolean _notEquals_2 = (!Objects.equal(_field_2, null));
- if (!_notEquals_2) {
- _and_7 = false;
- } else {
- JvmField _field_3 = it.getField();
- boolean _isCollection = AutowireHelper.this._typeHelper.isCollection(_field_3);
- _and_7 = _isCollection;
- }
- if (_and_7) {
- final Function1<AutowireUtil.Pair, Boolean> _function_9 = new Function1<AutowireUtil.Pair, Boolean>() {
- public Boolean apply(final AutowireUtil.Pair it) {
- String _lowerCase = it.key.toLowerCase();
- return Boolean.valueOf(_lowerCase.equals(ILayoutingStrategy.PROPERTY_GRID));
- }
- };
- boolean _exists_6 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_9);
- if (_exists_6) {
- YTypedSuspect _createGrid = AutowireHelper.this.createGrid(type, it);
- suspect = _createGrid;
- } else {
- final Function1<AutowireUtil.Pair, Boolean> _function_10 = new Function1<AutowireUtil.Pair, Boolean>() {
- public Boolean apply(final AutowireUtil.Pair it) {
- return Boolean.valueOf(it.key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_TABLE));
- }
- };
- boolean _exists_7 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_10);
- if (_exists_7) {
- YTypedSuspect _createTableField = AutowireHelper.this.createTableField(type, it);
- suspect = _createTableField;
- }
- }
- } else {
- boolean _isDto = AutowireHelper.this.isDto(type);
- if (_isDto) {
- YSuspect _createDtoSuspect = AutowireHelper.this.createDtoSuspect(type, it);
- suspect = _createDtoSuspect;
- }
- }
- }
- }
- }
- }
}
+ } else {
+ boolean _isDate = this._typeHelper.isDate(type);
+ if (_isDate) {
+ suspect = this.createDateField(type, it);
+ } else {
+ boolean _isEnum = this._typeHelper.isEnum(type);
+ if (_isEnum) {
+ final Function1<AutowireUtil.Pair, Boolean> _function_10 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.toLowerCase().equals(ILayoutingStrategy.PROPERTY_OPTION_GROUP));
+ };
+ boolean _exists_7 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_10);
+ if (_exists_7) {
+ suspect = this.createEnumOptionsGroup(type, it);
+ } else {
+ suspect = this.createEnumComboBox(type, it);
+ }
+ } else {
+ boolean _isByteArray = this.isByteArray(type);
+ if (_isByteArray) {
+ final Function1<AutowireUtil.Pair, Boolean> _function_11 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.equals(ILayoutingStrategy.PROPERTY_KEY__FIELD_TYPE));
+ };
+ AutowireUtil.Pair _findFirst_2 = IterableExtensions.<AutowireUtil.Pair>findFirst(properties, _function_11);
+ String _value_2 = null;
+ if (_findFirst_2!=null) {
+ _value_2=_findFirst_2.value;
+ }
+ final String fieldType_1 = _value_2;
+ if (((!StringExtensions.isNullOrEmpty(fieldType_1)) && fieldType_1.equals(ILayoutingStrategy.PROPERTY_RICH_TEXT))) {
+ suspect = this.createRichTextField(type, it);
+ } else {
+ suspect = this.createBlopUploadComponent(type, it);
+ }
+ } else {
+ boolean _isDomainReference = this._typeHelper.isDomainReference(it);
+ if (_isDomainReference) {
+ suspect = this.createBeanReferenceField(type, it);
+ } else {
+ if (((it.getField() != null) && this._typeHelper.isCollection(it.getField()))) {
+ final Function1<AutowireUtil.Pair, Boolean> _function_12 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.toLowerCase().equals(ILayoutingStrategy.PROPERTY_GRID));
+ };
+ boolean _exists_8 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_12);
+ if (_exists_8) {
+ suspect = this.createGrid(type, it);
+ } else {
+ final Function1<AutowireUtil.Pair, Boolean> _function_13 = (AutowireUtil.Pair it_1) -> {
+ return Boolean.valueOf(it_1.key.equalsIgnoreCase(ILayoutingStrategy.PROPERTY_TABLE));
+ };
+ boolean _exists_9 = IterableExtensions.<AutowireUtil.Pair>exists(properties, _function_13);
+ if (_exists_9) {
+ suspect = this.createTableField(type, it);
+ }
+ }
+ } else {
+ boolean _isDto = this.isDto(type);
+ if (_isDto) {
+ suspect = this.createDtoSuspect(type, it);
+ }
+ }
+ }
+ }
+ }
+ }
}
}
}
- boolean _equals_10 = Objects.equal(parentSuspect, null);
- if (_equals_10) {
- AutowireHelper.this.completeSuspect(type, it, suspect);
- } else {
- AutowireHelper.this.completeSuspect(type, it, suspect, parentSuspect);
- }
- for (final AutowireUtil.Pair keyAndValue : properties) {
- boolean _notEquals_3 = (!Objects.equal(suspect, null));
- if (_notEquals_3) {
- EMap<String, String> _properties_1 = suspect.getProperties();
- String _lowerCase = keyAndValue.key.toLowerCase();
- _properties_1.put(_lowerCase, keyAndValue.value);
- }
- }
}
+ if ((parentSuspect == null)) {
+ this.completeSuspect(type, it, suspect, dtoType);
+ } else {
+ this.completeSuspect(type, it, suspect, parentSuspect, dtoType);
+ }
+ for (final AutowireUtil.Pair keyAndValue : properties) {
+ if ((suspect != null)) {
+ suspect.getProperties().put(keyAndValue.key.toLowerCase(), keyAndValue.value);
+ }
+ }
};
- _values.forEach(_function);
+ opInfoMap.values().forEach(_function);
}
public void createAuthorizationVisibilityProcessor(final YAuthorizationable element, final OperationExtensions.OperationInfo info) {
JvmField _field = info.getField();
- boolean _notEquals = (!Objects.equal(_field, null));
- if (_notEquals) {
- JvmField _field_1 = info.getField();
- EObject _eContainer = _field_1.eContainer();
+ boolean _tripleNotEquals = (_field != null);
+ if (_tripleNotEquals) {
+ EObject _eContainer = info.getField().eContainer();
final JvmGenericType type = ((JvmGenericType) _eContainer);
- boolean _and = false;
- JvmOperation _getter = info.getGetter();
- JvmTypeReference _returnType = _getter.getReturnType();
- JvmType _type = _returnType.getType();
- boolean _isClass = this._autowireUtil.isClass(_type);
- boolean _not = (!_isClass);
- if (!_not) {
- _and = false;
- } else {
- JvmOperation _getter_1 = info.getGetter();
- JvmTypeReference _returnType_1 = _getter_1.getReturnType();
- JvmType _type_1 = _returnType_1.getType();
- boolean _isAllowed = this._autowireUtil.isAllowed(_type_1, type, info);
- _and = _isAllowed;
- }
- if (_and) {
- QualifiedName _fullyQualifiedName = this._iQualifiedNameProvider.getFullyQualifiedName(type);
- String _string = _fullyQualifiedName.toString();
- element.setAuthorizationGroup(_string);
- JvmField _field_2 = info.getField();
- String _simpleName = _field_2.getSimpleName();
- element.setAuthorizationId(_simpleName);
+ if (((!this._autowireUtil.isClass(info.getGetter().getReturnType().getType())) && this._autowireUtil.isAllowed(info.getGetter().getReturnType().getType(), type, info))) {
+ element.setAuthorizationGroup(this._iQualifiedNameProvider.getFullyQualifiedName(type).toString());
+ element.setAuthorizationId(info.getField().getSimpleName());
}
}
}
@@ -853,25 +672,17 @@
final YSubTypeSuspect subTypeSuspect = YECviewFactory.eINSTANCE.createYSubTypeSuspect();
EList<String> _tags = subTypeSuspect.getTags();
_tags.add(ILayoutingStrategy.TAG__SUBTYPE);
- String _qualifiedName = subDtoJvmType.getQualifiedName();
- subTypeSuspect.setTypeQualifiedName(_qualifiedName);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _typeQualifiedName = subTypeSuspect.getTypeQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _typeQualifiedName);
- subTypeSuspect.setType(_loadClass);
+ subTypeSuspect.setTypeQualifiedName(subDtoJvmType.getQualifiedName());
+ subTypeSuspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), subTypeSuspect.getTypeQualifiedName()));
final YView view = this.computer.getCurrentView();
- String _typeQualifiedName_1 = subTypeSuspect.getTypeQualifiedName();
- Class<?> _type = subTypeSuspect.getType();
- final YDetailBeanSlot detailSlot = view.addDetailBeanSlot(_typeQualifiedName_1, _type,
+ final YDetailBeanSlot detailSlot = view.addDetailBeanSlot(subTypeSuspect.getTypeQualifiedName(), subTypeSuspect.getType(),
this.yMainBeanslot, "");
EList<String> _tags_1 = detailSlot.getTags();
_tags_1.add(ILayoutingStrategy.TAG__SUBTYPE);
subTypeSuspect.setBeanSlot(detailSlot);
this.layouter.add(subTypeSuspect);
this.layouter.pushHierarchy(subTypeSuspect);
- Map<String, OperationExtensions.OperationInfo> _operationInfos = OperationExtensions.getOperationInfos(subDtoJvmType, false);
- final LinkedList<Map<String, OperationExtensions.OperationInfo>> subTypeInfos = this.createSortedMapList(_operationInfos);
+ final LinkedList<Map<String, OperationExtensions.OperationInfo>> subTypeInfos = this.createSortedMapList(OperationExtensions.getOperationInfos(subDtoJvmType, false));
this.createSuspectStructure(subTypeInfos, subDtoJvmType, this.mobile, subTypeSuspect);
this.layouter.popHierarchy();
return subTypeSuspect;
@@ -883,72 +694,98 @@
public boolean isDto(final JvmType type) {
final SuperTypeCollector collector = new SuperTypeCollector();
final Set<String> superTypes = collector.collectSuperTypeNames(type);
- String _name = IDto.class.getName();
- return superTypes.contains(_name);
+ return superTypes.contains(IDto.class.getName());
}
- public void completeSuspect(final JvmType type, final OperationExtensions.OperationInfo info, final YSuspect suspect) {
- boolean _notEquals = (!Objects.equal(suspect, null));
- if (_notEquals) {
+ public void completeSuspect(final JvmType type, final OperationExtensions.OperationInfo info, final YSuspect suspect, final JvmType parentType) {
+ if ((suspect != null)) {
StringConcatenation _builder = new StringConcatenation();
String _generateId = this._autowireUtil.generateId(this.uiLayout);
- _builder.append(_generateId, "");
+ _builder.append(_generateId);
_builder.append(".");
String _name = info.getName();
- _builder.append(_name, "");
+ _builder.append(_name);
suspect.setId(_builder.toString());
boolean _isReadonly = info.isReadonly();
if (_isReadonly) {
EList<String> _tags = suspect.getTags();
_tags.add("readonly");
}
- boolean _isValidationConstraint = this.isValidationConstraint(info);
- if (_isValidationConstraint) {
+ boolean _isOnKanbanCard = this.isOnKanbanCard(info);
+ if (_isOnKanbanCard) {
EList<String> _tags_1 = suspect.getTags();
- _tags_1.add("constraint");
- String _id = info.getId();
- String[] splittedId = _id.split(":");
+ _tags_1.add("onKanbanCard");
+ }
+ boolean _isUniqueEntry = this.isUniqueEntry(info);
+ if (_isUniqueEntry) {
+ EList<String> _tags_2 = suspect.getTags();
+ _tags_2.add("unique");
+ String[] splittedId = info.getId().split(":");
int _length = splittedId.length;
boolean _greaterThan = (_length > 1);
if (_greaterThan) {
String fqClassName = splittedId[0];
- EMap<String, String> _properties = suspect.getProperties();
- _properties.put("class", fqClassName);
+ suspect.getProperties().put("class", fqClassName);
}
- EMap<String, String> _properties_1 = suspect.getProperties();
- String _name_1 = info.getName();
- _properties_1.put("name", _name_1);
+ suspect.getProperties().put("name", info.getName());
+ this.createModelValueContainerBinding(suspect, info.getName(), type, "value");
+ }
+ boolean _isValidationConstraint = this.isValidationConstraint(info);
+ if (_isValidationConstraint) {
+ EList<String> _tags_3 = suspect.getTags();
+ _tags_3.add("constraint");
+ String[] splittedId_1 = info.getId().split(":");
+ int _length_1 = splittedId_1.length;
+ boolean _greaterThan_1 = (_length_1 > 1);
+ if (_greaterThan_1) {
+ String fqClassName_1 = splittedId_1[0];
+ suspect.getProperties().put("class", fqClassName_1);
+ }
+ suspect.getProperties().put("name", info.getName());
}
this.layouter.add(suspect);
- boolean _and = false;
- JvmField _field = info.getField();
- boolean _notEquals_1 = (!Objects.equal(_field, null));
- if (!_notEquals_1) {
- _and = false;
- } else {
- JvmField _field_1 = info.getField();
- boolean _isCollection = this._typeHelper.isCollection(_field_1);
- _and = _isCollection;
- }
- if (_and) {
+ if (((info.getField() != null) && this._typeHelper.isCollection(info.getField()))) {
this.createModelListBinding(suspect, info, type, "list");
} else {
- String _name_2 = info.getName();
- this.createBinding(suspect, _name_2, type, "value");
+ this.createModelValueBinding(suspect, info.getName(), type, "value", parentType);
+ }
+ if ((suspect instanceof YTypedCompoundSuspect)) {
+ final YBindingEndpoint masterValueEP = ((YTypedCompoundSuspect)suspect).getValueBindingEndpoints().get(0);
+ boolean _isEmpty = ((YTypedCompoundSuspect)suspect).getValueBindingEndpoints().isEmpty();
+ boolean _not = (!_isEmpty);
+ if (_not) {
+ EList<YSuspect> _children = ((YTypedCompoundSuspect)suspect).getChildren();
+ for (final YSuspect child : _children) {
+ {
+ String _id = ((YTypedCompoundSuspect)suspect).getId();
+ String _id_1 = child.getId();
+ String _plus = (_id + _id_1);
+ child.setId(_plus);
+ boolean _isEmpty_1 = child.getValueBindingEndpoints().isEmpty();
+ boolean _not_1 = (!_isEmpty_1);
+ if (_not_1) {
+ final YBindingEndpoint childValueEP = child.getValueBindingEndpoints().get(0);
+ if ((childValueEP instanceof YDetailValueBindingEndpoint)) {
+ YBindingEndpoint _copy = EcoreUtil.<YBindingEndpoint>copy(masterValueEP);
+ ((YDetailValueBindingEndpoint)childValueEP).setMasterObservable(((YValueBindingEndpoint) _copy));
+ }
+ }
+ }
+ }
+ }
}
this.createAuthorizationVisibilityProcessor(suspect, info);
}
}
- public void completeSuspect(final JvmType type, final OperationExtensions.OperationInfo info, final YSuspect suspect, final YTypedCompoundSuspect parentSuspect) {
- boolean _notEquals = (!Objects.equal(suspect, null));
- if (_notEquals) {
+ public void completeSuspect(final JvmType type, final OperationExtensions.OperationInfo info, final YSuspect suspect, final YTypedCompoundSuspect parentSuspect, final JvmType parentType) {
+ if ((suspect != null)) {
StringConcatenation _builder = new StringConcatenation();
String _id = parentSuspect.getId();
- _builder.append(_id, "");
+ _builder.append(_id);
_builder.append(".");
String _name = info.getName();
- _builder.append(_name, "");
+ _builder.append(_name);
suspect.setId(_builder.toString());
boolean _isReadonly = info.isReadonly();
if (_isReadonly) {
@@ -959,36 +796,20 @@
if (_isValidationConstraint) {
EList<String> _tags_1 = suspect.getTags();
_tags_1.add("constraint");
- String _id_1 = info.getId();
- String[] splittedId = _id_1.split(":");
+ String[] splittedId = info.getId().split(":");
int _length = splittedId.length;
boolean _greaterThan = (_length > 1);
if (_greaterThan) {
String fqClassName = splittedId[0];
- EMap<String, String> _properties = suspect.getProperties();
- _properties.put("class", fqClassName);
+ suspect.getProperties().put("class", fqClassName);
}
- EMap<String, String> _properties_1 = suspect.getProperties();
- String _name_1 = info.getName();
- _properties_1.put("name", _name_1);
+ suspect.getProperties().put("name", info.getName());
}
- EList<YSuspect> _children = parentSuspect.getChildren();
- _children.add(suspect);
- boolean _and = false;
- JvmField _field = info.getField();
- boolean _notEquals_1 = (!Objects.equal(_field, null));
- if (!_notEquals_1) {
- _and = false;
- } else {
- JvmField _field_1 = info.getField();
- boolean _isCollection = this._typeHelper.isCollection(_field_1);
- _and = _isCollection;
- }
- if (_and) {
+ parentSuspect.getChildren().add(suspect);
+ if (((info.getField() != null) && this._typeHelper.isCollection(info.getField()))) {
this.createModelListBinding(suspect, info, type, "list");
} else {
- String _name_2 = info.getName();
- this.createBinding(suspect, _name_2, type, "value");
+ this.createModelValueBinding(suspect, info.getName(), type, "value", parentType);
}
this.createAuthorizationVisibilityProcessor(suspect, info);
}
@@ -1002,40 +823,16 @@
{
final LinkedHashMap<String, OperationExtensions.OperationInfo> sortedOpInfoList = CollectionLiterals.<String, OperationExtensions.OperationInfo>newLinkedHashMap();
final LinkedHashMap<String, OperationExtensions.OperationInfo> nonPrimitiveOpInfoMap = CollectionLiterals.<String, OperationExtensions.OperationInfo>newLinkedHashMap();
- final BiConsumer<String, OperationExtensions.OperationInfo> _function = new BiConsumer<String, OperationExtensions.OperationInfo>() {
- public void accept(final String key, final OperationExtensions.OperationInfo opInfo) {
- JvmType detailType = null;
- boolean _and = false;
- JvmField _field = opInfo.getField();
- boolean _notEquals = (!Objects.equal(_field, null));
- if (!_notEquals) {
- _and = false;
+ final BiConsumer<String, OperationExtensions.OperationInfo> _function = (String key, OperationExtensions.OperationInfo opInfo) -> {
+ JvmType detailType = null;
+ if (((opInfo.getField() != null) && (!this._typeHelper.isCollection(opInfo.getField())))) {
+ detailType = opInfo.getGetter().getReturnType().getType();
+ final boolean isPrimitive = ((detailType instanceof JvmPrimitiveType) || detailType.getQualifiedName().equals(
+ String.class.getName()));
+ if (isPrimitive) {
+ sortedOpInfoList.put(key, opInfo);
} else {
- JvmField _field_1 = opInfo.getField();
- boolean _isCollection = AutowireHelper.this._typeHelper.isCollection(_field_1);
- boolean _not = (!_isCollection);
- _and = _not;
- }
- if (_and) {
- JvmOperation _getter = opInfo.getGetter();
- JvmTypeReference _returnType = _getter.getReturnType();
- JvmType _type = _returnType.getType();
- detailType = _type;
- boolean _or = false;
- if ((detailType instanceof JvmPrimitiveType)) {
- _or = true;
- } else {
- String _qualifiedName = detailType.getQualifiedName();
- String _name = String.class.getName();
- boolean _equals = _qualifiedName.equals(_name);
- _or = _equals;
- }
- final boolean isPrimitive = _or;
- if (isPrimitive) {
- sortedOpInfoList.put(key, opInfo);
- } else {
- nonPrimitiveOpInfoMap.put(key, opInfo);
- }
+ nonPrimitiveOpInfoMap.put(key, opInfo);
}
}
};
@@ -1060,23 +857,23 @@
}
public boolean isDomainKey(final OperationExtensions.OperationInfo info) {
- boolean _and = false;
- boolean _notEquals = (!Objects.equal(info, null));
- if (!_notEquals) {
- _and = false;
- } else {
- JvmField _field = info.getField();
- boolean _notEquals_1 = (!Objects.equal(_field, null));
- _and = _notEquals_1;
- }
- if (_and) {
- JvmField _field_1 = info.getField();
- EList<JvmAnnotationReference> _annotations = _field_1.getAnnotations();
+ if (((info != null) && (info.getField() != null))) {
+ EList<JvmAnnotationReference> _annotations = info.getField().getAnnotations();
for (final JvmAnnotationReference annotationRefs : _annotations) {
- String _canonicalName = DomainKey.class.getCanonicalName();
- JvmAnnotationType _annotation = annotationRefs.getAnnotation();
- String _identifier = _annotation.getIdentifier();
- boolean _equals = _canonicalName.equals(_identifier);
+ boolean _equals = DomainKey.class.getCanonicalName().equals(annotationRefs.getAnnotation().getIdentifier());
+ if (_equals) {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ public boolean isOnKanbanCard(final OperationExtensions.OperationInfo info) {
+ if (((info != null) && (info.getField() != null))) {
+ EList<JvmAnnotationReference> _annotations = info.getField().getAnnotations();
+ for (final JvmAnnotationReference annotationRefs : _annotations) {
+ boolean _equals = OnKanbanCard.class.getCanonicalName().equals(annotationRefs.getAnnotation().getIdentifier());
if (_equals) {
return true;
}
@@ -1086,23 +883,10 @@
}
public boolean isDomainDescription(final OperationExtensions.OperationInfo info) {
- boolean _and = false;
- boolean _notEquals = (!Objects.equal(info, null));
- if (!_notEquals) {
- _and = false;
- } else {
- JvmField _field = info.getField();
- boolean _notEquals_1 = (!Objects.equal(_field, null));
- _and = _notEquals_1;
- }
- if (_and) {
- JvmField _field_1 = info.getField();
- EList<JvmAnnotationReference> _annotations = _field_1.getAnnotations();
+ if (((info != null) && (info.getField() != null))) {
+ EList<JvmAnnotationReference> _annotations = info.getField().getAnnotations();
for (final JvmAnnotationReference annotationRefs : _annotations) {
- String _canonicalName = DomainDescription.class.getCanonicalName();
- JvmAnnotationType _annotation = annotationRefs.getAnnotation();
- String _identifier = _annotation.getIdentifier();
- boolean _equals = _canonicalName.equals(_identifier);
+ boolean _equals = DomainDescription.class.getCanonicalName().equals(annotationRefs.getAnnotation().getIdentifier());
if (_equals) {
return true;
}
@@ -1112,34 +896,24 @@
}
public boolean isValidationConstraint(final OperationExtensions.OperationInfo info) {
- boolean _and = false;
- boolean _notEquals = (!Objects.equal(info, null));
- if (!_notEquals) {
- _and = false;
- } else {
- JvmField _field = info.getField();
- boolean _notEquals_1 = (!Objects.equal(_field, null));
- _and = _notEquals_1;
- }
- if (_and) {
- JvmField _field_1 = info.getField();
- EList<JvmAnnotationReference> _annotations = _field_1.getAnnotations();
+ if (((info != null) && (info.getField() != null))) {
+ EList<JvmAnnotationReference> _annotations = info.getField().getAnnotations();
for (final JvmAnnotationReference annotationRefs : _annotations) {
- boolean _and_1 = false;
- JvmAnnotationType _annotation = annotationRefs.getAnnotation();
- String _identifier = _annotation.getIdentifier();
- boolean _notEquals_2 = (!Objects.equal(_identifier, null));
- if (!_notEquals_2) {
- _and_1 = false;
- } else {
- JvmAnnotationType _annotation_1 = annotationRefs.getAnnotation();
- String _identifier_1 = _annotation_1.getIdentifier();
- String _canonicalName = Constraint.class.getCanonicalName();
- String _lowerCase = _canonicalName.toLowerCase();
- boolean _startsWith = _identifier_1.startsWith(_lowerCase);
- _and_1 = _startsWith;
+ if (((annotationRefs.getAnnotation().getIdentifier() != null) &&
+ annotationRefs.getAnnotation().getIdentifier().equals(Valid.class.getCanonicalName()))) {
+ return true;
}
- if (_and_1) {
+ }
+ }
+ return false;
+ }
+
+ public boolean isUniqueEntry(final OperationExtensions.OperationInfo info) {
+ if (((info != null) && (info.getField() != null))) {
+ EList<JvmAnnotationReference> _annotations = info.getField().getAnnotations();
+ for (final JvmAnnotationReference annotationRefs : _annotations) {
+ if (((annotationRefs.getAnnotation().getIdentifier() != null) &&
+ annotationRefs.getAnnotation().getIdentifier().equals(UniqueEntry.class.getCanonicalName()))) {
return true;
}
}
@@ -1148,23 +922,10 @@
}
public boolean isIndex(final OperationExtensions.OperationInfo info) {
- boolean _and = false;
- boolean _notEquals = (!Objects.equal(info, null));
- if (!_notEquals) {
- _and = false;
- } else {
- JvmField _field = info.getField();
- boolean _notEquals_1 = (!Objects.equal(_field, null));
- _and = _notEquals_1;
- }
- if (_and) {
- JvmField _field_1 = info.getField();
- EList<JvmAnnotationReference> _annotations = _field_1.getAnnotations();
+ if (((info != null) && (info.getField() != null))) {
+ EList<JvmAnnotationReference> _annotations = info.getField().getAnnotations();
for (final JvmAnnotationReference annotationRefs : _annotations) {
- String _canonicalName = DomainKey.class.getCanonicalName();
- JvmAnnotationType _annotation = annotationRefs.getAnnotation();
- String _identifier = _annotation.getIdentifier();
- boolean _equals = _canonicalName.equals(_identifier);
+ boolean _equals = DomainKey.class.getCanonicalName().equals(annotationRefs.getAnnotation().getIdentifier());
if (_equals) {
return true;
}
@@ -1180,40 +941,27 @@
* @return
*/
public boolean isByteArray(final JvmType type) {
- boolean _equals = Objects.equal(type, null);
- if (_equals) {
+ if ((type == null)) {
return false;
}
- boolean _or = false;
- boolean _isArray = this.isArray(type, Byte.class);
- if (_isArray) {
- _or = true;
- } else {
- boolean _isArray_1 = this.isArray(type, Byte.TYPE);
- _or = _isArray_1;
- }
- if (_or) {
+ if ((this.isArray(type, Byte.class) || this.isArray(type, Byte.TYPE))) {
return true;
}
return false;
}
public boolean isArray(final JvmType type, final Class<?> clazz) {
- boolean _equals = Objects.equal(type, null);
- if (_equals) {
+ if ((type == null)) {
return false;
}
String className = clazz.getName();
char _charAt = className.charAt(0);
- boolean _equals_1 = Objects.equal(Character.valueOf(_charAt), "[");
- if (_equals_1) {
- String _canonicalName = clazz.getCanonicalName();
- className = _canonicalName;
+ boolean _equals = Objects.equal(Character.valueOf(_charAt), "[");
+ if (_equals) {
+ className = clazz.getCanonicalName();
}
- String _concat = className.concat("[]");
- className = _concat;
- String _identifier = type.getIdentifier();
- boolean result = className.equals(_identifier);
+ className = className.concat("[]");
+ boolean result = className.equals(type.getIdentifier());
return result;
}
@@ -1223,13 +971,8 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__TEXT);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1238,31 +981,18 @@
public YTypedSuspect createSuggestTextField(final JvmType type, final OperationExtensions.OperationInfo info, final Map<String, OperationExtensions.OperationInfo> opInfoMap) {
YTypedSuspect _xblockexpression = null;
{
- Collection<OperationExtensions.OperationInfo> _values = opInfoMap.values();
- final OperationExtensions.OperationInfo idAttInfo = this.getToIdInfo(_values);
- boolean _equals = Objects.equal(idAttInfo, null);
- if (_equals) {
+ final OperationExtensions.OperationInfo idAttInfo = this.getToIdInfo(opInfoMap.values());
+ if ((idAttInfo == null)) {
return this.createTextField(type, info);
}
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__SUGGEST_TEXT);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = this.beanType.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = this.beanType.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
- EMap<String, String> _properties = suspect.getProperties();
- String _name = info.getName();
- _properties.put(ILayoutingStrategy.PROPERTY__ITEM_CAPTION, _name);
- EMap<String, String> _properties_1 = suspect.getProperties();
- String _name_1 = info.getName();
- _properties_1.put(ILayoutingStrategy.PROPERTY__ITEM_FILTER, _name_1);
- EMap<String, String> _properties_2 = suspect.getProperties();
- String _name_2 = idAttInfo.getName();
- _properties_2.put(ILayoutingStrategy.PROPERTY__ITEM_UUID, _name_2);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), this.beanType.getQualifiedName()));
+ suspect.setTypeQualifiedName(this.beanType.getQualifiedName());
+ suspect.getProperties().put(ILayoutingStrategy.PROPERTY__ITEM_CAPTION, info.getName());
+ suspect.getProperties().put(ILayoutingStrategy.PROPERTY__ITEM_FILTER, info.getName());
+ suspect.getProperties().put(ILayoutingStrategy.PROPERTY__ITEM_UUID, idAttInfo.getName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1273,17 +1003,8 @@
*/
public OperationExtensions.OperationInfo getToIdInfo(final Collection<OperationExtensions.OperationInfo> infos) {
for (final OperationExtensions.OperationInfo info : infos) {
- boolean _or = false;
- String _name = info.getName();
- boolean _equals = _name.equals("id");
- if (_equals) {
- _or = true;
- } else {
- String _name_1 = info.getName();
- boolean _equals_1 = _name_1.equals("uuid");
- _or = _equals_1;
- }
- if (_or) {
+ boolean _isIdOrUUID = info.isIdOrUUID();
+ if (_isIdOrUUID) {
return info;
}
}
@@ -1296,13 +1017,8 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__TEXTAREA);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1314,13 +1030,8 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__DECIMAL);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1332,13 +1043,8 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__NUMBER);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1350,13 +1056,8 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__BOOLEAN);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1368,13 +1069,8 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__DATE);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1386,13 +1082,8 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__IMAGE_PICKER);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1404,13 +1095,8 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__ENUM_COMBO);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
boolean _isReadonly = info.isReadonly();
if (_isReadonly) {
EList<String> _tags_1 = suspect.getTags();
@@ -1428,8 +1114,7 @@
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__ORGANIZATION_COMBO);
suspect.setType(String.class);
- String _name = String.class.getName();
- suspect.setTypeQualifiedName(_name);
+ suspect.setTypeQualifiedName(String.class.getName());
boolean _isReadonly = info.isReadonly();
if (_isReadonly) {
EList<String> _tags_1 = suspect.getTags();
@@ -1447,8 +1132,43 @@
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__PERSPECTIVE_COMBO);
suspect.setType(String.class);
- String _name = String.class.getName();
- suspect.setTypeQualifiedName(_name);
+ suspect.setTypeQualifiedName(String.class.getName());
+ boolean _isReadonly = info.isReadonly();
+ if (_isReadonly) {
+ EList<String> _tags_1 = suspect.getTags();
+ _tags_1.add("readonly");
+ }
+ _xblockexpression = suspect;
+ }
+ return _xblockexpression;
+ }
+
+ public YTypedSuspect createThemeComboBox(final JvmType type, final OperationExtensions.OperationInfo info) {
+ YTypedSuspect _xblockexpression = null;
+ {
+ final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
+ EList<String> _tags = suspect.getTags();
+ _tags.add(ILayoutingStrategy.TAG__THEME_COMBO);
+ suspect.setType(String.class);
+ suspect.setTypeQualifiedName(String.class.getName());
+ boolean _isReadonly = info.isReadonly();
+ if (_isReadonly) {
+ EList<String> _tags_1 = suspect.getTags();
+ _tags_1.add("readonly");
+ }
+ _xblockexpression = suspect;
+ }
+ return _xblockexpression;
+ }
+
+ public YTypedSuspect createPrintServiceComboBox(final JvmType type, final OperationExtensions.OperationInfo info) {
+ YTypedSuspect _xblockexpression = null;
+ {
+ final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
+ EList<String> _tags = suspect.getTags();
+ _tags.add(ILayoutingStrategy.TAG__PRINTSERVICE_COMBO);
+ suspect.setType(String.class);
+ suspect.setTypeQualifiedName(String.class.getName());
boolean _isReadonly = info.isReadonly();
if (_isReadonly) {
EList<String> _tags_1 = suspect.getTags();
@@ -1465,19 +1185,14 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__ENUM_OPTIONS);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
StringConcatenation _builder = new StringConcatenation();
String _generateId = this._autowireUtil.generateId(this.uiLayout);
- _builder.append(_generateId, "");
+ _builder.append(_generateId);
_builder.append(".");
String _name = info.getName();
- _builder.append(_name, "");
+ _builder.append(_name);
suspect.setId(_builder.toString());
boolean _isReadonly = info.isReadonly();
if (_isReadonly) {
@@ -1492,45 +1207,35 @@
public YTypedSuspect createBeanReferenceField(final JvmType type, final OperationExtensions.OperationInfo info) {
YTypedSuspect _xblockexpression = null;
{
- final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- Class<?> _type = suspect.getType();
- String captionProperty = BeanHelper.findCaptionProperty(_type);
- Class<?> _type_1 = suspect.getType();
- String captionDescription = BeanHelper.findDescriptionProperty(_type_1);
- boolean _or = false;
- boolean _notEquals = (!Objects.equal(captionProperty, null));
- if (_notEquals) {
- _or = true;
- } else {
- boolean _notEquals_1 = (!Objects.equal(captionDescription, null));
- _or = _notEquals_1;
- }
- if (_or) {
+ YTypedSuspect suspect = null;
+ Class<?> suspectType = this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName());
+ String captionProperty = BeanHelper.findCaptionProperty(suspectType);
+ String captionDescription = BeanHelper.findDescriptionProperty(suspectType);
+ if (((captionProperty != null) || (captionDescription != null))) {
+ suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
+ suspect.setType(suspectType);
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__BEAN_REFERENCE);
StringConcatenation _builder = new StringConcatenation();
String _generateId = this._autowireUtil.generateId(this.uiLayout);
- _builder.append(_generateId, "");
+ _builder.append(_generateId);
_builder.append(".");
String _name = info.getName();
- _builder.append(_name, "");
+ _builder.append(_name);
suspect.setId(_builder.toString());
boolean _isReadonly = info.isReadonly();
if (_isReadonly) {
EList<String> _tags_1 = suspect.getTags();
_tags_1.add("readonly");
}
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
- EMap<String, String> _properties = suspect.getProperties();
- _properties.put(ILayoutingStrategy.PROPERTY__ITEM_CAPTION, captionProperty);
- EMap<String, String> _properties_1 = suspect.getProperties();
- _properties_1.put(ILayoutingStrategy.PROPERTY__ITEM_DESCRIPTION, captionDescription);
+ boolean _hasAnnotation = info.hasAnnotation(FilterDepth.class);
+ if (_hasAnnotation) {
+ final int depth = this._autowireUtil.toFilterDepth(info.getField());
+ suspect.getProperties().put(ILayoutingStrategy.PROPERTY__FILTER_DEPTH, Integer.toString(depth));
+ }
+ suspect.setTypeQualifiedName(type.getQualifiedName());
+ suspect.getProperties().put(ILayoutingStrategy.PROPERTY__ITEM_CAPTION, captionProperty);
+ suspect.getProperties().put(ILayoutingStrategy.PROPERTY__ITEM_DESCRIPTION, captionDescription);
}
_xblockexpression = suspect;
}
@@ -1549,97 +1254,65 @@
YCollectionSuspect _xblockexpression = null;
{
final YCollectionSuspect suspect = YECviewFactory.eINSTANCE.createYCollectionSuspect();
- JvmOperation _getter = info.getGetter();
- JvmTypeReference _returnType = _getter.getReturnType();
+ JvmTypeReference _returnType = info.getGetter().getReturnType();
final JvmParameterizedTypeReference collectionType = ((JvmParameterizedTypeReference) _returnType);
- EList<JvmTypeReference> _arguments = collectionType.getArguments();
- final JvmTypeReference typeInCollection = _arguments.get(0);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- JvmType _type = typeInCollection.getType();
- String _qualifiedName = _type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
+ final JvmTypeReference typeInCollection = collectionType.getArguments().get(0);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), typeInCollection.getType().getQualifiedName()));
EList<String> _tags = suspect.getTags();
_tags.add(tag);
- JvmType _type_1 = typeInCollection.getType();
- String _qualifiedName_1 = _type_1.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
- JvmType _type_2 = typeInCollection.getType();
- if ((_type_2 instanceof JvmDeclaredType)) {
- JvmType _type_3 = typeInCollection.getType();
- final JvmDeclaredType castedType = ((JvmDeclaredType) _type_3);
+ suspect.setTypeQualifiedName(typeInCollection.getType().getQualifiedName());
+ JvmType _type = typeInCollection.getType();
+ if ((_type instanceof JvmDeclaredType)) {
+ JvmType _type_1 = typeInCollection.getType();
+ final JvmDeclaredType castedType = ((JvmDeclaredType) _type_1);
final Map<String, List<AutowireUtil.Pair>> propMap = this._autowireUtil.toFieldProperties(castedType);
final Map<String, OperationExtensions.OperationInfo> opInfoMap = OperationExtensions.getOperationInfos(castedType);
final LinkedHashMap<String, OperationExtensions.OperationInfo> sortedOpInfoMap = this.createSortedOpInfoMapForCollections(opInfoMap);
- Collection<OperationExtensions.OperationInfo> _values = sortedOpInfoMap.values();
- final Consumer<OperationExtensions.OperationInfo> _function = new Consumer<OperationExtensions.OperationInfo>() {
- public void accept(final OperationExtensions.OperationInfo it) {
- JvmOperation _getter = it.getGetter();
- JvmTypeReference _returnType = _getter.getReturnType();
- JvmType detailType = _returnType.getType();
- YColumnInfo columnInfo = null;
- final boolean isPrimitive = (detailType instanceof JvmPrimitiveType);
- boolean _isDomainReference = AutowireHelper.this._typeHelper.isDomainReference(it);
- if (_isDomainReference) {
- Map<String, JvmTypeProperties.Info> _operationInfos = JvmTypeProperties.getOperationInfos(((JvmDeclaredType) detailType));
- Collection<JvmTypeProperties.Info> _values = _operationInfos.values();
- for (final JvmTypeProperties.Info nestedInfo : _values) {
- boolean _hasAnnotation = nestedInfo.hasAnnotation(DomainKey.class);
- if (_hasAnnotation) {
- final Map<String, List<AutowireUtil.Pair>> nestPropMap = AutowireHelper.this._autowireUtil.toFieldProperties(((JvmDeclaredType) detailType));
- JvmType _type = nestedInfo.getType();
- YColumnInfo _createYColumnInfo = AutowireHelper.this.createYColumnInfo(_type);
- columnInfo = _createYColumnInfo;
- JvmField _field = it.getField();
- JvmTypeReference _type_1 = _field.getType();
- String _simpleName = _type_1.getSimpleName();
- String _plus = (_simpleName + ".");
- String _attributePath = nestedInfo.getAttributePath();
- String _plus_1 = (_plus + _attributePath);
- columnInfo.setName(_plus_1);
- String _name = nestedInfo.getName();
- List<AutowireUtil.Pair> propList = nestPropMap.get(_name);
- AutowireHelper.this.setYColumnInfoProperties(columnInfo, propList);
- }
+ final Consumer<OperationExtensions.OperationInfo> _function = (OperationExtensions.OperationInfo it) -> {
+ JvmType detailType = it.getGetter().getReturnType().getType();
+ YColumnInfo columnInfo = null;
+ final boolean isPrimitive = (detailType instanceof JvmPrimitiveType);
+ boolean _isDomainReference = this._typeHelper.isDomainReference(it);
+ if (_isDomainReference) {
+ Collection<JvmTypeProperties.Info> _values = JvmTypeProperties.getOperationInfos(((JvmDeclaredType) detailType)).values();
+ for (final JvmTypeProperties.Info nestedInfo : _values) {
+ boolean _hasAnnotation = nestedInfo.hasAnnotation(DomainKey.class);
+ if (_hasAnnotation) {
+ final Map<String, List<AutowireUtil.Pair>> nestPropMap = this._autowireUtil.toFieldProperties(((JvmDeclaredType) detailType));
+ columnInfo = this.createYColumnInfo(nestedInfo.getType());
+ String _simpleName = it.getField().getSimpleName();
+ String _plus = (_simpleName + ".");
+ String _attributePath = nestedInfo.getAttributePath();
+ String _plus_1 = (_plus + _attributePath);
+ columnInfo.setName(_plus_1);
+ List<AutowireUtil.Pair> propList = nestPropMap.get(nestedInfo.getName());
+ this.setYColumnInfoProperties(columnInfo, propList);
}
- } else {
- JvmField _field_1 = it.getField();
- JvmTypeReference _type_2 = _field_1.getType();
- JvmType objectType = _type_2.getType();
+ }
+ } else {
+ if ((((!it.isIdOrUUID()) && (!it.isVersion())) && (!it.isDirtyMark()))) {
+ JvmType objectType = it.getField().getType().getType();
if (isPrimitive) {
- JvmField _field_2 = it.getField();
- JvmTypeReference _type_3 = _field_2.getType();
- JvmType _type_4 = _type_3.getType();
- final String primitiveTypeName = _type_4.getQualifiedName();
+ final String primitiveTypeName = it.getField().getType().getType().getQualifiedName();
JvmVoid _createJvmVoid = TypesFactory.eINSTANCE.createJvmVoid();
final InternalEObject proxy = ((InternalEObject) _createJvmVoid);
- String _objectProxy = AutowireHelper.this.toObjectProxy(primitiveTypeName);
- URI _createURI = URI.createURI(_objectProxy);
- proxy.eSetProxyURI(_createURI);
- Resource _eResource = AutowireHelper.this.uiLayout.eResource();
- EObject _resolve = EcoreUtil.resolve(proxy, _eResource);
+ proxy.eSetProxyURI(URI.createURI(this.toObjectProxy(primitiveTypeName)));
+ EObject _resolve = EcoreUtil.resolve(proxy, this.uiLayout.eResource());
objectType = ((JvmType) _resolve);
}
- YColumnInfo _createYColumnInfo_1 = AutowireHelper.this.createYColumnInfo(objectType);
- columnInfo = _createYColumnInfo_1;
- String _name_1 = it.getName();
- columnInfo.setName(_name_1);
- JvmField _field_3 = it.getField();
- String _identifier = _field_3.getIdentifier();
- List<AutowireUtil.Pair> propList_1 = propMap.get(_identifier);
- AutowireHelper.this.setYColumnInfoProperties(columnInfo, propList_1);
- }
- boolean _notEquals = (!Objects.equal(columnInfo, null));
- if (_notEquals) {
- String _name_2 = columnInfo.getName();
- columnInfo.setLabelI18nKey(_name_2);
- EList<YColumnInfo> _columns = suspect.getColumns();
- _columns.add(columnInfo);
+ columnInfo = this.createYColumnInfo(objectType);
+ columnInfo.setName(it.getName());
+ List<AutowireUtil.Pair> propList_1 = propMap.get(it.getField().getIdentifier());
+ this.setYColumnInfoProperties(columnInfo, propList_1);
}
}
+ if ((columnInfo != null)) {
+ columnInfo.setLabelI18nKey(columnInfo.getName());
+ EList<YColumnInfo> _columns = suspect.getColumns();
+ _columns.add(columnInfo);
+ }
};
- _values.forEach(_function);
+ sortedOpInfoMap.values().forEach(_function);
}
_xblockexpression = suspect;
}
@@ -1650,23 +1323,32 @@
* Creates a proxy object
*/
public String toObjectProxy(final String primitiveTypeName) {
- boolean _matched = false;
- if (!_matched) {
- if (Objects.equal(primitiveTypeName, "int")) {
- _matched=true;
- StringConcatenation _builder = new StringConcatenation();
- _builder.append("java:/Objects/java.lang.Integer#java.lang.Integer");
- return _builder.toString();
+ if (primitiveTypeName != null) {
+ switch (primitiveTypeName) {
+ case "int":
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("java:/Objects/java.lang.Integer#java.lang.Integer");
+ return _builder.toString();
+ default:
+ StringConcatenation _builder_1 = new StringConcatenation();
+ _builder_1.append("java:/Objects/java.lang.");
+ String _firstUpper = StringExtensions.toFirstUpper(primitiveTypeName);
+ _builder_1.append(_firstUpper);
+ _builder_1.append("#java.lang.");
+ String _firstUpper_1 = StringExtensions.toFirstUpper(primitiveTypeName);
+ _builder_1.append(_firstUpper_1);
+ return _builder_1.toString();
}
+ } else {
+ StringConcatenation _builder_1 = new StringConcatenation();
+ _builder_1.append("java:/Objects/java.lang.");
+ String _firstUpper = StringExtensions.toFirstUpper(primitiveTypeName);
+ _builder_1.append(_firstUpper);
+ _builder_1.append("#java.lang.");
+ String _firstUpper_1 = StringExtensions.toFirstUpper(primitiveTypeName);
+ _builder_1.append(_firstUpper_1);
+ return _builder_1.toString();
}
- StringConcatenation _builder_1 = new StringConcatenation();
- _builder_1.append("java:/Objects/java.lang.");
- String _firstUpper = StringExtensions.toFirstUpper(primitiveTypeName);
- _builder_1.append(_firstUpper, "");
- _builder_1.append("#java.lang.");
- String _firstUpper_1 = StringExtensions.toFirstUpper(primitiveTypeName);
- _builder_1.append(_firstUpper_1, "");
- return _builder_1.toString();
}
public void createMobileSwitch(final JvmType type, final OperationExtensions.OperationInfo info) {
@@ -1674,8 +1356,7 @@
boolean _isReadonly = info.isReadonly();
boolean _not = (!_isReadonly);
yField.setInitialEnabled(_not);
- String _name = info.getName();
- yField.setLabel(_name);
+ yField.setLabel(info.getName());
this.layouter.add(yField);
this.createBinding(yField, info, type, "value");
}
@@ -1696,17 +1377,13 @@
} else {
String _qualifiedName = type.getQualifiedName();
String _plus = ("RichTextFields need to be bound to String or byte[]. " + _qualifiedName);
- String _plus_1 = (_plus + " is not a valid option.");
+ String _plus_1 = (_plus +
+ " is not a valid option.");
throw new IllegalArgumentException(_plus_1);
}
}
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName_1 = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName_1);
- suspect.setType(_loadClass);
- String _qualifiedName_2 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_2);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1718,15 +1395,9 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__MASKED_TEXT_FIELD);
- EMap<String, String> _properties = suspect.getProperties();
- _properties.put(ILayoutingStrategy.PROPERTY_MASK, mask);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.getProperties().put(ILayoutingStrategy.PROPERTY_MASK, mask);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1738,15 +1409,9 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__MASKED_DECIMAL_FIELD);
- EMap<String, String> _properties = suspect.getProperties();
- _properties.put(ILayoutingStrategy.PROPERTY_MASK, mask);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.getProperties().put(ILayoutingStrategy.PROPERTY_MASK, mask);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1766,13 +1431,8 @@
String _plus_1 = (_plus + " is not a valid option.");
throw new IllegalArgumentException(_plus_1);
}
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName_1 = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName_1);
- suspect.setType(_loadClass);
- String _qualifiedName_2 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_2);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1784,13 +1444,8 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__BLOB);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1802,13 +1457,8 @@
final YTypedSuspect suspect = YECviewFactory.eINSTANCE.createYTypedSuspect();
EList<String> _tags = suspect.getTags();
_tags.add(ILayoutingStrategy.TAG__DECIMAL);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = type.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- suspect.setType(_loadClass);
- String _qualifiedName_1 = type.getQualifiedName();
- suspect.setTypeQualifiedName(_qualifiedName_1);
+ suspect.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), type.getQualifiedName()));
+ suspect.setTypeQualifiedName(type.getQualifiedName());
_xblockexpression = suspect;
}
return _xblockexpression;
@@ -1822,38 +1472,15 @@
final UiBindingEndpointAssignment uiModelEndpoint = ((UiBindingEndpointAssignment) _autoWireSource);
final YValueBindingEndpoint yModelEndpoint = this.computer.createValueBindingEndpoint(uiModelEndpoint);
final YDetailValueBindingEndpoint detailValueEndpoint = yModelEndpoint.createDetailValueEndpoint();
- String _name = info.getName();
- detailValueEndpoint.setPropertyPath(_name);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = this.beanType.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- detailValueEndpoint.setType(_loadClass);
+ detailValueEndpoint.setPropertyPath(info.getName());
+ detailValueEndpoint.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), this.beanType.getQualifiedName()));
final YECViewModelValueBindingEndpoint yFieldEndpoint = BindingFactory.eINSTANCE.createYECViewModelValueBindingEndpoint();
yFieldEndpoint.setElement(yField);
yFieldEndpoint.setPropertyPath(fieldProperty);
- String _qualifiedName_1 = this.beanType.getQualifiedName();
- yFieldEndpoint.setTypeQualifiedName(_qualifiedName_1);
- Resource _eResource_1 = this.uiLayout.eResource();
- ResourceSet _resourceSet_1 = _eResource_1.getResourceSet();
- String _qualifiedName_2 = this.beanType.getQualifiedName();
- Class<?> _loadClass_1 = this.computer.loadClass(_resourceSet_1, _qualifiedName_2);
- yFieldEndpoint.setType(_loadClass_1);
- boolean _and = false;
- Class<?> _type = yFieldEndpoint.getType();
- boolean _notEquals = (!Objects.equal(_type, null));
- if (!_notEquals) {
- _and = false;
- } else {
- Class<?> _type_1 = yFieldEndpoint.getType();
- boolean _isAssignableFrom = _type_1.isAssignableFrom(EObject.class);
- _and = _isAssignableFrom;
- }
- if (_and) {
- EClass _eClass = yField.eClass();
- EPackage _ePackage = _eClass.getEPackage();
- String _nsURI = _ePackage.getNsURI();
- yFieldEndpoint.setEmfNsURI(_nsURI);
+ yFieldEndpoint.setTypeQualifiedName(this.beanType.getQualifiedName());
+ yFieldEndpoint.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), this.beanType.getQualifiedName()));
+ if (((yFieldEndpoint.getType() != null) && yFieldEndpoint.getType().isAssignableFrom(EObject.class))) {
+ yFieldEndpoint.setEmfNsURI(yField.eClass().getEPackage().getNsURI());
}
final YValueBinding yBinding = BindingFactory.eINSTANCE.createYValueBinding();
yBinding.setTargetEndpoint(yFieldEndpoint);
@@ -1867,54 +1494,74 @@
_xifexpression = YBindingUpdateStrategy.UPDATE;
}
yBinding.setTargetToModelStrategy(_xifexpression);
- YView _view = this.yLayout.getView();
- YBindingSet _orCreateBindingSet = _view.getOrCreateBindingSet();
- EList<YBinding> _bindings = _orCreateBindingSet.getBindings();
+ EList<YBinding> _bindings = this.yLayout.getView().getOrCreateBindingSet().getBindings();
_bindings.add(yBinding);
- String _propertyPath = detailValueEndpoint.getPropertyPath();
- yField.setLabelI18nKey(_propertyPath);
+ yField.setLabelI18nKey(detailValueEndpoint.getPropertyPath());
}
/**
* Create the bindings and install at the view
*/
- public void createBinding(final YSuspect suspect, final String propertyPath, final JvmType type, final String fieldProperty) {
+ public void createModelValueBinding(final YSuspect suspect, final String propertyPath, final JvmType type, final String fieldProperty, final JvmType parentType) {
final YBeanSlot subTypeBeanSlot = this.findSubTypeBeanSlot(suspect);
YValueBindingEndpoint endpoint = null;
String path = "";
- boolean _equals = Objects.equal(subTypeBeanSlot, null);
- if (_equals) {
+ if ((subTypeBeanSlot == null)) {
UiBindingExpression _autoWireSource = this.uiLayout.getAutoWireSource();
final UiBindingEndpointAssignment uiModelEndpoint = ((UiBindingEndpointAssignment) _autoWireSource);
final YValueBindingEndpoint yModelEndpoint = this.computer.createValueBindingEndpoint(uiModelEndpoint);
final YDetailValueBindingEndpoint detailValueEndpoint = yModelEndpoint.createDetailValueEndpoint();
detailValueEndpoint.setPropertyPath(propertyPath);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _qualifiedName = this.beanType.getQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _qualifiedName);
- detailValueEndpoint.setType(_loadClass);
+ detailValueEndpoint.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(),
+ parentType.getQualifiedName()));
endpoint = detailValueEndpoint;
- String _propertyPath = detailValueEndpoint.getPropertyPath();
- path = _propertyPath;
+ path = detailValueEndpoint.getPropertyPath();
} else {
- YBeanSlotValueBindingEndpoint _createBindingEndpoint = subTypeBeanSlot.createBindingEndpoint(propertyPath);
- endpoint = _createBindingEndpoint;
+ endpoint = subTypeBeanSlot.createBindingEndpoint(propertyPath);
path = propertyPath;
}
- EList<YBindingEndpoint> _valueBindingEndpoints = suspect.getValueBindingEndpoints();
- _valueBindingEndpoints.add(endpoint);
+ suspect.getValueBindingEndpoints().add(endpoint);
suspect.setLabelI18nKey(path);
suspect.setLabel(propertyPath);
}
/**
+ * Creates a binding which points to the container of the property
+ */
+ public void createModelValueContainerBinding(final YSuspect suspect, final String propertyPath, final JvmType type, final String property) {
+ String fieldProperty = property;
+ boolean _contains = fieldProperty.contains(".");
+ if (_contains) {
+ fieldProperty = fieldProperty.substring(0, fieldProperty.lastIndexOf("."));
+ } else {
+ fieldProperty = null;
+ }
+ final YBeanSlot subTypeBeanSlot = this.findSubTypeBeanSlot(suspect);
+ YValueBindingEndpoint endpoint = null;
+ if ((subTypeBeanSlot == null)) {
+ UiBindingExpression _autoWireSource = this.uiLayout.getAutoWireSource();
+ final UiBindingEndpointAssignment uiModelEndpoint = ((UiBindingEndpointAssignment) _autoWireSource);
+ final YValueBindingEndpoint yModelEndpoint = this.computer.createValueBindingEndpoint(uiModelEndpoint);
+ endpoint = yModelEndpoint;
+ if ((fieldProperty != null)) {
+ final YDetailValueBindingEndpoint detailValueEndpoint = yModelEndpoint.createDetailValueEndpoint();
+ detailValueEndpoint.setPropertyPath(propertyPath);
+ detailValueEndpoint.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(),
+ this.beanType.getQualifiedName()));
+ endpoint = detailValueEndpoint;
+ }
+ } else {
+ endpoint = subTypeBeanSlot.createBindingEndpoint(propertyPath);
+ }
+ suspect.setContainerValueBindingEndpoint(endpoint);
+ }
+
+ /**
* Checks if the suspect is contained in an YSubTypeSuspect. <br>
* If so, then the detail beanslot of the YSubTypeSuspect is returned. Null otherwise.
*/
public YBeanSlot findSubTypeBeanSlot(final YSuspect suspect) {
- boolean _equals = Objects.equal(suspect, null);
- if (_equals) {
+ if ((suspect == null)) {
return null;
}
if ((suspect instanceof YSubTypeSuspect)) {
@@ -1931,16 +1578,18 @@
* Create the bindings and install at the view
*/
public void createModelListBinding(final YSuspect suspect, final OperationExtensions.OperationInfo info, final JvmType type, final String fieldProperty) {
- UiBindingExpression _autoWireSource = this.uiLayout.getAutoWireSource();
- final UiBindingEndpointAssignment uiModelEndpoint = ((UiBindingEndpointAssignment) _autoWireSource);
- String _name = info.getName();
- final YListBindingEndpoint yModelEndpoint = this.createListBindingEndpointWithNested(uiModelEndpoint, _name);
- EList<YBindingEndpoint> _valueBindingEndpoints = suspect.getValueBindingEndpoints();
- _valueBindingEndpoints.add(yModelEndpoint);
- String _name_1 = info.getName();
- suspect.setLabelI18nKey(_name_1);
- String _name_2 = info.getName();
- suspect.setLabel(_name_2);
+ final YBeanSlot subTypeBeanSlot = this.findSubTypeBeanSlot(suspect);
+ YListBindingEndpoint endpoint = null;
+ if ((subTypeBeanSlot == null)) {
+ UiBindingExpression _autoWireSource = this.uiLayout.getAutoWireSource();
+ final UiBindingEndpointAssignment uiModelEndpoint = ((UiBindingEndpointAssignment) _autoWireSource);
+ endpoint = this.createListBindingEndpointWithNested(uiModelEndpoint, info.getName());
+ } else {
+ endpoint = subTypeBeanSlot.createListBindingEndpoint(info.getName(), subTypeBeanSlot.getValueType());
+ }
+ suspect.getValueBindingEndpoints().add(endpoint);
+ suspect.setLabelI18nKey(info.getName());
+ suspect.setLabel(info.getName());
}
/**
@@ -1950,8 +1599,7 @@
* So we need to access the children collection of the beanslot by a nested property path: <code>beanslot.father.children</code>
*/
public YListBindingEndpoint createListBindingEndpointWithNested(final UiBindingEndpointAssignment epDef, final String attributePath) {
- boolean _equals = Objects.equal(epDef, null);
- if (_equals) {
+ if ((epDef == null)) {
return null;
}
YListBindingEndpoint result = null;
@@ -1964,36 +1612,23 @@
final YBeanSlot yBeanSlot = this.computer.<YBeanSlot>associatedUi(uiBeanSlot);
final YBeanSlotListBindingEndpoint ep = this.factory.createBeanSlotListBindingEndpoint();
ep.setBeanSlot(yBeanSlot);
- String _nestedCollectionPath = this.toNestedCollectionPath(info, attributePath);
- ep.setAttributePath(_nestedCollectionPath);
+ ep.setAttributePath(this.toNestedCollectionPath(info, attributePath));
result = ep;
} else {
EObject _bindingRoot_2 = info.getBindingRoot();
if ((_bindingRoot_2 instanceof UiEmbeddable)) {
- EObject _bindingRoot_3 = info.getBindingRoot();
- final YEmbeddable yElement = this.computer.<YEmbeddable>associatedUi(_bindingRoot_3);
+ final YEmbeddable yElement = this.computer.<YEmbeddable>associatedUi(info.getBindingRoot());
final YECViewModelListBindingEndpoint ep_1 = this.factory.createECViewModelListBindingEndpoint();
ep_1.setElement(yElement);
- String _nestedCollectionPath_1 = this.toNestedCollectionPath(info, attributePath);
- ep_1.setPropertyPath(_nestedCollectionPath_1);
+ ep_1.setPropertyPath(this.toNestedCollectionPath(info, attributePath));
JvmType _typeForBinding = info.getTypeForBinding();
- boolean _notEquals = (!Objects.equal(_typeForBinding, null));
- if (_notEquals) {
- JvmType _typeForBinding_1 = info.getTypeForBinding();
- String _qualifiedName = _typeForBinding_1.getQualifiedName();
- ep_1.setTypeQualifiedName(_qualifiedName);
- Resource _eResource = epDef.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _typeQualifiedName = ep_1.getTypeQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _typeQualifiedName);
- ep_1.setType(_loadClass);
+ boolean _tripleNotEquals = (_typeForBinding != null);
+ if (_tripleNotEquals) {
+ ep_1.setTypeQualifiedName(info.getTypeForBinding().getQualifiedName());
+ ep_1.setType(this.computer.loadClass(epDef.eResource().getResourceSet(), ep_1.getTypeQualifiedName()));
}
- boolean _notEquals_1 = (!Objects.equal(yElement, null));
- if (_notEquals_1) {
- EClass _eClass = yElement.eClass();
- EPackage _ePackage = _eClass.getEPackage();
- String _nsURI = _ePackage.getNsURI();
- ep_1.setEmfNsURI(_nsURI);
+ if ((yElement != null)) {
+ ep_1.setEmfNsURI(yElement.eClass().getEPackage().getNsURI());
}
result = ep_1;
}
@@ -2005,14 +1640,10 @@
String _xblockexpression = null;
{
final StringBuilder b = new StringBuilder();
- StringBuilder _path = info.getPath();
- String _string = _path.toString();
- boolean _isNullOrEmpty = StringExtensions.isNullOrEmpty(_string);
+ boolean _isNullOrEmpty = StringExtensions.isNullOrEmpty(info.getPath().toString());
boolean _not = (!_isNullOrEmpty);
if (_not) {
- StringBuilder _path_1 = info.getPath();
- String _string_1 = _path_1.toString();
- b.append(_string_1);
+ b.append(info.getPath().toString());
}
boolean _isNullOrEmpty_1 = StringExtensions.isNullOrEmpty(attributePath);
boolean _not_1 = (!_isNullOrEmpty_1);
@@ -2037,13 +1668,8 @@
YColumnInfo _xblockexpression = null;
{
final YColumnInfo columnInfo = YECviewFactory.eINSTANCE.createYColumnInfo();
- String _qualifiedName = type.getQualifiedName();
- columnInfo.setTypeQualifiedName(_qualifiedName);
- Resource _eResource = this.uiLayout.eResource();
- ResourceSet _resourceSet = _eResource.getResourceSet();
- String _typeQualifiedName = columnInfo.getTypeQualifiedName();
- Class<?> _loadClass = this.computer.loadClass(_resourceSet, _typeQualifiedName);
- columnInfo.setType(_loadClass);
+ columnInfo.setTypeQualifiedName(type.getQualifiedName());
+ columnInfo.setType(this.computer.loadClass(this.uiLayout.eResource().getResourceSet(), columnInfo.getTypeQualifiedName()));
_xblockexpression = columnInfo;
}
return _xblockexpression;
@@ -2054,8 +1680,7 @@
*/
public void setYColumnInfoProperties(final YColumnInfo columnInfo, final List<AutowireUtil.Pair> propList) {
EMap<String, String> properties = columnInfo.getProperties();
- boolean _notEquals = (!Objects.equal(propList, null));
- if (_notEquals) {
+ if ((propList != null)) {
for (final AutowireUtil.Pair prop : propList) {
properties.put(prop.key, prop.value);
}
diff --git a/org.eclipse.osbp.autowireHelper/xtend-gen/org/eclipse/osbp/autowirehelper/utils/AutowireUtil.java b/org.eclipse.osbp.autowireHelper/xtend-gen/org/eclipse/osbp/autowirehelper/utils/AutowireUtil.java
index f5d89bb..734d49d 100644
--- a/org.eclipse.osbp.autowireHelper/xtend-gen/org/eclipse/osbp/autowirehelper/utils/AutowireUtil.java
+++ b/org.eclipse.osbp.autowireHelper/xtend-gen/org/eclipse/osbp/autowirehelper/utils/AutowireUtil.java
@@ -23,10 +23,8 @@
import org.apache.commons.lang.StringEscapeUtils;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.osbp.dsl.semantic.common.types.LAttribute;
import org.eclipse.osbp.dsl.semantic.common.types.LDataType;
import org.eclipse.osbp.dsl.semantic.common.types.LKeyAndValue;
-import org.eclipse.osbp.dsl.semantic.common.types.LReference;
import org.eclipse.osbp.dsl.semantic.common.types.LScalarType;
import org.eclipse.osbp.dsl.semantic.dto.LDto;
import org.eclipse.osbp.dsl.semantic.dto.LDtoAbstractAttribute;
@@ -38,23 +36,22 @@
import org.eclipse.osbp.ecview.dsl.extensions.OperationExtensions;
import org.eclipse.osbp.ecview.dsl.extensions.TypeHelper;
import org.eclipse.osbp.ecview.semantic.uimodel.UiBeanSlot;
-import org.eclipse.osbp.ecview.semantic.uimodel.UiBindingExpression;
import org.eclipse.osbp.ecview.semantic.uimodel.UiLayout;
import org.eclipse.osbp.ecview.semantic.uimodel.UiModel;
import org.eclipse.osbp.ecview.semantic.uimodel.UiView;
import org.eclipse.osbp.ecview.semantic.uimodel.impl.UiViewImpl;
import org.eclipse.osbp.runtime.common.annotations.DomainDescription;
import org.eclipse.osbp.runtime.common.annotations.DomainKey;
+import org.eclipse.osbp.runtime.common.annotations.FilterDepth;
import org.eclipse.osbp.runtime.common.annotations.Properties;
import org.eclipse.osbp.utils.common.EntityUtils;
import org.eclipse.xtend2.lib.StringConcatenation;
import org.eclipse.xtext.common.types.JvmAnnotationAnnotationValue;
import org.eclipse.xtext.common.types.JvmAnnotationReference;
-import org.eclipse.xtext.common.types.JvmAnnotationType;
import org.eclipse.xtext.common.types.JvmAnnotationValue;
import org.eclipse.xtext.common.types.JvmDeclaredType;
-import org.eclipse.xtext.common.types.JvmFeature;
import org.eclipse.xtext.common.types.JvmField;
+import org.eclipse.xtext.common.types.JvmIntAnnotationValue;
import org.eclipse.xtext.common.types.JvmMember;
import org.eclipse.xtext.common.types.JvmStringAnnotationValue;
import org.eclipse.xtext.common.types.JvmType;
@@ -94,29 +91,26 @@
public String generateId(final UiLayout layout) {
final BindableTypeResolver resolver = new BindableTypeResolver();
- UiBindingExpression _autoWireSource = layout.getAutoWireSource();
- JvmType resolvedType = resolver.resolveType(_autoWireSource);
+ JvmType resolvedType = resolver.resolveType(layout.getAutoWireSource());
String viewName = "";
EObject parent = layout.eContainer();
while ((!(parent instanceof UiModel))) {
{
if ((parent instanceof UiViewImpl)) {
- String _name = ((UiViewImpl) parent).getName();
- viewName = _name;
+ viewName = ((UiViewImpl) parent).getName();
}
- EObject _eContainer = parent.eContainer();
- parent = _eContainer;
+ parent = parent.eContainer();
}
}
UiModel uimodel = ((UiModel) parent);
StringConcatenation _builder = new StringConcatenation();
String _packageName = uimodel.getPackageName();
- _builder.append(_packageName, "");
+ _builder.append(_packageName);
{
boolean _notEquals = (!Objects.equal(viewName, null));
if (_notEquals) {
_builder.append(".");
- _builder.append(viewName, "");
+ _builder.append(viewName);
}
}
{
@@ -124,7 +118,7 @@
if (_notEquals_1) {
_builder.append(".");
String _identifier = resolvedType.getIdentifier();
- _builder.append(_identifier, "");
+ _builder.append(_identifier);
}
}
return _builder.toString();
@@ -133,8 +127,7 @@
public UiView getUiView(final UiLayout layout) {
EObject parent = layout.eContainer();
while ((!(parent instanceof UiViewImpl))) {
- EObject _eContainer = parent.eContainer();
- parent = _eContainer;
+ parent = parent.eContainer();
}
if ((parent instanceof UiViewImpl)) {
return ((UiViewImpl) parent);
@@ -146,14 +139,11 @@
LDto dto = EntityUtils.getDto(type);
boolean _notEquals = (!Objects.equal(dto, null));
if (_notEquals) {
- List<LDtoAbstractAttribute> _attributes = dto.getAttributes();
- final Function1<LDtoAbstractAttribute, Boolean> _function = new Function1<LDtoAbstractAttribute, Boolean>() {
- public Boolean apply(final LDtoAbstractAttribute it) {
- String _name = AutowireUtil.this.toName(it);
- return Boolean.valueOf(Objects.equal(_name, attribute));
- }
+ final Function1<LDtoAbstractAttribute, Boolean> _function = (LDtoAbstractAttribute it) -> {
+ String _name = this.toName(it);
+ return Boolean.valueOf(Objects.equal(_name, attribute));
};
- LDtoAbstractAttribute attr = IterableExtensions.<LDtoAbstractAttribute>findFirst(_attributes, _function);
+ LDtoAbstractAttribute attr = IterableExtensions.<LDtoAbstractAttribute>findFirst(dto.getAttributes(), _function);
boolean _notEquals_1 = (!Objects.equal(attr, null));
if (_notEquals_1) {
LScalarType _datatype = this.toDatatype(attr);
@@ -169,13 +159,11 @@
* Detects all the existing properties of the jvmtype corresponding attribute, the datatype of the attribute and references.
*/
public List<AutowireUtil.Pair> toProperties(final JvmDeclaredType type, final String attributeName) {
- Map<String, List<AutowireUtil.Pair>> _fieldProperties = this.toFieldProperties(type);
- final List<AutowireUtil.Pair> result = _fieldProperties.get(attributeName);
+ final List<AutowireUtil.Pair> result = this.toFieldProperties(type).get(attributeName);
boolean _notEquals = (!Objects.equal(result, null));
if (_notEquals) {
for (final AutowireUtil.Pair prop : result) {
- String _unescapeHtml = StringEscapeUtils.unescapeHtml(prop.value);
- prop.value = _unescapeHtml;
+ prop.value = StringEscapeUtils.unescapeHtml(prop.value);
}
}
List<AutowireUtil.Pair> _xifexpression = null;
@@ -193,87 +181,75 @@
*/
public Map<String, List<AutowireUtil.Pair>> toFieldProperties(final JvmDeclaredType jvmType) {
final Map<String, List<AutowireUtil.Pair>> propMap = CollectionLiterals.<String, List<AutowireUtil.Pair>>newHashMap();
- Iterable<JvmFeature> _allFeatures = jvmType.getAllFeatures();
- Iterable<JvmField> _filter = Iterables.<JvmField>filter(_allFeatures, JvmField.class);
- final Consumer<JvmField> _function = new Consumer<JvmField>() {
- public void accept(final JvmField it) {
- StringConcatenation _builder = new StringConcatenation();
- String _qualifiedName = jvmType.getQualifiedName();
- _builder.append(_qualifiedName, "");
- _builder.append(".");
- String _simpleName = it.getSimpleName();
- _builder.append(_simpleName, "");
- final String attrPropKey = _builder.toString();
- final List<AutowireUtil.Pair> values = CollectionLiterals.<AutowireUtil.Pair>newArrayList();
- propMap.put(attrPropKey, values);
- EList<JvmAnnotationReference> _annotations = it.getAnnotations();
- final Function1<JvmAnnotationReference, Boolean> _function = new Function1<JvmAnnotationReference, Boolean>() {
- public Boolean apply(final JvmAnnotationReference e) {
- JvmAnnotationType _annotation = e.getAnnotation();
- String _identifier = _annotation.getIdentifier();
- String _name = Properties.class.getName();
- final boolean result = _identifier.equals(_name);
- return Boolean.valueOf(result);
- }
+ final Consumer<JvmField> _function = (JvmField it) -> {
+ StringConcatenation _builder = new StringConcatenation();
+ String _qualifiedName = jvmType.getQualifiedName();
+ _builder.append(_qualifiedName);
+ _builder.append(".");
+ String _simpleName = it.getSimpleName();
+ _builder.append(_simpleName);
+ final String attrPropKey = _builder.toString();
+ final List<AutowireUtil.Pair> values = CollectionLiterals.<AutowireUtil.Pair>newArrayList();
+ propMap.put(attrPropKey, values);
+ final Function1<JvmAnnotationReference, Boolean> _function_1 = (JvmAnnotationReference e) -> {
+ final boolean result = e.getAnnotation().getIdentifier().equals(Properties.class.getName());
+ return Boolean.valueOf(result);
+ };
+ final Consumer<JvmAnnotationReference> _function_2 = (JvmAnnotationReference it_1) -> {
+ final JvmAnnotationReference ref = it_1;
+ final Function1<JvmAnnotationValue, JvmAnnotationAnnotationValue> _function_3 = (JvmAnnotationValue it_2) -> {
+ return ((JvmAnnotationAnnotationValue) it_2);
};
- Iterable<JvmAnnotationReference> _filter = IterableExtensions.<JvmAnnotationReference>filter(_annotations, _function);
- final Consumer<JvmAnnotationReference> _function_1 = new Consumer<JvmAnnotationReference>() {
- public void accept(final JvmAnnotationReference it) {
- final JvmAnnotationReference ref = it;
- EList<JvmAnnotationValue> _values = ref.getValues();
- final Function1<JvmAnnotationValue, JvmAnnotationAnnotationValue> _function = new Function1<JvmAnnotationValue, JvmAnnotationAnnotationValue>() {
- public JvmAnnotationAnnotationValue apply(final JvmAnnotationValue it) {
- return ((JvmAnnotationAnnotationValue) it);
- }
- };
- List<JvmAnnotationAnnotationValue> _map = ListExtensions.<JvmAnnotationValue, JvmAnnotationAnnotationValue>map(_values, _function);
- final Consumer<JvmAnnotationAnnotationValue> _function_1 = new Consumer<JvmAnnotationAnnotationValue>() {
- public void accept(final JvmAnnotationAnnotationValue av) {
- EList<JvmAnnotationReference> _values = av.getValues();
- final Consumer<JvmAnnotationReference> _function = new Consumer<JvmAnnotationReference>() {
- public void accept(final JvmAnnotationReference it) {
- EList<JvmAnnotationValue> _values = it.getValues();
- JvmAnnotationValue _get = _values.get(0);
- final JvmStringAnnotationValue keyAn = ((JvmStringAnnotationValue) _get);
- EList<JvmAnnotationValue> _values_1 = it.getValues();
- JvmAnnotationValue _get_1 = _values_1.get(1);
- final JvmStringAnnotationValue valueAn = ((JvmStringAnnotationValue) _get_1);
- EList<String> _values_2 = keyAn.getValues();
- String _get_2 = _values_2.get(0);
- EList<String> _values_3 = valueAn.getValues();
- String _get_3 = _values_3.get(0);
- AutowireUtil.Pair _pair = new AutowireUtil.Pair(_get_2, _get_3);
- values.add(_pair);
- }
- };
- _values.forEach(_function);
- }
- };
- _map.forEach(_function_1);
- }
+ final Consumer<JvmAnnotationAnnotationValue> _function_4 = (JvmAnnotationAnnotationValue av) -> {
+ final Consumer<JvmAnnotationReference> _function_5 = (JvmAnnotationReference it_2) -> {
+ JvmAnnotationValue _get = it_2.getValues().get(0);
+ final JvmStringAnnotationValue keyAn = ((JvmStringAnnotationValue) _get);
+ JvmAnnotationValue _get_1 = it_2.getValues().get(1);
+ final JvmStringAnnotationValue valueAn = ((JvmStringAnnotationValue) _get_1);
+ String _get_2 = keyAn.getValues().get(0);
+ String _get_3 = valueAn.getValues().get(0);
+ AutowireUtil.Pair _pair = new AutowireUtil.Pair(_get_2, _get_3);
+ values.add(_pair);
+ };
+ av.getValues().forEach(_function_5);
};
- _filter.forEach(_function_1);
- }
+ ListExtensions.<JvmAnnotationValue, JvmAnnotationAnnotationValue>map(ref.getValues(), _function_3).forEach(_function_4);
+ };
+ IterableExtensions.<JvmAnnotationReference>filter(it.getAnnotations(), _function_1).forEach(_function_2);
};
- _filter.forEach(_function);
+ Iterables.<JvmField>filter(jvmType.getAllFeatures(), JvmField.class).forEach(_function);
return propMap;
}
/**
+ * Returns the depth of the filter for BeanReferenceFields
+ */
+ public int toFilterDepth(final JvmField field) {
+ final Function1<JvmAnnotationReference, Boolean> _function = (JvmAnnotationReference e) -> {
+ final boolean result = e.getAnnotation().getIdentifier().equals(FilterDepth.class.getName());
+ return Boolean.valueOf(result);
+ };
+ final JvmAnnotationReference ref = IterableExtensions.<JvmAnnotationReference>findFirst(field.getAnnotations(), _function);
+ if ((ref == null)) {
+ return 0;
+ }
+ JvmAnnotationValue _get = ref.getValues().get(0);
+ final JvmIntAnnotationValue depthVal = ((JvmIntAnnotationValue) _get);
+ return (depthVal.getValues().get(0)).intValue();
+ }
+
+ /**
* Detects all the existing properties of the jvmtype corresponding datatype of the attribute.
*/
public LDataType toDataType(final JvmType type, final String attributeName) {
LDto dto = EntityUtils.getDto(type);
boolean _notEquals = (!Objects.equal(dto, null));
if (_notEquals) {
- List<LDtoAbstractAttribute> _attributes = dto.getAttributes();
- final Function1<LDtoAbstractAttribute, Boolean> _function = new Function1<LDtoAbstractAttribute, Boolean>() {
- public Boolean apply(final LDtoAbstractAttribute it) {
- String _name = AutowireUtil.this.toName(it);
- return Boolean.valueOf(Objects.equal(_name, attributeName));
- }
+ final Function1<LDtoAbstractAttribute, Boolean> _function = (LDtoAbstractAttribute it) -> {
+ String _name = this.toName(it);
+ return Boolean.valueOf(Objects.equal(_name, attributeName));
};
- LDtoAbstractAttribute attr = IterableExtensions.<LDtoAbstractAttribute>findFirst(_attributes, _function);
+ LDtoAbstractAttribute attr = IterableExtensions.<LDtoAbstractAttribute>findFirst(dto.getAttributes(), _function);
boolean _notEquals_1 = (!Objects.equal(attr, null));
if (_notEquals_1) {
LScalarType dataType = this.toDatatype(attr);
@@ -300,12 +276,10 @@
public String toName(final LDtoFeature feature) {
if ((feature instanceof LDtoInheritedAttribute)) {
- LAttribute _inheritedFeature = ((LDtoInheritedAttribute)feature).getInheritedFeature();
- return _inheritedFeature.getName();
+ return ((LDtoInheritedAttribute)feature).getInheritedFeature().getName();
} else {
if ((feature instanceof LDtoInheritedReference)) {
- LReference _inheritedFeature_1 = ((LDtoInheritedReference)feature).getInheritedFeature();
- return _inheritedFeature_1.getName();
+ return ((LDtoInheritedReference)feature).getInheritedFeature().getName();
} else {
return feature.getName();
}
@@ -314,8 +288,7 @@
public LScalarType toDatatype(final LDtoAbstractAttribute att) {
if ((att instanceof LDtoInheritedAttribute)) {
- LAttribute _inheritedFeature = ((LDtoInheritedAttribute)att).getInheritedFeature();
- return _inheritedFeature.getType();
+ return ((LDtoInheritedAttribute)att).getInheritedFeature().getType();
} else {
return att.getType();
}
@@ -323,14 +296,11 @@
public boolean isBlob(final JvmType type, final String attribute) {
LDto dto = EntityUtils.getDto(type);
- List<LDtoAbstractAttribute> _attributes = dto.getAttributes();
- final Function1<LDtoAbstractAttribute, Boolean> _function = new Function1<LDtoAbstractAttribute, Boolean>() {
- public Boolean apply(final LDtoAbstractAttribute it) {
- String _name = it.getName();
- return Boolean.valueOf(Objects.equal(_name, attribute));
- }
+ final Function1<LDtoAbstractAttribute, Boolean> _function = (LDtoAbstractAttribute it) -> {
+ String _name = it.getName();
+ return Boolean.valueOf(Objects.equal(_name, attribute));
};
- Iterable<LDtoAbstractAttribute> attrs = IterableExtensions.<LDtoAbstractAttribute>filter(_attributes, _function);
+ Iterable<LDtoAbstractAttribute> attrs = IterableExtensions.<LDtoAbstractAttribute>filter(dto.getAttributes(), _function);
for (final LDtoAbstractAttribute attr : attrs) {
{
LScalarType _type = attr.getType();
@@ -343,29 +313,24 @@
}
public String getEntityName(final UiBeanSlot uiBeanSlot) {
- JvmTypeReference _jvmType = uiBeanSlot.getJvmType();
- JvmType _type = _jvmType.getType();
- LEntity _entityFromDto = EntityUtils.getEntityFromDto(_type);
+ LEntity _entityFromDto = EntityUtils.getEntityFromDto(uiBeanSlot.getJvmType().getType());
final LEntity entity = ((LEntity) _entityFromDto);
String eName = null;
boolean _equals = Objects.equal(entity, null);
if (_equals) {
- JvmTypeReference _jvmType_1 = uiBeanSlot.getJvmType();
- JvmType _type_1 = _jvmType_1.getType();
- boolean _equals_1 = Objects.equal(_type_1, null);
+ JvmType _type = uiBeanSlot.getJvmType().getType();
+ boolean _equals_1 = Objects.equal(_type, null);
if (_equals_1) {
eName = "";
} else {
- JvmTypeReference _jvmType_2 = uiBeanSlot.getJvmType();
- JvmType _type_2 = _jvmType_2.getType();
- boolean _notEquals = (!Objects.equal(_type_2, null));
+ JvmType _type_1 = uiBeanSlot.getJvmType().getType();
+ boolean _notEquals = (!Objects.equal(_type_1, null));
if (_notEquals) {
eName = "";
}
}
} else {
- String _name = entity.getName();
- eName = _name;
+ eName = entity.getName();
}
return eName;
}
@@ -418,35 +383,16 @@
boolean _isDomainReference = this._typeHelper.isDomainReference(info);
if (_isDomainReference) {
boolean _matched = false;
- if (!_matched) {
- if (type instanceof JvmDeclaredType) {
- _matched=true;
- boolean _or = false;
- boolean _isAnnotationOf = this.isAnnotationOf(((JvmDeclaredType) type), DomainKey.class);
- if (_isAnnotationOf) {
- _or = true;
- } else {
- boolean _isAnnotationOf_1 = this.isAnnotationOf(((JvmDeclaredType) type), DomainDescription.class);
- _or = _isAnnotationOf_1;
- }
- if (_or) {
- return true;
- }
+ if (type instanceof JvmDeclaredType) {
+ _matched=true;
+ if ((this.isAnnotationOf(((JvmDeclaredType) type), DomainKey.class) ||
+ this.isAnnotationOf(((JvmDeclaredType) type), DomainDescription.class))) {
+ return true;
}
}
return false;
} else {
- boolean _and = false;
- JvmField _field = info.getField();
- boolean _notEquals = (!Objects.equal(_field, null));
- if (!_notEquals) {
- _and = false;
- } else {
- JvmField _field_1 = info.getField();
- boolean _isCollection = this._typeHelper.isCollection(_field_1);
- _and = _isCollection;
- }
- if (_and) {
+ if (((!Objects.equal(info.getField(), null)) && this._typeHelper.isCollection(info.getField()))) {
return true;
}
}
@@ -465,10 +411,7 @@
for (final JvmMember member : _members) {
EList<JvmAnnotationReference> _annotations = member.getAnnotations();
for (final JvmAnnotationReference annotation : _annotations) {
- JvmAnnotationType _annotation = annotation.getAnnotation();
- String _identifier = _annotation.getIdentifier();
- String _canonicalName = clazz.getCanonicalName();
- boolean _equals = _identifier.equals(_canonicalName);
+ boolean _equals = annotation.getAnnotation().getIdentifier().equals(clazz.getCanonicalName());
if (_equals) {
return true;
}