Package org.applause.lang.generator.ios.dataaccess

Source Code of org.applause.lang.generator.ios.dataaccess.EntityDataAccessExtensions

package org.applause.lang.generator.ios.dataaccess;

import com.google.inject.Inject;
import java.util.List;
import org.applause.lang.applauseDsl.DataSource;
import org.applause.lang.applauseDsl.DataSourceAccessMethod;
import org.applause.lang.applauseDsl.Entity;
import org.applause.lang.applauseDsl.Parameter;
import org.applause.lang.applauseDsl.Type;
import org.applause.lang.generator.ios.model.TypeExtensions;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.xtext.xbase.lib.Extension;
import org.eclipse.xtext.xbase.lib.Functions.Function1;
import org.eclipse.xtext.xbase.lib.IterableExtensions;
import org.eclipse.xtext.xbase.lib.ListExtensions;
import org.eclipse.xtext.xbase.lib.StringExtensions;

@SuppressWarnings("all")
public class EntityDataAccessExtensions {
  @Inject
  @Extension
  private TypeExtensions _typeExtensions;
 
  public String parameterName(final Type it) {
    String _name = it.getName();
    String _firstLower = StringExtensions.toFirstLower(_name);
    return _firstLower;
  }
 
  public String parameterName(final Entity it) {
    String _name = it.getName();
    String _firstLower = StringExtensions.toFirstLower(_name);
    return _firstLower;
  }
 
  public String plural(final String it) {
    String _plus = (it + "s");
    return _plus;
  }
 
  public String listAllMethodName(final Entity it) {
    String _name = it.getName();
    String _plural = this.plural(_name);
    String _firstUpper = StringExtensions.toFirstUpper(_plural);
    String _plus = ("all" + _firstUpper);
    return _plus;
  }
 
  public String parameterList(final DataSourceAccessMethod it) {
    EList<Parameter> _declaredParameters = it.getDeclaredParameters();
    final Function1<Parameter,String> _function = new Function1<Parameter,String>() {
      public String apply(final Parameter param) {
        Type _type = param.getType();
        String _typeName = EntityDataAccessExtensions.this._typeExtensions.typeName(_type);
        String _plus = (_typeName + " *");
        Type _type_1 = param.getType();
        String _parameterName = EntityDataAccessExtensions.this.parameterName(_type_1);
        String _plus_1 = (_plus + _parameterName);
        return _plus_1;
      }
    };
    List<String> _map = ListExtensions.<Parameter, String>map(_declaredParameters, _function);
    String _join = IterableExtensions.join(_map, ", ");
    return _join;
  }
 
  public Entity resourceType(final DataSourceAccessMethod it) {
    EObject _eContainer = it.eContainer();
    Entity _resourceType = ((DataSource) _eContainer).getResourceType();
    return _resourceType;
  }
}
TOP

Related Classes of org.applause.lang.generator.ios.dataaccess.EntityDataAccessExtensions

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.