Example usage for org.eclipse.jdt.core IJavaElement PACKAGE_FRAGMENT

List of usage examples for org.eclipse.jdt.core IJavaElement PACKAGE_FRAGMENT

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IJavaElement PACKAGE_FRAGMENT.

Prototype

int PACKAGE_FRAGMENT

To view the source code for org.eclipse.jdt.core IJavaElement PACKAGE_FRAGMENT.

Click Source Link

Document

Constant representing a package fragment.

Usage

From source file:org.springsource.ide.eclipse.gradle.core.test.util.JUnitLaunchConfigUtil.java

License:Open Source License

public static ILaunchConfigurationWorkingCopy createLaunchConfiguration(IJavaElement element)
        throws CoreException {
    final String testName;
    final String mainTypeQualifiedName;
    final String containerHandleId;

    switch (element.getElementType()) {
    case IJavaElement.JAVA_PROJECT:
    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
    case IJavaElement.PACKAGE_FRAGMENT: {
        String name = JavaElementLabels.getTextLabel(element, JavaElementLabels.ALL_FULLY_QUALIFIED);
        containerHandleId = element.getHandleIdentifier();
        mainTypeQualifiedName = EMPTY_STRING;
        testName = name.substring(name.lastIndexOf(IPath.SEPARATOR) + 1);
    }/*from  w  ww.j av a2  s  .co  m*/
        break;
    case IJavaElement.TYPE: {
        containerHandleId = EMPTY_STRING;
        mainTypeQualifiedName = ((IType) element).getFullyQualifiedName('.'); // don't replace, fix for binary inner types
        testName = element.getElementName();
    }
        break;
    case IJavaElement.METHOD: {
        IMethod method = (IMethod) element;
        containerHandleId = EMPTY_STRING;
        mainTypeQualifiedName = method.getDeclaringType().getFullyQualifiedName('.');
        testName = method.getDeclaringType().getElementName() + '.' + method.getElementName();
    }
        break;
    default:
        throw new IllegalArgumentException(
                "Invalid element type to create a launch configuration: " + element.getClass().getName()); //$NON-NLS-1$
    }

    String testKindId = TestKindRegistry.getContainerTestKindId(element);

    ILaunchConfigurationType configType = getLaunchManager()
            .getLaunchConfigurationType(JUnitLaunchConfigurationConstants.ID_JUNIT_APPLICATION);
    ILaunchConfigurationWorkingCopy wc = configType.newInstance(null,
            getLaunchManager().generateLaunchConfigurationName(testName));

    wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_MAIN_TYPE_NAME, mainTypeQualifiedName);
    wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_PROJECT_NAME,
            element.getJavaProject().getElementName());
    wc.setAttribute(JUnitLaunchConfigurationConstants.ATTR_KEEPRUNNING, false);
    wc.setAttribute(JUnitLaunchConfigurationConstants.ATTR_TEST_CONTAINER, containerHandleId);
    wc.setAttribute(JUnitLaunchConfigurationConstants.ATTR_TEST_RUNNER_KIND, testKindId);
    JUnitMigrationDelegate.mapResources(wc);
    AssertionVMArg.setArgDefault(wc);
    if (element instanceof IMethod) {
        wc.setAttribute(JUnitLaunchConfigurationConstants.ATTR_TEST_METHOD_NAME, element.getElementName()); // only set for methods
    }
    return wc;
}

From source file:org.switchyard.tools.ui.bpmn2.component.NewBPMProcessDetailsWizardPage.java

License:Open Source License

/**
 * Update the default values based on the setting in the file page.
 * /*from www. j a v a2s.co m*/
 * @param project the currently targeted Java project.
 * @param bpmnFileName the current file name.
 * @param service the current service name.
 */
public void update(IJavaProject project, String bpmnFileName, ComponentService service) {
    final String newServiceName = emptyForNull(service.getName());
    if (updateDefault(_oldServiceName, newServiceName, _processIdText.getText())) {
        setProcessId(newServiceName);
    }
    if (updateDefault(_oldServiceName, newServiceName, _processNameText.getText())) {
        setProcessName(newServiceName);
    }
    _oldServiceName = newServiceName;

    final String newPackageName;
    if (project == null) {
        newPackageName = ""; //$NON-NLS-1$
    } else {
        IJavaElement element = JavaUtil.getInitialPackageForProject(project);
        if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
            newPackageName = ((IPackageFragment) element).getElementName();
        } else {
            newPackageName = ""; //$NON-NLS-1$
        }
    }
    if (updateDefault(_oldPackageName, newPackageName, _packageNameText.getText())) {
        setPackageName(newPackageName);
    }
    _oldPackageName = newPackageName;
}

From source file:org.switchyard.tools.ui.editor.components.bpm.NewBPMProcessDetailsWizardPage.java

License:Open Source License

/**
 * Update the default values based on the setting in the file page.
 * /*from   w  ww. j a  v a 2s .  c o m*/
 * @param project the currently targeted Java project.
 * @param bpmnFileName the current file name.
 * @param service the current service name.
 */
public void update(IJavaProject project, String bpmnFileName, ComponentService service) {
    final String newServiceName = emptyForNull(service.getName());
    if (updateDefault(_oldServiceName, newServiceName, _processIdText.getText())) {
        setProcessId(newServiceName);
    }
    if (updateDefault(_oldServiceName, newServiceName, _processNameText.getText())) {
        setProcessName(newServiceName);
    }
    _oldServiceName = newServiceName;

    final String newPackageName;
    if (project == null) {
        newPackageName = "";
    } else {
        IJavaElement element = JavaUtil.getInitialPackageForProject(project);
        if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
            newPackageName = ((IPackageFragment) element).getElementName();
        } else {
            newPackageName = "";
        }
    }
    if (updateDefault(_oldPackageName, newPackageName, _packageNameText.getText())) {
        setPackageName(newPackageName);
    }
    _oldPackageName = newPackageName;
}

From source file:org.switchyard.tools.ui.editor.components.rules.NewRulesDetailsWizardPage.java

License:Open Source License

/**
 * Update the default values based on the setting in the file page.
 * //from  w ww .  java 2  s.c  o  m
 * @param project the currently targeted Java project.
 */
public void update(IJavaProject project) {
    final String newPackageName;
    if (project == null) {
        newPackageName = ""; //$NON-NLS-1$
    } else {
        IJavaElement element = JavaUtil.getInitialPackageForProject(project);
        if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
            newPackageName = ((IPackageFragment) element).getElementName();
        } else {
            newPackageName = ""; //$NON-NLS-1$
        }
    }
    if (updateDefault(_oldPackageName, newPackageName, _packageNameText.getText())) {
        setPackageName(newPackageName);
    }
    _oldPackageName = newPackageName;
}

From source file:org.switchyard.tools.ui.wizards.AbstractSwitchYardServiceWizard.java

License:Open Source License

private IPackageFragment getPackageFragment() {
    IJavaProject project = getJavaProject();
    if (project == null) {
        return null;
    }/*from  w  ww . j  a  v  a  2s .  c om*/
    Interface intf = _serviceContract.getInterface();
    if (intf instanceof JavaInterface && ((JavaInterface) intf).getInterface() != null) {
        try {
            IType serviceType = project.findType(((JavaInterface) intf).getInterface());
            return serviceType == null ? null : serviceType.getPackageFragment();
        } catch (JavaModelException e) {
            return null;
        }
    } else {
        IJavaElement possiblePackage = JavaUtil.getInitialPackageForProject(project);
        if (possiblePackage.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
            return (IPackageFragment) possiblePackage;
        }
    }
    return null;
}

From source file:org.switchyard.tools.ui.wizards.Java2WSDLWizard.java

License:Open Source License

private void setFilePageDefaultsForJavaElement(IJavaElement javaElement) {
    IResource root;/*  w ww.  ja v a  2s .c  o m*/
    switch (javaElement.getElementType()) {
    case IJavaElement.PACKAGE_FRAGMENT:
    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
        root = javaElement.getResource();
        break;
    default:
        root = JavaUtil.getFirstResourceRoot(javaElement.getJavaProject());
        if (root == null) {
            root = javaElement.getResource();
            if (root.getType() == IResource.FILE) {
                root = root.getParent();
            }
        }
        break;
    }
    if (root != null) {
        _filePage.setContainerFullPath(root.getFullPath());
    }
    int elementType = javaElement.getElementType();
    if (elementType == IJavaElement.TYPE) {
        _filePage.setFileName(javaElement.getElementName());
    } else if (elementType == IJavaElement.COMPILATION_UNIT) {
        IType primaryType = ((ICompilationUnit) javaElement).findPrimaryType();
        if (primaryType == null) {
            getBaseFileName(javaElement.getElementName());
        } else {
            _filePage.setFileName(primaryType.getElementName());
        }
    }
}

From source file:org.whole.lang.artifacts.templates.WorkspaceTemplate.java

License:Open Source License

protected void buildArtifact(IResource resource) {
    IJavaElement javaElement = JavaCore.create(resource);
    if (javaElement != null && javaElement.getElementType() == IJavaElement.PACKAGE_FRAGMENT)
        buildPackage((IPackageFragment) javaElement);
    else if (resource.getType() == IResource.FOLDER) {
        buildDirectory((IFolder) resource);
    } else/*  www  .  j a  v  a 2 s  .c  o  m*/
        buildFile(resource.getLocation().toFile());
}

From source file:org.whole.lang.artifacts.util.ArtifactsWorkspaceUtils.java

License:Open Source License

public static IEntity toArtifactsPath(IJavaElement fromJavaElement, IJavaElement toJavaElement, IEntity child) {
    ArtifactsEntityFactory aef = ArtifactsEntityFactory.instance(RegistryConfigurations.RESOLVER);

    IEntity entity;//from  w  ww  .  j  a  v a 2s.c  o m
    String name = toJavaElement.getElementName();
    switch (toJavaElement.getElementType()) {
    case IJavaElement.COMPILATION_UNIT:
        FileArtifact fileArtifact = aef.createFileArtifact();
        fileArtifact.setName(createFileName(name));
        entity = fileArtifact;
        break;
    case IJavaElement.PACKAGE_FRAGMENT:
        if (name == IPackageFragment.DEFAULT_PACKAGE_NAME)
            return fromJavaElement.equals(toJavaElement) ? child
                    : toArtifactsPath(fromJavaElement, toJavaElement.getParent(), child);

        PackageArtifact packageArtifact = aef.createPackageArtifact();
        packageArtifact.setName(aef.createName(name));
        entity = packageArtifact;
        break;
    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
        FolderArtifact folderArtifact = aef.createFolderArtifact();
        Metadata metadata = aef.createMetadata();
        metadata.setAttributes(aef.createAttributes(aef.createAttribute(AttributeEnum.source)));
        folderArtifact.setMetadata(metadata);
        folderArtifact.setName(aef.createName(name));
        entity = folderArtifact;
        break;
    case IJavaElement.JAVA_PROJECT:
        Project project = aef.createProject();
        project.setName(aef.createName(name));
        project.setNatures(aef.createNatures(aef.createNature("org.eclipse.jdt.core.javanature")));
        project.setArtifacts(aef.createArtifacts(0));
        entity = project;
        break;
    default:
    case IJavaElement.JAVA_MODEL:
        Workspace workspace = aef.createWorkspace();
        workspace.setProjects(aef.createProjects(0));
        entity = workspace;
        break;
    }
    boolean isWorkspace = Matcher.match(ArtifactsEntityDescriptorEnum.Workspace, entity);
    if (!EntityUtils.isNull(child))
        entity.wGet(isWorkspace ? ArtifactsFeatureDescriptorEnum.projects
                : ArtifactsFeatureDescriptorEnum.artifacts).wAdd(child);

    return fromJavaElement.equals(toJavaElement) ? entity
            : toArtifactsPath(fromJavaElement, toJavaElement.getParent(), entity);
}

From source file:org.whole.lang.artifacts.util.ArtifactsWorkspaceUtils.java

License:Open Source License

public static IEntity getArtifacts(IEntity artifact) {
    ArtifactsEntityFactory aef = ArtifactsEntityFactory.instance(RegistryConfigurations.RESOLVER);
    IEntity children = BindingManagerFactory.instance.createTuple();

    if (Matcher.match(ArtifactsEntityDescriptorEnum.Workspace, artifact)) {
        IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
        for (IProject project : workspaceRoot.getProjects()) {
            Project projectArtifact = aef.createProject();
            projectArtifact.setName(aef.createName(project.getName()));
            projectArtifact.setArtifacts(aef.createArtifacts(0));
            children.wAdd(projectArtifact);
        }/*  w  ww. ja  va 2s  . c  o  m*/
    } else {
        try {
            IBindingManager bindings = BindingManagerFactory.instance.createBindingManager();
            bindPath(artifact, bindings, false);
            IContainer container = (IContainer) (bindings.wIsSet("folder") ? bindings.wGetValue("folder")
                    : bindings.wGetValue("project"));
            IJavaElement javaContainer = JavaCore.create(container);
            if (javaContainer == null || javaContainer.getElementType() == IJavaElement.JAVA_PROJECT) {
                for (IResource resource : container.members()) {
                    if (resource.getType() == IResource.FILE) {
                        appendFileArtifact(((IFile) resource).getName(), children);
                    } else {
                        FolderArtifact folderArtifact = aef.createFolderArtifact();
                        Metadata metadata = aef.createMetadata();
                        metadata.setAttributes(aef.createAttributes(aef.createAttribute(AttributeEnum.source)));
                        folderArtifact.setMetadata(metadata);
                        folderArtifact.setName(aef.createName(StringUtils.getFileName(resource.getName())));
                        folderArtifact.setArtifacts(aef.createArtifacts(0));
                        children.wAdd(folderArtifact);
                    }
                }
            } else {
                if (javaContainer.getElementType() == IJavaElement.PACKAGE_FRAGMENT_ROOT) {
                    IPackageFragmentRoot fragmentRoot = (IPackageFragmentRoot) javaContainer;
                    if (fragmentRoot.getKind() == IPackageFragmentRoot.K_SOURCE) {
                        for (IJavaElement element : fragmentRoot.getChildren()) {
                            if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
                                if (element.getElementName() == IPackageFragment.DEFAULT_PACKAGE_NAME) {
                                    appendPackageFragmentChildren((IPackageFragment) element, children);
                                } else {
                                    PackageArtifact packageArtifact = aef.createPackageArtifact();
                                    packageArtifact.setName(
                                            aef.createName(StringUtils.getFileName(element.getElementName())));
                                    packageArtifact.setArtifacts(aef.createArtifacts(0));
                                    children.wAdd(packageArtifact);
                                }
                            }
                        }
                    }
                } else // IJavaElement.PACKAGE_FRAGMENT
                    appendPackageFragmentChildren((IPackageFragment) javaContainer, children);

            }
        } catch (Exception e) {
        }
    }

    return children;
}

From source file:rabbit.ui.internal.treebuilders.JavaDataTreeBuilderTest.java

License:Apache License

@Test
public void shouldCorrectlyBuildAPathWithInnerClassMethod() {
    // A method inside an inner class:
    method = (IMethod) JavaCore.create("=J/src<main{Main.java[Main[Inner~hello");
    ICategory[] categories = { Category.DATE, Category.WORKSPACE, Category.PROJECT, Category.JAVA_PACKAGE_ROOT,
            Category.JAVA_PACKAGE, Category.JAVA_TYPE_ROOT, Category.JAVA_MEMBER };

    List<TreePath> expected = asList(
            newPath(date, ws, method.getJavaProject(), getElement(method, IJavaElement.PACKAGE_FRAGMENT_ROOT),
                    getElement(method, IJavaElement.PACKAGE_FRAGMENT), method.getTypeRoot(), // Main.java
                    method.getParent().getParent(), // Main
                    method.getParent(), // Inner
                    method, duration));/*from www .  java  2  s .c o m*/

    data = mock(IJavaData.class);
    given(data.get(IJavaData.DATE)).willReturn(date);
    given(data.get(IJavaData.DURATION)).willReturn(duration);
    given(data.get(IJavaData.JAVA_ELEMENT)).willReturn(method);
    given(data.get(IJavaData.WORKSPACE)).willReturn(ws);

    ICategoryProvider provider = mock(ICategoryProvider.class);
    given(provider.getSelected()).willReturn(asList(categories));
    ITreePathBuilder builder = create(provider);

    IJavaDataProvider input = mock(IJavaDataProvider.class);
    given(input.get()).willReturn(asList(data));
    List<TreePath> actual = builder.build(input);

    assertThat(toString(actual, expected), actual, equalTo(expected));
}