Example usage for org.eclipse.jdt.core.util IConstantPoolConstant CONSTANT_String

List of usage examples for org.eclipse.jdt.core.util IConstantPoolConstant CONSTANT_String

Introduction

In this page you can find the example usage for org.eclipse.jdt.core.util IConstantPoolConstant CONSTANT_String.

Prototype

int CONSTANT_String

To view the source code for org.eclipse.jdt.core.util IConstantPoolConstant CONSTANT_String.

Click Source Link

Usage

From source file:org.fusesource.ide.imports.sap.IDoc3Archive.java

License:Open Source License

private void readVersion() throws IOException {
    Map<String, byte[]> idoc3Contents = new HashMap<String, byte[]>();
    readJARFile(sapidoc3jar, idoc3Contents);
    byte[] jco3IdocContents = idoc3Contents.get(JCOIDOC_CLASSFILE_ENTRY);
    ByteArrayInputStream bais = new ByteArrayInputStream(jco3IdocContents);
    IClassFileReader classfileReader = ToolFactory.createDefaultClassFileReader(bais, IClassFileReader.ALL);
    IFieldInfo[] fieldInfos = classfileReader.getFieldInfos();
    for (int i = 0; i < fieldInfos.length; i++) {
        if (Arrays.equals(fieldInfos[i].getName(), VERSION_NAME)) {
            IConstantValueAttribute constantValueAttribute = fieldInfos[i].getConstantValueAttribute();
            if (constantValueAttribute != null) {
                IConstantPoolEntry constantPoolEntry = constantValueAttribute.getConstantValue();
                if (constantPoolEntry.getKind() == IConstantPoolConstant.CONSTANT_String) {
                    version = constantPoolEntry.getStringValue();
                    if (version != null) {
                        version = version.split(JCOIDOC_VERSION_STRING_DELIMITER)[0];
                    }/*  ww w  .  ja va2 s. c o  m*/
                    break;
                }
            }
        }
    }
}