• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java Modifiers类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.workday.meta.Modifiers的典型用法代码示例。如果您正苦于以下问题:Java Modifiers类的具体用法?Java Modifiers怎么用?Java Modifiers使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Modifiers类属于com.workday.meta包,在下文中一共展示了Modifiers类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: writeMapField

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeMapField(JavaWriter writer) throws IOException {
    writer.emitField(MAP_TYPE, "MAP", Modifiers.PRIVATE_CONSTANT,
                     String.format("new HashMap<Class<?>, %s<?>>()",
                                   InstanceUpdater.class.getSimpleName()));

    writer.beginInitializer(true);

    for (Map.Entry<String, String> entry : classNameToParserNameMap.entrySet()) {
        String className = entry.getKey();
        String parserQualifiedName = entry.getValue();
        TypeElement parserType =
                processingEnv.getElementUtils().getTypeElement(parserQualifiedName);
        if (parserType == null
                || metaTypes.isSubtypeErasure(parserType.asType(), InstanceUpdater.class)) {
            writer.emitStatement("MAP.put(%s.class, %s.INSTANCE)",
                                 className,
                                 parserQualifiedName);
        }
    }

    writer.endInitializer();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:23,代码来源:InstanceUpdaterTableGenerator.java


示例2: writePostCreateCollectionMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
@Override
public void writePostCreateCollectionMethod(JavaWriter writer) throws IOException {
    String collectionType = writer.compressType(JavaWriter.type(Collection.class, "?"));

    writer.beginMethod("void",
                       "onPostCreateCollection",
                       Modifiers.PRIVATE,
                       parentType,
                       "parent",
                       collectionType,
                       "collection");
    writer.beginControlFlow("for (Object o : collection)");
    writeItemSwitch(writer, "parent", "o");
    writer.endControlFlow();
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:17,代码来源:StandardPostCreateChildBlockWriter.java


示例3: writePostCreateMapMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
@Override
public void writePostCreateMapMethod(JavaWriter writer) throws IOException {
    String mapType = writer.compressType(JavaWriter.type(Map.class, "?", "?"));

    writer.beginMethod("void",
                       "onPostCreateMap",
                       Modifiers.PRIVATE,
                       parentType,
                       "parent",
                       mapType,
                       "map");
    writer.beginControlFlow("for (Object o : map.values())");
    writeItemSwitch(writer, "parent", "o");
    writer.endControlFlow();
    writer.endMethod();

}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:18,代码来源:StandardPostCreateChildBlockWriter.java


示例4: writeWriteToParcelMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeWriteToParcelMethod(JavaWriter writer) throws IOException {
    List<String> parameters = new ArrayList<>(4);
    parameters.add(elementCompressedName);
    parameters.add("object");
    parameters.add("Parcel");
    parameters.add("dest");

    writer.emitAnnotation(Override.class);
    writer.beginMethod("void", "writeToParcel", Modifiers.PUBLIC, parameters, null);
    writer.emitStatement("Bundle bundle = new Bundle()");

    for (VariableElement field : parceledFields) {
        getSaveStatementWriter(field).writeFieldWriteStatement(field, writer);
    }

    writer.emitStatement("dest.writeBundle(bundle)");
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:postman,代码行数:19,代码来源:ParcelerGenerator.java


示例5: writeReadFromParcelMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeReadFromParcelMethod(JavaWriter writer) throws IOException {
    writer.emitAnnotation(Override.class);
    writer.beginMethod(elementCompressedName, "readFromParcel", Modifiers.PUBLIC, "Parcel",
                       "parcel");

    writer.emitStatement("%s object = new %s()", elementCompressedName, elementCompressedName);
    writer.emitStatement("Bundle bundle = parcel.readBundle()");
    writer.emitStatement("bundle.setClassLoader(%s.class.getClassLoader())",
                         elementCompressedName);
    for (VariableElement field : parceledFields) {
        getSaveStatementWriter(field).writeFieldReadStatement(field,
                                                              postCreateChildMethods,
                                                              writer);
    }
    writer.emitStatement("return object");
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:postman,代码行数:18,代码来源:ParcelerGenerator.java


示例6: writeMapField

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeMapField(JavaWriter writer) throws IOException {
    writer.emitField(MAP_TYPE, "MAP", Modifiers.PRIVATE_CONSTANT,
                     String.format("new HashMap<String, %s<?>>()",
                                   XmlElementParser.class.getSimpleName()));

    writer.beginInitializer(true);
    for (Map.Entry<String, TypeElement> entry : parseMap.entrySet()) {
        writer.emitStatement("MAP.put(\"%s\", %s.INSTANCE)", entry.getKey(),
                             entry.getValue().getSimpleName()
                                     + GeneratedClassNames.PARSER_SUFFIX);
    }
    writer.endInitializer();
}
 
开发者ID:Workday,项目名称:autoparse-xml,代码行数:14,代码来源:ParserMapGenerator.java


示例7: writeKeySet

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeKeySet(JavaWriter writer) throws IOException {

        writer.emitAnnotation(Override.class);
        writer.beginMethod(JavaWriter.type(Set.class, "String"), "keySet", Modifiers.PUBLIC);
        writer.emitStatement("return MAP.keySet()");
        writer.endMethod();
    }
 
开发者ID:Workday,项目名称:autoparse-xml,代码行数:8,代码来源:ParserMapGenerator.java


示例8: writeGetter

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeGetter(JavaWriter writer) throws IOException {
    writer.emitAnnotation(Override.class);
    writer.beginMethod(JavaWriter.type(JsonObjectParser.class, "?"),
                       "get",
                       Modifiers.PUBLIC,
                       "String",
                       "discriminationValue");
    writer.emitStatement("return MAP.get(discriminationValue)");
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:11,代码来源:JsonObjectParserTableGenerator.java


示例9: writeUpdateFromMapMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeUpdateFromMapMethod(JavaWriter writer) throws IOException {
    writer.emitAnnotation(Override.class);
    writer.emitAnnotation(SuppressWarnings.class, JavaWriter.stringLiteral("rawtypes"));
    List<String> parameters = CollectionUtils.newArrayList(parsedClassName, "instance",
                                                           JavaWriter.type(Map.class, "String", "Object"), "map",
                                                           JsonParserContext.class.getSimpleName(), "context");

    writer.beginMethod("void", "updateInstanceFromMap", Modifiers.PUBLIC, parameters, null);

    writeUpdateAssignmentsBlock(writer);
    if (selfValueAssignmentInfo != null) {
        writeUpdateSelfValuesBlock(writer);
    }
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:16,代码来源:JsonObjectParserGenerator.java


示例10: writeInitializeAndGetFieldMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeInitializeAndGetFieldMethod(JavaWriter writer) throws IOException {
    writer.emitAnnotation(Override.class);
    writer.beginMethod("Object", "initializeAndGetField", Modifiers.PUBLIC, parsedClassName, "instance", "String",
                       "name");
    writer.emitStatement("return doInitializeAndGetField(instance, name, true)");
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:8,代码来源:JsonObjectParserGenerator.java


示例11: writeDoInitializeAndGetFieldMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeDoInitializeAndGetFieldMethod(JavaWriter writer) throws IOException {
    writer.beginMethod("Object", "doInitializeAndGetField", Modifiers.PRIVATE, parsedClassName, "instance",
                       "String", "name", "boolean", "initializeCollections");
    writer.beginControlFlow("switch (name)");
    for (AssignmentInfo assignmentInfo : assignments) {
        if (assignmentInfo.member instanceof VariableElement) {
            writeInitializeAndGetBlock(writer, (VariableElement) assignmentInfo.member, assignmentInfo.name);
        }
    }
    writer.beginControlFlow("default:");
    writer.emitStatement("return null");
    writer.endControlFlow();
    writer.endControlFlow();
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:16,代码来源:JsonObjectParserGenerator.java


示例12: writeGetter

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeGetter(JavaWriter writer) throws IOException {
    writer.emitAnnotation(Override.class);
    writer.emitAnnotation(SuppressWarnings.class, JavaWriter.stringLiteral("unchecked"));
    writer.beginMethod("<T>" + JavaWriter.type(InstanceUpdater.class, "T"),
                       "getInstanceUpdaterForClass",
                       Modifiers.PUBLIC,
                       "Class<T>",
                       "clazz");
    writer.emitStatement("return (InstanceUpdater<T>) MAP.get(clazz)");
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:12,代码来源:InstanceUpdaterTableGenerator.java


示例13: writePostCreateChildMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
@Override
public void writePostCreateChildMethod(JavaWriter writer) throws IOException {
    writer.beginMethod("void",
                       "onPostCreateChild",
                       Modifiers.PRIVATE,
                       parentType,
                       "parent",
                       "Object",
                       "child");
    for (ExecutableElement method : postCreateChildMethods) {
        writer.emitStatement("parent.%s(child)", method.getSimpleName());
    }
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:15,代码来源:StandardPostCreateChildBlockWriter.java


示例14: writeNewArrayMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeNewArrayMethod(JavaWriter writer) throws IOException {
    writer.emitAnnotation(Override.class);
    writer.beginMethod(String.format("%s[]", elementCompressedName),
                       "newArray",
                       Modifiers.PUBLIC,
                       "int",
                       "size");
    writer.emitStatement("return new %s[size]", elementCompressedName);
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:postman,代码行数:11,代码来源:ParcelerGenerator.java


示例15: writeKeySet

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeKeySet(JavaWriter writer) throws IOException {
    writer.emitAnnotation(Override.class);
    writer.beginMethod(JavaWriter.type(Set.class, "String"), "keySet", Modifiers.PUBLIC);
    writer.emitStatement("return MAP.keySet()");
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:7,代码来源:JsonObjectParserTableGenerator.java


示例16: generateParser

import com.workday.meta.Modifiers; //导入依赖的package包/类
public void generateParser() throws IOException {
    String parserName = MetaTypeNames.constructTypeName(classElement, GeneratedClassNames.PARSER_SUFFIX);

    JavaFileObject sourceFile = processingEnv.getFiler().createSourceFile(parserName);

    JavaWriter writer = new JavaWriter(sourceFile.openWriter());
    writer.setIndent("    ");
    writer.emitPackage(processingEnv.getElementUtils().getPackageOf(classElement).getQualifiedName().toString());
    writer.emitImports(getStandardImports());
    writer.emitEmptyLine();

    parsedClassName = writer.compressType(classElement.getQualifiedName().toString());
    String jsonObjectParserInterfaceName = JavaWriter.type(JsonObjectParser.class, parsedClassName);
    String fromMapUpdaterInterfaceName = JavaWriter.type(InstanceUpdater.class, parsedClassName);
    writer.beginType(parserName, "class", EnumSet.of(Modifier.PUBLIC, Modifier.FINAL), null,
                     jsonObjectParserInterfaceName, fromMapUpdaterInterfaceName);
    writer.emitEmptyLine();

    writer.emitField(parserName, "INSTANCE", Modifiers.PUBLIC_CONSTANT,
                     String.format("new %s()", writer.compressType(parserName)));
    writer.emitEmptyLine();

    // Constructor
    writer.beginMethod(null, parserName, Modifiers.PRIVATE);
    writer.endMethod();
    writer.emitEmptyLine();

    initializeAssignments(writer);

    writePublicParseJsonObjectMethod(writer);
    writer.emitEmptyLine();
    writeParseFromJsonObjectMethod(writer);
    writer.emitEmptyLine();
    writeParseFromReaderMethod(writer);
    writer.emitEmptyLine();
    writeUpdateFromMapMethod(writer);
    writer.emitEmptyLine();
    writeGetFieldMethod(writer);
    writer.emitEmptyLine();
    writeInitializeAndGetFieldMethod(writer);
    writer.emitEmptyLine();
    writeDoInitializeAndGetFieldMethod(writer);

    if (!postCreateChildMethods.isEmpty()) {
        // TODO: Only write the methods that we need.
        // TODO: Tell block writer whether to write the map or collection parts.
        writer.emitEmptyLine();
        postCreateChildBlockWriter.writePostCreateChildMethod(writer);
        writer.emitEmptyLine();
        postCreateChildBlockWriter.writePostCreateCollectionMethod(writer);
        writer.emitEmptyLine();
        postCreateChildBlockWriter.writePostCreateMapMethod(writer);
    }

    writer.endType();
    writer.close();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:58,代码来源:JsonObjectParserGenerator.java


示例17: writePublicParseJsonObjectMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writePublicParseJsonObjectMethod(JavaWriter writer) throws IOException {
    writer.emitAnnotation(Override.class);
    writer.beginMethod(parsedClassName, "parseJsonObject", Modifiers.PUBLIC,
                       CollectionUtils.newArrayList(AndroidNames.JSON_OBJECT, "jsonObject",
                                                    AndroidNames.JSON_READER, "reader", "String",
                                                    "discriminationName", "String", "discriminationValue"),
                       CollectionUtils.newArrayList(IOException.class.getSimpleName()));

    writer.emitField(parsedClassName, "result", Modifiers.NONE, "new " + parsedClassName + "()");
    if (!discriminationValueAssignmentPatterns.isEmpty()) {
        writer.beginControlFlow("if (discriminationValue != null)");
        for (String assignmentPattern : discriminationValueAssignmentPatterns) {
            writer.emitStatement(assignmentPattern, "result", "discriminationValue");
        }
        writer.endControlFlow();
    }

    String selfValuesMapName = null;
    if (selfValueAssignmentInfo != null) {
        Element member = selfValueAssignmentInfo.member;
        String initializer = null;
        selfValuesMapName = member.getSimpleName().toString() + SELF_VALUE_NAME_SUFFIX;

        try {
            initializer = initializers.findMapInitializer((DeclaredType) member.asType());
        } catch (InvalidTypeException e) {
            processingEnv.getMessager().printMessage(Diagnostic.Kind.ERROR, e.getMessage(), member);
        }

        writer.emitField(member.asType().toString(), selfValuesMapName, Modifiers.NONE, initializer);

    }
    writer.beginControlFlow("if (jsonObject != null)");
    if (selfValueAssignmentInfo != null) {
        writer.emitStatement("parseFromJsonObject(result, jsonObject, discriminationName, %s)", selfValuesMapName);
    } else {
        writer.emitStatement("parseFromJsonObject(result, jsonObject, discriminationName)");
    }
    writer.endControlFlow();
    writer.beginControlFlow("if (reader != null)");
    if (selfValueAssignmentInfo != null) {
        writer.emitStatement("parseFromReader(result, reader, discriminationName, %s)", selfValuesMapName);
    } else {
        writer.emitStatement("parseFromReader(result, reader, discriminationName)");
    }
    writer.endControlFlow();

    if (selfValueAssignmentInfo != null) {
        writer.emitStatement(selfValueAssignmentInfo.assignmentPattern, "result", selfValuesMapName);
    }

    writer.emitStatement("return result");
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:55,代码来源:JsonObjectParserGenerator.java


示例18: writeParseFromJsonObjectMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeParseFromJsonObjectMethod(JavaWriter writer) throws IOException {
    writer.emitAnnotation(SuppressWarnings.class, JavaWriter.stringLiteral("rawtypes"));
    List<String> parameters = CollectionUtils.newArrayList(parsedClassName, "out", AndroidNames.JSON_OBJECT,
                                                           "jsonObject", "String", "discriminationName");
    if (selfValueAssignmentInfo != null) {
        parameters.add("java.util.Map<String, Object>");
        parameters.add("selfValuesMap");
    }

    writer.beginMethod("void", "parseFromJsonObject", Modifiers.PRIVATE, parameters,
                       CollectionUtils.newArrayList(IOException.class.getSimpleName()));

    for (AssignmentInfo assignmentInfo : assignments) {
        writer.beginControlFlow("if (jsonObject.has(\"%s\"))", assignmentInfo.name);
        assignmentInfo.assigner.writeFromJsonObjectAssignment(writer, "out", "jsonObject", assignmentInfo.name);
        writer.emitStatement("jsonObject.remove(\"%s\")", assignmentInfo.name);
        writer.endControlFlow();
    }

    if (!discriminationValueAssignmentPatterns.isEmpty()) {
        writer.beginControlFlow("if (jsonObject.has(discriminationName))");
        writer.emitField("String", "discriminationValue", Modifiers.FINAL,
                         "jsonObject.optString(discriminationName)");
        writer.emitStatement("jsonObject.remove(discriminationName)");
        for (String assignmentPattern : discriminationValueAssignmentPatterns) {
            writer.emitStatement(assignmentPattern, "out", "discriminationValue");
        }
        writer.endControlFlow();
    }

    if (selfValueAssignmentInfo != null) {
        writer.emitAnnotation(SuppressWarnings.class, JavaWriter.stringLiteral("unchecked"));
        writer.emitField(JavaWriter.type(Iterator.class, "String"), "keys", Modifiers.NONE, "jsonObject.keys()");
        writer.beginControlFlow("while (keys.hasNext())");
        writer.emitField("String", "key", Modifiers.NONE, "keys.next()");
        if (selfValueAssignmentInfo.convertJsonTypes) {
            writer.emitStatement(
                    "selfValuesMap.put(key, JsonParserUtils.getAndConvertValue(jsonObject, " + "key))");
        } else {
            writer.emitStatement("selfValuesMap.put(key, jsonObject.opt(key))");
        }
        writer.endControlFlow();
    }
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:46,代码来源:JsonObjectParserGenerator.java


示例19: writeGetFieldMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeGetFieldMethod(JavaWriter writer) throws IOException {
    writer.emitAnnotation(Override.class);
    writer.beginMethod("Object", "getField", Modifiers.PUBLIC, parsedClassName, "instance", "String", "name");
    writer.emitStatement("return doInitializeAndGetField(instance, name, false)");
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:7,代码来源:JsonObjectParserGenerator.java


示例20: writeParseFromReaderMethod

import com.workday.meta.Modifiers; //导入依赖的package包/类
private void writeParseFromReaderMethod(JavaWriter writer) throws IOException {
    writer.emitAnnotation(SuppressWarnings.class, "{ \"rawtypes\", \"unchecked\"}");
    ArrayList<String> parameters = CollectionUtils.newArrayList(parsedClassName, "out", AndroidNames.JSON_READER,
                                                                "reader", "String", "discriminationName");

    if (selfValueAssignmentInfo != null) {
        parameters.add("java.util.Map<String, Object>");
        parameters.add("selfValuesMap");
    }

    writer.beginMethod("void", "parseFromReader", Modifiers.PRIVATE, parameters,
                       CollectionUtils.newArrayList(IOException.class.getSimpleName()));

    writer.beginControlFlow("while (reader.hasNext())");
    writer.emitField(String.class.getSimpleName(), "name", Modifiers.NONE, "reader.nextName()");

    if (!discriminationValueAssignmentPatterns.isEmpty()) {
        writer.beginControlFlow("if (discriminationName.equals(name) && !JsonParserUtils.handleNull(reader))");
        writer.emitField("String", "discriminationValue", Modifiers.FINAL,
                         "JsonParserUtils.nextString(reader, discriminationName)");
        for (String assignmentPattern : discriminationValueAssignmentPatterns) {
            writer.emitStatement(assignmentPattern, "out", "discriminationValue");
        }
        writer.emitStatement("continue");
        writer.endControlFlow();
    }

    writer.beginControlFlow("switch (name)");

    for (AssignmentInfo assignmentInfo : assignments) {
        writer.beginControlFlow("case \"%s\":", assignmentInfo.name);
        assignmentInfo.assigner.writeFromReaderAssignment(writer, "out", "reader", assignmentInfo.name);
        writer.emitStatement("break");
        writer.endControlFlow();
    }
    writer.beginControlFlow("default:");
    if (selfValueAssignmentInfo != null) {
        writer.emitStatement("selfValuesMap.put(name, JsonParserUtils.parseNextValue(reader, %s))",
                             selfValueAssignmentInfo.convertJsonTypes);
    } else {
        writer.emitStatement("reader.skipValue()");
    }
    writer.endControlFlow();

    writer.endControlFlow();
    writer.endControlFlow();
    writer.endMethod();
}
 
开发者ID:Workday,项目名称:autoparse-json,代码行数:49,代码来源:JsonObjectParserGenerator.java



注:本文中的com.workday.meta.Modifiers类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java View类代码示例发布时间:2022-05-16
下一篇:
Java Project类代码示例发布时间:2022-05-16
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap