Example usage for com.google.gwt.user.rebind SourceWriter indent

List of usage examples for com.google.gwt.user.rebind SourceWriter indent

Introduction

In this page you can find the example usage for com.google.gwt.user.rebind SourceWriter indent.

Prototype

void indent();

Source Link

Usage

From source file:com.mvp4g.rebind.Mvp4gRunAsyncGenerator.java

License:Apache License

void writeClass(SourceWriter sourceWriter, String callBackType) {
    sourceWriter.print("public void load(");
    sourceWriter.print(callBackType);/*  w  ww . j  ava  2s  .  com*/
    sourceWriter.println(" callback) {");
    sourceWriter.indent();
    sourceWriter.println("GWT.runAsync(callback);");
    sourceWriter.outdent();
    sourceWriter.println("}");
}

From source file:com.ponysdk.ui.server.AddonListGenerator.java

License:Apache License

@Override
public String generate(final TreeLogger logger, final GeneratorContext context, final String typeName)
        throws UnableToCompleteException {

    final List<JClassType> ponyAddons = new ArrayList<JClassType>();

    final TypeOracle typeOracle = context.getTypeOracle();
    assert (typeOracle != null);

    JClassType classType = null;//from   www . j a  v a 2 s.com
    try {
        classType = typeOracle.getType(typeName);
    } catch (final NotFoundException e) {
        e.printStackTrace();
        return null;
    }

    final SourceWriter src = getSourceWriter(classType, context, logger);
    if (src == null) {
        return typeName + "Generated";
    }

    final JClassType[] types = typeOracle.getTypes();

    System.out.println("Generating AddonListGenerator " + typeName);
    System.out.println("\tAnalysing " + types.length + " types ...");

    for (final JClassType jClassType : types) {
        if (jClassType.isAnnotationPresent(PonyAddOn.class)) {
            System.out.println("\tAdding Pony Addon " + jClassType.getParameterizedQualifiedSourceName());
            ponyAddons.add(jClassType);
        }
    }

    // Here you would retrieve the metadata based on typeName for this Screen
    src.println("public List<AddonFactory> getAddonFactoryList() {");
    src.indent();
    src.println("List<AddonFactory> addonList = new ArrayList();");
    for (final JClassType addon : ponyAddons) {
        src.println("addonList.add(new AddonFactory(){");
        src.indent();
        src.println("public PTAddon newAddon(){");
        src.indent();
        src.println("PTAddon addon =  new " + addon.getParameterizedQualifiedSourceName() + "();");
        src.println("return addon;");
        src.outdent();
        src.println("}");
        src.println();

        src.println("public String getSignature(){");
        src.indent();
        src.println("return \"" + addon.getParameterizedQualifiedSourceName() + "\";");
        src.outdent();
        src.println("}");
        src.println();
        src.outdent();
        src.println("});");
    }
    src.println("return addonList;");
    src.outdent();
    src.println("}");

    src.commit(logger);
    System.out.println("Generating for: " + typeName);
    return typeName + "Generated";
}

From source file:com.rhizospherejs.gwt.rebind.MappingWriter.java

License:Open Source License

private void writeModelBridgeFactoryMethod(SourceWriter sw) {
    sw.println("@Override");
    sw.println("public ModelBridge<%s> newModelBridge(%s jsoBuilder) {", modelClassName,
            BridgeCapabilities.JSO_BUILDER_CLASS);
    sw.indent();
    sw.println("return new %sModelBridge(jsoBuilder);", modelClassName);
    sw.outdent();//w w w. ja  v  a2  s  . c  o  m
    sw.println("}");
}

From source file:com.rhizospherejs.gwt.rebind.MappingWriter.java

License:Open Source License

private void writeMetaModelFactoryInterfaceImpl(SourceWriter sw) {
    sw.println("@Override");
    sw.println("public MetaModelFactory newMetaModelFactory(%s attrBuilder) {",
            BridgeCapabilities.METAMODEL_ATTRIBUTE_BUILDER_CLASS);
    sw.indent();
    sw.println("return new %sMetaModelFactory(attrBuilder);", modelClassName);
    sw.outdent();/*from  w  w w  .  ja  v a  2  s  .  c o  m*/
    sw.println("}");
}

From source file:com.rhizospherejs.gwt.rebind.MappingWriter.java

License:Open Source License

private void writeModelBridgeImpl(SourceWriter sw) {
    sw.println("private static final class %sModelBridge extends ModelBridge<%s> {", modelClassName,
            modelClassName);/*from  ww  w  .ja  va2s. c  o  m*/
    sw.indent();

    sw.println("public %sModelBridge(%s jsoBuilder) {", modelClassName, BridgeCapabilities.JSO_BUILDER_CLASS);
    sw.indentln("super(jsoBuilder);");
    sw.println("}");
    sw.println();

    sw.println("@Override");
    sw.println("protected JavaScriptObject bridgeInternal(%s in, %s jsoBuilder) {", modelClassName,
            BridgeCapabilities.JSO_BUILDER_CLASS);
    sw.indent();

    sw.println("JavaScriptObject target = JavaScriptObject.createObject();");
    sw.println("jsoBuilder.setTarget(target);");

    for (MappableMethod modelMethod : inspector.getMappableModelMethods()) {
        BridgeMethod bridgeMethod = bridgeCapabilities.getBridgeMethod(modelMethod.getReturnType());
        sw.println("jsoBuilder.%s(\"%s\", in.%s());", bridgeMethod.getName(), modelMethod.getAttributeName(),
                modelMethod.getName());
    }

    MappableMethod modelIdGeneratorMethod = inspector.getModelIdGeneratorMethod();
    if (modelIdGeneratorMethod != null) {
        BridgeMethod bridgeMethod = bridgeCapabilities.getBridgeMethod(modelIdGeneratorMethod.getReturnType());
        sw.println();
        sw.println("jsoBuilder.%s(\"%s\", in.%s());", bridgeMethod.getName(), "id",
                modelIdGeneratorMethod.getName());
    }

    if (inspector.modelUsesCustomAttributes()) {
        sw.println("((%s) in).setCustomRhizosphereAttributes(jsoBuilder);",
                ModelInspector.CUSTOM_ATTRIBUTES_INTERFACE);
    }

    sw.println("return target;");

    // Close bridgeInternal() method
    sw.outdent();
    sw.println("}");

    // Close class definition
    sw.outdent();
    sw.println("}");
}

From source file:com.rhizospherejs.gwt.rebind.MappingWriter.java

License:Open Source License

private void writeMetaModelFactoryImpl(SourceWriter sw) {
    sw.println("private static final class %sMetaModelFactory extends MetaModelFactory {", modelClassName);
    sw.indent();

    sw.println("public %sMetaModelFactory() {", modelClassName);
    sw.indentln("super();");
    sw.println("}");
    sw.println();/*from www. j av  a  2  s. c  o m*/

    sw.println("public %sMetaModelFactory(%s attrBuilder) {", modelClassName,
            BridgeCapabilities.METAMODEL_ATTRIBUTE_BUILDER_CLASS);
    sw.indentln("super(attrBuilder);");
    sw.println("}");
    sw.println();

    sw.println("@Override");
    sw.println("protected void fillMetaModelAttributes("
            + "RhizosphereMetaModel metaModel, AttributeBuilder attrBuilder) {");
    sw.indent();

    sw.println("Attribute attr;");
    sw.println("AttributeDescriptor descriptor;");
    sw.println("RhizosphereKind kind;");
    for (MappableMethod modelMethod : inspector.getMappableModelMethods()) {
        if (!modelMethod.contributesToMetaModel()) {
            continue;
        }
        String labelParameter = modelMethod.getAttributeLabel() != null
                ? "\"" + modelMethod.getAttributeLabel() + "\""
                : "null";
        sw.println("attr = metaModel.newAttribute(\"%s\");", modelMethod.getAttributeName());
        sw.println("descriptor = new %s();", modelMethod.getAttributeDescriptorClassName());
        sw.println("kind = RhizosphereKind.valueOf(RhizosphereKind.class, \"%s\");",
                bridgeCapabilities.getBridgeMethod(modelMethod.getReturnType()).getRhizosphereKind().name());
        sw.println("attrBuilder.fillAttribute(attr, descriptor, \"%s\", %s, kind);",
                modelMethod.getAttributeName(), labelParameter);
        sw.println();
    }

    sw.outdent();
    sw.println("}");

    sw.outdent();
    sw.println("}");
}

From source file:com.seanchenxi.gwt.storage.rebind.StorageKeyProviderGenerator.java

License:Apache License

private void writeMethods(SourceWriter sw) throws UnableToCompleteException {
    final String keyParamName = "key";
    final String varKeyValueName = "keyValue";
    for (StorageKeyProviderMethod method : model.getMethods()) {
        final String returnName = method.getReturnType().getParameterizedQualifiedSourceName();
        final String parameters = method.isDynamicKey()
                ? (method.getKeyValueType().getQualifiedSourceName() + " " + keyParamName)
                : "";
        final String keyPrefix = method.getKeyPrefix();
        final String keySuffix = method.getKeySuffix();

        sw.println();/*from www  .  j a  v a 2 s  .  c o m*/
        sw.println("public %s %s(%s) {", returnName, method.getName(), parameters);
        sw.indent();
        String keyClazz = method.getKeyClazz().getQualifiedSourceName();
        if (method.isDynamicKey()) {
            String keyPrefixStr = "";
            String keySuffixStr = "";
            if (keyPrefix != null && !keyPrefix.trim().isEmpty()) {
                keyPrefixStr = "\"" + keyPrefix + "\" + ";
            }
            if (keySuffix != null && !keySuffix.trim().isEmpty()) {
                keySuffixStr = " + \"" + keySuffix + "\"";
            }
            sw.println("String %s = %sString.valueOf(key)%s;", varKeyValueName, keyPrefixStr, keySuffixStr);
            sw.println("return createIfAbsent(%s, %s.class);", varKeyValueName, keyClazz);
        } else {
            String staticKeyValue = method.getStaticKeyValue();
            if (keyPrefix != null && !keyPrefix.trim().isEmpty()) {
                staticKeyValue = keyPrefix + staticKeyValue;
            }
            if (keySuffix != null && !keySuffix.trim().isEmpty()) {
                staticKeyValue += keySuffix;
            }
            sw.println("return createIfAbsent(\"%s\", %s.class);", staticKeyValue, keyClazz);
        }
        sw.outdent();
        sw.println("}");
    }
}

From source file:com.seanchenxi.resteasy.autobean.generator.RESTServiceGenerator.java

License:Apache License

@Override
public String generate(TreeLogger logger, GeneratorContext context, String typeName)
        throws UnableToCompleteException {

    TypeOracle oracle = context.getTypeOracle();

    String asyncTypeName = typeName + "Async";
    JClassType asyncType = null;//ww  w .  j  av  a2 s . co m
    String packageName = null;
    String simpleName = null;
    try {
        asyncType = oracle.findType(asyncTypeName);
        asyncType = asyncType.isInterface();
        packageName = asyncType.getPackage().getName();
        simpleName = asyncType.getSimpleSourceName() + "Impl";
    } catch (Exception e) {
        logger.log(TreeLogger.ERROR, asyncTypeName + " is not found or is not an interface", e);
        throw new UnableToCompleteException();
    }

    PrintWriter printWriter = context.tryCreate(logger, packageName, simpleName);
    if (printWriter == null) {
        return packageName + "." + simpleName;
    }

    // This method will complete httpMethods map and restPaths map;
    parseSyncType(typeName, oracle, logger);

    ClassSourceFileComposerFactory factory = new ClassSourceFileComposerFactory(packageName, simpleName);
    factory.addImplementedInterface(asyncTypeName);
    factory.setSuperclass(RESTServiceProxy.class.getName());
    factory.addImport(RequestBuilder.class.getName());
    factory.addImport(RESTRequest.class.getName());

    SourceWriter writer = factory.createSourceWriter(context, printWriter);
    writer.indent();
    writer.println("");
    for (JMethod asyncMethod : asyncType.getMethods()) {
        writeAsyncMethod(asyncTypeName, asyncMethod, writer, logger);
    }
    writer.outdent();
    writer.commit(logger);
    return factory.getCreatedClassName();
}

From source file:com.seanchenxi.resteasy.autobean.generator.ThrowableFactoryGenerator.java

License:Apache License

@Override
public String generate(TreeLogger logger, GeneratorContext context, String typeName)
        throws UnableToCompleteException {
    TypeOracle oracle = context.getTypeOracle();
    JClassType type = oracle.findType(typeName);
    type = type.isInterface();//from w w  w . j  a v a  2 s  . c  om
    if (type == null) {
        logger.log(TreeLogger.ERROR, typeName + " is not found");
        throw new UnableToCompleteException();
    }

    String packageName = type.getPackage().getName();
    String simpleName = type.getSimpleSourceName() + "Impl";
    PrintWriter printWriter = context.tryCreate(logger, packageName, simpleName);
    if (printWriter == null) {
        return packageName + "." + simpleName;
    }

    ClassSourceFileComposerFactory factory = new ClassSourceFileComposerFactory(packageName, simpleName);
    factory.addImplementedInterface(typeName);
    factory.addImport(Throwable.class.getName());

    SourceWriter writer = factory.createSourceWriter(context, printWriter);
    writer.indent();
    writer.println("@Override");
    writer.println("public Throwable create(String className, String message){");
    for (String qname : getAllThrowableTypes(oracle, logger)) {
        writer.println("   if(\"" + qname + "\".equals(className)) {");
        writer.println("      return new " + qname + " (message);");
        writer.println("   }");
    }
    writer.println("   return new Throwable(message);");
    writer.println("}");
    writer.outdent();
    writer.commit(logger);
    return factory.getCreatedClassName();
}

From source file:com.sencha.gxt.core.rebind.useragent.UserAgentPropertyGenerator.java

License:sencha.com license

@Override
public String generate(TreeLogger logger, SortedSet<String> possibleValues, String fallback,
        SortedSet<ConfigurationProperty> configProperties) throws UnableToCompleteException {

    SourceWriter sw = new StringSourceWriter();
    sw.println("{");

    sw.println("var ua = navigator.userAgent.toLowerCase();");

    // Microsoft Edge
    uaContains(sw, "edge/", "edge");

    uaContains(sw, "chrome", "chrome");

    sw.println("if (ua.indexOf('trident') != -1 || ua.indexOf('msie') != -1) {");
    sw.indent();

    // TODO ChromeFrame?
    docModeGreaterThan(sw, 11, "ie11");
    docModeGreaterThan(sw, 10, "ie10");
    docModeGreaterThan(sw, 9, "ie9");
    docModeGreaterThan(sw, 8, "ie8");

    // last assume newest
    sw.println("return 'ie10';");
    sw.outdent();//from  w  w  w  .j  a  va  2s  .c o m
    sw.println("}");

    sw.println("if (ua.indexOf('safari') != -1) {");
    sw.indent();
    uaContains(sw, "version/3", "safari3");
    uaContains(sw, "version/4", "safari4");
    // else assume newest
    // simpleStatement(sw, "version/5", "safari5");
    sw.println("return 'safari5';");
    sw.outdent();
    sw.println("}");

    sw.println("if (ua.indexOf('gecko') != -1) {");
    sw.indent();
    uaContains(sw, "rv:1.8", "gecko1_8");
    // Don't check for rev 1.9, check instead for the newest version, and treat
    // all
    // gecko browsers that don't match a rule as the newest version
    // simpleStatement(sw, "rv:1.9", "gecko1_9");
    sw.println("return 'gecko1_9';");
    sw.outdent();
    sw.println("}");

    uaContains(sw, "adobeair", "air");

    sw.println("return null;}");
    return sw.toString();
}