Package org.codemap.util

Source Code of org.codemap.util.Resources

package org.codemap.util;

import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.IWorkspaceRoot;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.Path;
import org.eclipse.jdt.core.IJavaElement;
import org.eclipse.jdt.core.JavaCore;

import ch.akuhn.util.Files;

public class Resources {

  public static String asPath(IResource resource) {
    return resource.getFullPath().toString();
  }

  public static IJavaElement asJavaElement(String path) {
    IResource resource = asResource(path);
    return JavaCore.create(resource);
  }
 
    public static IJavaElement asJavaElement(IResource resource) {
        return asJavaElement(asPath(resource));
   

  public static IResource asResource(String path) {
    IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
    return root.findMember(new Path(path));
  }

  public static IResource fromJavaElement(IJavaElement element) {
    return element.getResource();
  }

  public static boolean matchPattern(IResource respource, String pattern) {
    String name = respource.getName();
    return Files.match(pattern, name);
  }

  public static IContainer getFolder(IResource resource) {
    if (resource instanceof IContainer) return (IContainer) resource;
    return resource.getParent();
  }

  public static String asPath(IJavaElement element) {
    return asPath(element.getResource());
  }

  public static String asPath(Object each) {
    IResource resource = Adaptables.adapt(each, IResource.class);
    if (resource != null) return asPath(resource);
    IJavaElement element = Adaptables.adapt(each, IJavaElement.class);
    if (element != null) return asPath(element);
    return null;
  }

  public static IProject asProject(String path) {
    IResource resource = asResource(path);
    return resource instanceof IProject ? (IProject) resource : null;
  }

}
TOP

Related Classes of org.codemap.util.Resources

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.