com.liferay.ide.hook.ui.wizard.PortalServiceSearchScope.java Source code

Java tutorial

Introduction

Here is the source code for com.liferay.ide.hook.ui.wizard.PortalServiceSearchScope.java

Source

/*******************************************************************************
 * Copyright (c) 2000-present Liferay, Inc. All rights reserved.
 *
 * This library is free software; you can redistribute it and/or modify it under
 * the terms of the GNU Lesser General Public License as published by the Free
 * Software Foundation; either version 2.1 of the License, or (at your option)
 * any later version.
 *
 * This library is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
 * details.
 *
 *******************************************************************************/

package com.liferay.ide.hook.ui.wizard;

import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.Path;
import org.eclipse.jdt.core.IJavaElement;
import org.eclipse.jdt.core.search.IJavaSearchScope;

/**
 * @author Greg Amerson
 */
public class PortalServiceSearchScope implements IJavaSearchScope {

    protected IPath[] enclosingJars;

    protected String[] resourcePatterns;

    public PortalServiceSearchScope() {
    }

    public boolean encloses(IJavaElement element) {
        if (element != null) {
            IPath elementPath = element.getPath();

            if (elementPath != null) {
                for (IPath enclosingJar : enclosingJars) {
                    if (elementPath.lastSegment().equals(enclosingJar.lastSegment())) {
                        return true;
                    }
                }
            }
        }

        return false;
    }

    public boolean encloses(String resourcePath) {
        IPath path = new Path(resourcePath);

        if (path != null) {
            for (String pattern : resourcePatterns) {
                if (path.toPortableString().matches(pattern)) {
                    return true;
                }
            }
        }

        return false;// path != null &&
        // path.lastSegment().endsWith("Service.class");
    }

    public IPath[] enclosingProjectsAndJars() {
        return enclosingJars;
    }

    public boolean includesBinaries() {
        return true;
    }

    public boolean includesClasspaths() {
        return true;
    }

    public void setEnclosingJarPaths(IPath[] jarPaths) {
        enclosingJars = jarPaths;
    }

    public void setIncludesBinaries(boolean includesBinaries) {
    }

    public void setIncludesClasspaths(boolean includesClasspaths) {
    }

    public void setResourcePattern(String[] patterns) {
        this.resourcePatterns = patterns;
    }

}