Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PathUtil.java')
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PathUtil.java307
1 files changed, 0 insertions, 307 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PathUtil.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PathUtil.java
deleted file mode 100644
index 8eebe903d..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PathUtil.java
+++ /dev/null
@@ -1,307 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-import java.io.File;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJarEntryResource;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jst.jsf.common.ui.IFileFolderConstants;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Collection of helper methods to manage and convert links Originally part of
- * the LinksManager (com.ibm.iwt.parser.util)
- */
-public final class PathUtil {
- private static final String FORWARD_SLASH = "/"; //$NON-NLS-1$
-
- private static final String RELATIVE_PATH_SIGNAL = IFileFolderConstants.DOT
- + IFileFolderConstants.DOT + IFileFolderConstants.PATH_SEPARATOR;
-
- /**
- * adjust relative path isside the absolute path
- * @param path
- * @return the adjusted path
- */
- public static String adjustPath(String path) {
- int i = 0;
- while ((i = path.indexOf(RELATIVE_PATH_SIGNAL)) > 0) {
- // split the string into two
- String part1 = path.substring(0, i - 1);
- String part2 = path
- .substring(i + RELATIVE_PATH_SIGNAL.length() - 1);
- // strip one path seg from part1
- int j = part1.lastIndexOf(FORWARD_SLASH);
- if (j == -1) {
- return "";//$NON-NLS-1$
- }
- part1 = part1.substring(0, j);
- path = part1 + part2;
- }
- return path;
- }
-
- /**
- * Append trailing url slash if needed
- * @param input
- * @return the string
- */
- public static String appendTrailingURLSlash(String input) {
- // check to see already a slash
- if (!input.endsWith(FORWARD_SLASH)) {
- input += FORWARD_SLASH;
- }
- return input;
- }
-
- /**
- * Convert to relative url based on base
- * @param input
- * @param base
- * @return the string
- */
- public static String convertToRelativePath(String input, String base) {
- // tokenize the strings
- StringTokenizer inputTokenizer = new StringTokenizer(input,
- FORWARD_SLASH);
- StringTokenizer baseTokenizer = new StringTokenizer(base, FORWARD_SLASH);
- String token1 = "", token2 = "";//$NON-NLS-2$//$NON-NLS-1$
- //
- // Go through until equls
- while (true) {
- if (!inputTokenizer.hasMoreTokens()
- || !baseTokenizer.hasMoreTokens()) {
- break;
- }
- token1 = baseTokenizer.nextToken();
- token2 = inputTokenizer.nextToken();
- if (!token1.equals(token2)) {
- break;
- }
- }
- // now generate the backs
- String output = "";//$NON-NLS-1$
- while (baseTokenizer.hasMoreTokens()) {
- baseTokenizer.nextToken();
- output += RELATIVE_PATH_SIGNAL;
- }
- output += token2;
- // generate the rest
- while (inputTokenizer.hasMoreTokens()) {
- output = output + FORWARD_SLASH + inputTokenizer.nextToken();
- }
- return output;
- }
-
- /**
- * @param projectName
- * @param path
- * @return the path in the project converted to a path relative to the
- * web folder
- */
- public static String convertToWebPath(String projectName, String path) {
- String name = ""; //$NON-NLS-1$
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(
- projectName);
- String webrootName = WebrootUtil.getWebContentFolder(project).getName();
-
- if (path.indexOf(webrootName) != -1) {
- name = projectName + IFileFolderConstants.PATH_SEPARATOR
- + webrootName;
- } else {
- name = projectName;
- }
- int index = path.indexOf(projectName);
-
- return path.substring(index + name.length());
- }
-
- /**
- * convert path relative to current active file to absolute path in
- * filesystem
- *
- * @param uri
- * the relative path
- * @param curFile
- * @return absolute path in file system
- */
- public static String convertToAbsolutePath(String uri, IFile curFile) {
- if (uri == null || uri.trim().equals("")) { //$NON-NLS-1$
- return uri;
- }
- String webroot = ""; //$NON-NLS-1$
- IFile jsp = curFile;
- try {
- if (jsp == null) {
- jsp = ((IFileEditorInput) getActivePage()
- .getActiveEditor().getEditorInput()).getFile();
- }
- if (jsp != null) {
- String webrootName = WebrootUtil.getWebContentFolder(
- jsp.getProject()).getName();
- webroot = jsp.getProject().getFolder(webrootName).getLocation()
- .toString();
- }
- } catch (NullPointerException e) {
- return uri;
- }
- if (uri.startsWith(IFileFolderConstants.PATH_SEPARATOR))
- {
- return webroot + uri;
- }
- if (jsp != null) {
- IContainer con = jsp.getParent();
- if (con != null) {
- IPath path = con.getLocation();
- if (path != null) {
- String aPath = path.toString() + File.separator + uri;
- aPath = aPath.replace('/', File.separatorChar);
- aPath = aPath.replace('\\', File.separatorChar);
- if (aPath.endsWith(File.separator)) {
- aPath += IFileFolderConstants.PATH_SEPARATOR;
- }
- File file = new File(aPath);
- if (file.exists() && file.isFile()) {
- return file.getAbsolutePath();
- }
- return uri;
- }
- }
- }
- return uri;
- }
-
- /**
- * Returns the active workbench window.
- *
- * @return the active workbench window. this can be null but I've never seen
- * it.
- */
- private static IWorkbenchWindow getActiveWorkbenchWindow() {
- if (PlatformUI.getWorkbench() == null) {
- return null;
- }
- return PlatformUI.getWorkbench().getActiveWorkbenchWindow();
- }
-
- /**
- * Returns the active workbench page. Note that the active page may not be
- * the one that the user perceives as active in some situations so this
- * method of obtaining the activate page should only be used if no other
- * method is available.
- *
- * @return the active workbench page
- */
- private static IWorkbenchPage getActivePage() {
- IWorkbenchWindow window = getActiveWorkbenchWindow();
- if (window == null) {
- return null;
- }
- return window.getActivePage();
- }
- /**
- * @param javaProject
- * @param parent
- * @return the IPath for a a classpath object (?)
- */
- public static IPath getPathOnClasspath(IJavaProject javaProject,
- Object parent) {
- IPath result = null;
- if (javaProject == null || parent == null) {
- return new Path(""); //$NON-NLS-1$
- }
- IClasspathEntry[] entries = javaProject.readRawClasspath();
- IPath classPath = null;
- if (parent instanceof IResource) {
- if (((javaProject != null) && !javaProject
- .isOnClasspath((IResource) parent))) {
- return new Path(""); //$NON-NLS-1$
- }
- if (parent instanceof IFile) {
- IPath elementPath = ((IFile) parent).getFullPath();
- if (((IFile) parent).getFileExtension().equalsIgnoreCase(
- IFileFolderConstants.EXT_PROPERTIES)) {
- int machings = 0;
- try {
- for (int i = 0; i < entries.length; i++) {
- // Determine whether on this classentry's path
- int n = entries[i].getPath().matchingFirstSegments(
- elementPath);
- if (n > machings) {
- // Get package name
- machings = n;
- classPath = elementPath.removeFirstSegments(
- machings).removeLastSegments(1);
- }
- }
-
- // Not on the classpath?
- if (classPath == null) {
- return null;
- } else if (classPath.segmentCount() > 0) {
- IJavaElement element = javaProject
- .findElement(classPath);
- if (element != null) {
- IPath path = element.getPath();
- if (path != null) {
- IPath path1 = path
- .removeFirstSegments(machings);
-
- String fileName = ((IFile) parent)
- .getName();
- if (fileName != null) {
- result = path1.append(fileName);
- }
- }
- }
-
- } else {
- result = ((IFile) parent).getFullPath()
- .removeFirstSegments(machings);
- }
- } catch (Exception e) {
- return null;
- }
- }
- }
- } else if (parent instanceof IJarEntryResource) {
- IPath elementPath = ((IJarEntryResource) parent).getFullPath();
- if (elementPath.getFileExtension().equalsIgnoreCase(
- IFileFolderConstants.EXT_PROPERTIES)) {
- result = elementPath;
- }
- }
- if (result != null) {
- return result;
- }
- return new Path(""); //$NON-NLS-1$
- }
-
- private PathUtil()
- {
- // utility class, no instantiation
- }
-}

Back to the top