List of usage examples for org.eclipse.jdt.core Flags isTransient
public static boolean isTransient(int flags)
transient modifier. From source file:at.bestsolution.fxide.jdt.corext.util.JdtFlags.java
License:Open Source License
public static boolean isTransient(IMember member) throws JavaModelException { return Flags.isTransient(member.getFlags()); }
From source file:com.curlap.orb.plugin.generator.impl.CurlDataClassGeneratorImpl.java
License:Open Source License
protected List<Field> getAllSuperclassFields(Set<String> importPackages, String superclass) throws JavaModelException { List<Field> fields = new ArrayList<Field>(); TypeNameMatch typeNameMatch = new JavaElementSearcher(iCompilationUnit).searchClassInfo(superclass); if (typeNameMatch == null) return fields; IType iType = typeNameMatch.getType(); for (IField iField : iType.getFields()) { // skip static field if (Flags.isStatic(iField.getFlags())) continue; String name = iField.getElementName(); Field field = new Field(); field.setName(name);//from w w w . j av a2 s .c om field.setType(CurlSpecUtil.marshalCurlTypeWithSignature( addImportedPackageIfNecessaryWithSignature(importPackages, iField.getTypeSignature()))); field.setDefaultValue(CurlSpecUtil.getDefaultValue(field.getType())); field.setIsTransient(Flags.isTransient(iField.getFlags())); String modifier = Flags.toString(iField.getFlags()); if (modifier.length() == 0) modifier = "package"; field.setGetterModifier(modifier + "-get"); field.setSetterModifier(modifier + "-set"); field.setComment(""); fields.add(field); } // more superclasses if (iType.getSuperclassName() != null) fields.addAll(getAllSuperclassFields(importPackages, iType.getSuperclassName())); return fields; }
From source file:com.curlap.orb.plugin.generator.impl.CurlDataClassGeneratorImpl.java
License:Open Source License
@Override public VelocityContext generateClass() throws CurlGenerateException { ICompilationUnit source = iCompilationUnit; try {/*from w w w .j av a 2 s . c om*/ Set<String> importPackages = new HashSet<String>(); List<Field> fields = new ArrayList<Field>(); List<Field> superClassFields = null; String packageName = null; String className = null; String superClassName = null; JavadocContent classJavadoc = null; for (IType iType : source.getAllTypes()) { // package IPackageFragment iPackageFragment = iType.getPackageFragment(); packageName = (iPackageFragment != null ? iPackageFragment.getElementName().toUpperCase() : ""); // class name className = iType.getElementName(); if (className == null) throw new CurlGenerateException("There is no class name."); // javadoc classJavadoc = JavaElementAnalyzer.getJavaDoc(iType); // superclass if (iType.getSuperclassName() != null) { superClassName = addImportedPackageIfNecessary(importPackages, iType.getSuperclassName()); // fields of superclass superClassFields = getAllSuperclassFields(importPackages, superClassName); } // fields for (IField iField : iType.getFields()) { // skip static field if (Flags.isStatic(iField.getFlags())) continue; String name = iField.getElementName(); Field field = new Field(); field.setName(name); field.setType(CurlSpecUtil.marshalCurlTypeWithSignature( addImportedPackageIfNecessaryWithSignature(importPackages, iField.getTypeSignature()))); field.setDefaultValue(CurlSpecUtil.getDefaultValue(field.getType())); field.setIsTransient(Flags.isTransient(iField.getFlags())); String modifier = CurlSpecUtil.getCurlModifier(Flags.toString(iField.getFlags())); field.setGetterModifier(modifier + "-get"); field.setSetterModifier(modifier + "-set"); field.setJavadocContent(JavaElementAnalyzer.getJavaDoc(iField)); field.setComment((CurlSpecUtil.isCurlGenericsType(field.getType()) ? "|| " + CurlSpecUtil.marshalCurlTypeWithSignature(addImportedPackageIfNecessaryWithSignature( importPackages, iField.getTypeSignature()), true, true) : "")); fields.add(field); } // methods // NOTE: Extract getter and setter. The other methods is skipped. for (IMethod method : iType.getMethods()) { // skip static method if (Flags.isStatic(method.getFlags())) continue; String name = method.getElementName(); // getter into field if (CurlSpecUtil.isGetter(name)) { if (method.getParameterNames().length == 0) { String returnType = CurlSpecUtil.marshalCurlTypeWithSignature( addImportedPackageIfNecessaryWithSignature(importPackages, method.getReturnType())); String modifier = CurlSpecUtil.getCurlModifier(Flags.toString(method.getFlags())); for (Field field : fields) { String fieldName = CurlSpecUtil.getGetterOrSetterName(name); if (fieldName.equals(field.getName()) && returnType.equals(field.getType())) field.setGetterModifier(modifier + "-get"); } } } // setter into field if (CurlSpecUtil.isSetter(name)) { if (CurlSpecUtil.marshalCurlTypeWithSignature(method.getReturnType()).equals("void") && method.getParameterNames().length == 1) { String argumentType = CurlSpecUtil.marshalCurlTypeWithSignature( addImportedPackageIfNecessaryWithSignature(importPackages, method.getParameterTypes()[0])); String modifier = CurlSpecUtil.getCurlModifier(Flags.toString(method.getFlags())); for (Field field : fields) { String fieldName = CurlSpecUtil.getGetterOrSetterName(name); if (fieldName.equals(field.getName()) && argumentType.equals(field.getType())) field.setSetterModifier(modifier + "-set"); } } } } } // merge to velocity. VelocityContext context = new VelocityContext(); context.put("package_name", packageName); context.put("import_packages", importPackages); context.put("class_name", className); context.put("classJavadoc", classJavadoc); if (superClassName != null) { context.put("has_superclass", true); context.put("superclass_name", superClassName); context.put("superclass_fields", superClassFields); } else { context.put("has_superclass", false); } context.put("fields", fields); return context; } catch (JavaModelException e) { throw new CurlGenerateException(e); } }
From source file:com.redhat.ceylon.eclipse.code.explorer.JavaElementImageProvider.java
License:Open Source License
private int computeJavaAdornmentFlags(IJavaElement element, int renderFlags) { int flags = 0; if (showOverlayIcons(renderFlags)) { try {/*from www. j a v a 2 s .c o m*/ if (element instanceof IMember) { IMember member = (IMember) element; int modifiers = member.getFlags(); if (Flags.isAbstract(modifiers) && confirmAbstract(member)) flags |= JavaElementImageDescriptor.ABSTRACT; if (Flags.isFinal(modifiers) || isInterfaceOrAnnotationField(member) || isEnumConstant(member, modifiers)) flags |= JavaElementImageDescriptor.FINAL; if (Flags.isStatic(modifiers) || isInterfaceOrAnnotationFieldOrType(member) || isEnumConstant(member, modifiers)) flags |= JavaElementImageDescriptor.STATIC; if (Flags.isDeprecated(modifiers)) flags |= JavaElementImageDescriptor.DEPRECATED; int elementType = element.getElementType(); if (elementType == IJavaElement.METHOD) { if (((IMethod) element).isConstructor()) flags |= JavaElementImageDescriptor.CONSTRUCTOR; if (Flags.isSynchronized(modifiers)) // collides with 'super' flag flags |= JavaElementImageDescriptor.SYNCHRONIZED; if (Flags.isNative(modifiers)) flags |= JavaElementImageDescriptor.NATIVE; } if (member.getElementType() == IJavaElement.TYPE) { if (JavaModelUtil.hasMainMethod((IType) member)) { flags |= JavaElementImageDescriptor.RUNNABLE; } } if (member.getElementType() == IJavaElement.FIELD) { if (Flags.isVolatile(modifiers)) flags |= JavaElementImageDescriptor.VOLATILE; if (Flags.isTransient(modifiers)) flags |= JavaElementImageDescriptor.TRANSIENT; } } else if (element instanceof ILocalVariable && Flags.isFinal(((ILocalVariable) element).getFlags())) { flags |= JavaElementImageDescriptor.FINAL; } } catch (JavaModelException e) { // do nothing. Can't compute runnable adornment or get flags } } return flags; }
From source file:fr.ifpen.emptooling.reverse.JavaToEcore.java
License:Open Source License
/** * Process (resolve types of all fields) for the given {@link IType}. * // www .j a va 2s.co m * @param iType the given {@link IType} (a java Class). * @param clazz the associated {@link EClass}. * @throws JavaModelException */ protected void processFields(IType iType, EClass clazz) throws JavaModelException { IField[] fields = iType.getFields(); for (IField iField : fields) { EStructuralFeature feature; EClassifier ecoreType = processAttributeType(iField); if (isListEReference(iField)) { feature = eFactory.createEReference(); feature.setUpperBound(-1); feature.setUnique(false); feature.setOrdered(true); } else if (isSetEReference(iField)) { feature = eFactory.createEReference(); feature.setUpperBound(-1); feature.setUnique(true); feature.setOrdered(false); } else if (isSortedSetEReference(iField)) { feature = eFactory.createEReference(); feature.setUpperBound(-1); feature.setUnique(true); feature.setOrdered(true); } else if (ecoreType instanceof EClass) { feature = eFactory.createEReference(); feature.setLowerBound(1); feature.setUpperBound(1); feature.setUnique(true); } else if (ecoreType instanceof EEnum) { feature = eFactory.createEAttribute(); feature.setLowerBound(1); // replace EEnum type by an EINT type ecoreType = EcorePackage.Literals.EINT; setEnumAnnotation(iField, feature); // feature.setEType(ecoreType);//FP // getConstant on non final field return a null string ! // feature.setDefaultValue(iField.getConstant());//FP } else if (ecoreType instanceof EDataType) { feature = eFactory.createEAttribute(); feature.setLowerBound(1); } else { feature = eFactory.createEAttribute(); feature.setLowerBound(1); System.err.println("Passage anormal pour le reverse !!!!"); } feature.setName(iField.getElementName()); feature.setEType(ecoreType); // check flags for final static fields and transient fields int flags = iField.getFlags(); if (Flags.isFinal(flags) && Flags.isStatic(flags)) { // a constant is not persistent and not changeable feature.setTransient(true); feature.setChangeable(false); // retrieve the value of this constant and set it to default feature value try { feature.setDefaultValue(iField.getConstant()); } catch (IllegalStateException e) { // Cannot serialize value to object without an EDataType eType // nevermind: do nothing more System.err.println(e.getMessage() + " for constant " + feature.getName() + " from class " + clazz.getName()); } } // transient field or no typed field or set to transient if (Flags.isTransient(flags) || feature.getEType() == null) { feature.setTransient(true); } clazz.getEStructuralFeatures().add(feature); /* Add generic parameters in case of EMap */ manageEMapParameters(iField, feature); /* Manage annotations but ignore transient fields */ if (!feature.isTransient()) { manageGetterAnnotation(iField, iType, feature); } } }
From source file:org.eclim.plugin.jdt.command.src.ClassPrototypeCommand.java
License:Open Source License
/** * Prototypes the given member's flags.// w ww . j av a 2s. c om * * @param buffer The buffer to append to. * @param member The member instance. */ protected void prototypeFlags(StringBuffer buffer, IMember member) throws Exception { int flags = member.getFlags(); if (Flags.isPublic(flags)) { buffer.append("public "); } else if (Flags.isProtected(flags)) { buffer.append("protected "); } else if (Flags.isPrivate(flags)) { buffer.append("private "); } if (Flags.isStatic(flags)) { buffer.append("static "); } if (Flags.isFinal(flags)) { buffer.append("final "); } if (Flags.isAbstract(flags)) { buffer.append("abstract "); } if (Flags.isNative(flags)) { buffer.append("native "); } if (Flags.isTransient(flags)) { buffer.append("transient "); } if (Flags.isVolatile(flags)) { buffer.append("volatile "); } if (Flags.isSynchronized(flags)) { buffer.append("synchronized "); } }
From source file:org.eclipse.ajdt.internal.ui.editor.quickfix.AJSerialVersionHashOperation.java
License:Open Source License
private static Long calculateSerialVersionId(IClassFileReader cfReader) throws IOException { // implementing algorithm specified on http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/class.html#4100 ByteArrayOutputStream os = new ByteArrayOutputStream(); DataOutputStream doos = new DataOutputStream(os); doos.writeUTF(getClassName(cfReader.getClassName())); // class name int mod = getClassModifiers(cfReader); // System.out.println(Integer.toHexString(mod) + ' ' + Flags.toString(mod)); int classModifiers = mod & (Flags.AccPublic | Flags.AccFinal | Flags.AccInterface | Flags.AccAbstract); doos.writeInt(classModifiers); // class modifiers char[][] interfaces = getSortedInterfacesNames(cfReader); for (int i = 0; i < interfaces.length; i++) { doos.writeUTF(getClassName(interfaces[i])); }// w w w . ja v a2 s . c o m IFieldInfo[] sortedFields = getSortedFields(cfReader); for (int i = 0; i < sortedFields.length; i++) { IFieldInfo curr = sortedFields[i]; int flags = curr.getAccessFlags(); if (!Flags.isPrivate(flags) || (!Flags.isStatic(flags) && !Flags.isTransient(flags))) { doos.writeUTF(new String(curr.getName())); doos.writeInt(flags & (Flags.AccPublic | Flags.AccPrivate | Flags.AccProtected | Flags.AccStatic | Flags.AccFinal | Flags.AccVolatile | Flags.AccTransient)); // field modifiers doos.writeUTF(new String(curr.getDescriptor())); } } if (hasStaticClassInitializer(cfReader)) { doos.writeUTF(STATIC_CLASS_INITIALIZER); doos.writeInt(Flags.AccStatic); doos.writeUTF("()V"); //$NON-NLS-1$ } IMethodInfo[] sortedMethods = getSortedMethods(cfReader); for (int i = 0; i < sortedMethods.length; i++) { IMethodInfo curr = sortedMethods[i]; int flags = curr.getAccessFlags(); if (!Flags.isPrivate(flags) && !curr.isClinit()) { doos.writeUTF(new String(curr.getName())); doos.writeInt(flags & (Flags.AccPublic | Flags.AccPrivate | Flags.AccProtected | Flags.AccStatic | Flags.AccFinal | Flags.AccSynchronized | Flags.AccNative | Flags.AccAbstract | Flags.AccStrictfp)); // method modifiers doos.writeUTF(getClassName(curr.getDescriptor())); } } doos.flush(); return computeHash(os.toByteArray()); }
From source file:org.eclipse.jem.internal.adapters.jdom.JavaFieldJDOMAdaptor.java
License:Open Source License
/** * setModifiers - set the attribute values related to modifiers here *//*ww w .j av a 2 s . c o m*/ protected void setModifiers() { Field javaFieldTarget = (Field) getTarget(); try { String initializer = getFieldInitializerString(); if (initializer != null) javaFieldTarget.setInitializer(createBlock(javaFieldTarget.getName(), initializer)); int flags = getSourceField().getFlags(); javaFieldTarget.setFinal(Flags.isFinal(flags)); javaFieldTarget.setStatic(Flags.isStatic(flags)); javaFieldTarget.setTransient(Flags.isTransient(flags)); javaFieldTarget.setVolatile(Flags.isVolatile(flags)); // Set visibility if (Flags.isPublic(flags)) javaFieldTarget.setJavaVisibility(JavaVisibilityKind.PUBLIC_LITERAL); else if (Flags.isPrivate(flags)) javaFieldTarget.setJavaVisibility(JavaVisibilityKind.PRIVATE_LITERAL); else if (Flags.isProtected(flags)) javaFieldTarget.setJavaVisibility(JavaVisibilityKind.PROTECTED_LITERAL); else javaFieldTarget.setJavaVisibility(JavaVisibilityKind.PACKAGE_LITERAL); } catch (JavaModelException npe) { System.out.println(ResourceHandler.getString("Error_Introspecting_Flags_ERROR_", new Object[] { //$NON-NLS-1$ ((XMIResource) javaFieldTarget.eResource()).getID(javaFieldTarget), npe.getMessage() })); //= "error introspecting flags on {0}" } }
From source file:org.eclipse.jpt.common.core.internal.resource.java.binary.BinaryMember.java
License:Open Source License
private boolean buildTransient() { try {//from w w w .j a va2 s. co m return Flags.isTransient(getElement().getFlags()); } catch (JavaModelException ex) { JptCommonCorePlugin.instance().logError(ex); return false; } }
From source file:org.eclipse.modisco.java.discoverer.internal.io.library.ClassFileParser.java
License:Open Source License
/** * Complete the MoDisco modifier with the informations of the flags. * /*from w w w . jav a2 s . c o m*/ * @param flags * the flags * @param modiscoModifier * the MoDisco Modifier * @see Flags */ private static void manageModifier(final Modifier modiscoModifier, final int flags, final IJavaElement element) { int kind = element.getElementType(); // static is applicable on types, methods, fields, and initializers. if (!modiscoModifier.isStatic()) { if (kind == IJavaElement.TYPE || kind == IJavaElement.METHOD || kind == IJavaElement.FIELD) { modiscoModifier.setStatic(Flags.isStatic(flags)); } } // native is applicable to methods if (!modiscoModifier.isNative()) { if (kind == IJavaElement.METHOD) { modiscoModifier.setNative(Flags.isNative(flags)); } } // strictfp is applicable to types and methods if (!modiscoModifier.isStrictfp()) { if (kind == IJavaElement.TYPE || kind == IJavaElement.METHOD) { modiscoModifier.setStrictfp(Flags.isStrictfp(flags)); } } // synchronized is applicable only to methods if (!modiscoModifier.isSynchronized()) { if (kind == IJavaElement.METHOD) { modiscoModifier.setSynchronized(Flags.isSynchronized(flags)); } } // transient is applicable only to fields if (!modiscoModifier.isTransient()) { if (kind == IJavaElement.FIELD) { modiscoModifier.setTransient(Flags.isTransient(flags)); } } // volatile is applicable only to fields if (!modiscoModifier.isVolatile()) { if (kind == IJavaElement.FIELD) { modiscoModifier.setVolatile(Flags.isVolatile(flags)); } } // visibility modifiers are applicable to types, methods, constructors, // and fields. if (kind == IJavaElement.TYPE || kind == IJavaElement.METHOD || kind == IJavaElement.FIELD) { if (Flags.isPrivate(flags)) { modiscoModifier.setVisibility(VisibilityKind.PRIVATE); } else if (Flags.isProtected(flags)) { modiscoModifier.setVisibility(VisibilityKind.PROTECTED); } else if (Flags.isPublic(flags)) { modiscoModifier.setVisibility(VisibilityKind.PUBLIC); } } // abstract is applicable to types and methods // final is applicable to types, methods and variables if (kind == IJavaElement.TYPE || kind == IJavaElement.METHOD) { if (Flags.isAbstract(flags)) { modiscoModifier.setInheritance(InheritanceKind.ABSTRACT); } else if (Flags.isFinal(flags)) { modiscoModifier.setInheritance(InheritanceKind.FINAL); } } }