blob: a1cd94c87a6011c7cc20cfc76f051947ba814e54 [file] [log] [blame]
/**
* Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Christophe Loetz (Loetz GmbH&Co.KG) - initial implementation
*
*
* This copyright notice shows up in the generated Java code
*/
package org.eclipse.osbp.infogrid.model.gridsource.util;
import org.eclipse.osbp.infogrid.model.gridsource.CxGridNestedField;
import org.eclipse.osbp.infogrid.model.gridsource.CxGridNestedPath;
import org.eclipse.osbp.infogrid.model.gridsource.CxGridProperty;
import org.eclipse.xtext.common.types.JvmType;
import org.eclipse.xtext.xbase.lib.StringExtensions;
@SuppressWarnings("all")
public class Util {
public static String calcDotPath(final CxGridProperty property) {
CxGridNestedField _path = property.getPath();
boolean _tripleEquals = (_path == null);
if (_tripleEquals) {
return "";
}
return Util.calcDotPath(property.getPath());
}
public static String calcDotPath(final CxGridNestedField field) {
if (((field == null) || (field.getField() == null))) {
return "";
}
final String fieldName = Util.toPropertyName(field.getField().getSimpleName());
CxGridNestedPath _path = field.getPath();
String _calcDotPath = null;
if (_path!=null) {
_calcDotPath=Util.calcDotPath(_path);
}
final String tail = _calcDotPath;
String _xifexpression = null;
boolean _isNullOrEmpty = StringExtensions.isNullOrEmpty(tail);
boolean _not = (!_isNullOrEmpty);
if (_not) {
_xifexpression = ((fieldName + ".") + tail);
} else {
_xifexpression = fieldName;
}
return _xifexpression;
}
public static String calcDotPath(final CxGridNestedPath path) {
if (((path == null) || (path.getField() == null))) {
return "";
}
final String fieldName = Util.toPropertyName(path.getField().getSimpleName());
CxGridNestedPath _path = path.getPath();
String _calcDotPath = null;
if (_path!=null) {
_calcDotPath=Util.calcDotPath(_path);
}
final String tail = _calcDotPath;
String _xifexpression = null;
boolean _isNullOrEmpty = StringExtensions.isNullOrEmpty(tail);
boolean _not = (!_isNullOrEmpty);
if (_not) {
_xifexpression = ((fieldName + ".") + tail);
} else {
_xifexpression = fieldName;
}
return _xifexpression;
}
public static JvmType calcLeafType(final CxGridProperty property) {
CxGridNestedField _path = property.getPath();
boolean _tripleEquals = (_path == null);
if (_tripleEquals) {
return null;
}
return Util.calcLeafType(property.getPath());
}
public static JvmType calcLeafType(final CxGridNestedField field) {
if (((field == null) || (field.getField() == null))) {
return null;
}
CxGridNestedPath _path = field.getPath();
boolean _tripleNotEquals = (_path != null);
if (_tripleNotEquals) {
return Util.calcLeafType(field.getPath());
} else {
return field.getField().getReturnType().getType();
}
}
public static JvmType calcLeafType(final CxGridNestedPath path) {
if (((path == null) || (path.getField() == null))) {
return null;
}
CxGridNestedPath _path = path.getPath();
boolean _tripleNotEquals = (_path != null);
if (_tripleNotEquals) {
return Util.calcLeafType(path.getPath());
} else {
return path.getField().getReturnType().getType();
}
}
/**
* Normalizes the method name.
*
* @param simpleName
* @return
*/
public static String toPropertyName(final String simpleName) {
if ((simpleName == null)) {
return null;
}
String tempName = null;
boolean _isSetter = Util.isSetter(simpleName);
if (_isSetter) {
tempName = StringExtensions.toFirstLower(
simpleName.replaceFirst(
"set", ""));
} else {
boolean _isGetter = Util.isGetter(simpleName);
if (_isGetter) {
boolean _startsWith = simpleName.startsWith("get");
if (_startsWith) {
tempName = StringExtensions.toFirstLower(
simpleName.replaceFirst("get", ""));
} else {
tempName = StringExtensions.toFirstLower(
simpleName.replaceFirst("is", ""));
}
}
}
return tempName;
}
public static boolean isGetter(final String simpleName) {
if ((simpleName == null)) {
return false;
}
return (simpleName.startsWith("get") || simpleName.startsWith("is"));
}
public static boolean isSetter(final String simpleName) {
return ((simpleName != null) && simpleName.startsWith("set"));
}
}