Example usage for org.eclipse.jdt.internal.core BinaryType getFullyQualifiedName

List of usage examples for org.eclipse.jdt.internal.core BinaryType getFullyQualifiedName

Introduction

In this page you can find the example usage for org.eclipse.jdt.internal.core BinaryType getFullyQualifiedName.

Prototype

@Override
    public String getFullyQualifiedName() 

Source Link

Usage

From source file:de.instantouch.model.search.SnakeClassInfo.java

License:Open Source License

public void createFrom(BinaryType binaryType) throws SnakeWrongTypeException {
    String className = binaryType.getFullyQualifiedName();
    findByName("className").set(className);

    ITypeRoot typeRoot = binaryType.getTypeRoot();

    IPackageFragment packageFragment = binaryType.getPackageFragment();
    IJavaElement parent = packageFragment.getParent();
    if (parent instanceof ExternalPackageFragmentRoot) {

        ExternalPackageFragmentRoot root = (ExternalPackageFragmentRoot) parent;
        String path = root.getPath().toString();

        int end = path.lastIndexOf("/");
        int start = path.lastIndexOf("/", end - 1);

        String bundleName = path.substring(++start, end);
        findByName("bundleName").set(bundleName);
    } else if (parent instanceof JarPackageFragmentRoot) {

        JarPackageFragmentRoot root = (JarPackageFragmentRoot) parent;
        String path = root.getPath().toString();

        int start = path.lastIndexOf("plugins/");
        String bundle = path.substring(start + "plugins/".length());
        int end = bundle.indexOf("_");

        String bundleName = bundle.substring(0, end);
        findByName("bundleName").set(bundleName);
    }/*from  w  w w  .  ja  v  a 2 s . c o  m*/
}