Search in sources :

Example 1 with ModuleFilterSpecifier

use of org.eclipse.n4js.n4mf.ModuleFilterSpecifier in project n4js by eclipse.

the class AbstractN4JSCore method handleWildcardsAndRelativeNavigation.

private List<String> handleWildcardsAndRelativeNavigation(String absoluteLocationPath, String projectRelativeSourcePath, ModuleFilter moduleFilter) {
    List<String> relativeResolvedPaths = new ArrayList<>();
    for (ModuleFilterSpecifier spec : moduleFilter.getModuleSpecifiers()) {
        String specPath = spec.getSourcePath();
        if (specPath != null)
            if (projectRelativeSourcePath.equals(specPath) == false)
                // nothing will be found here
                continue;
        String basePathToCheck = absoluteLocationPath + "/" + (specPath != null ? specPath : projectRelativeSourcePath);
        String pathsToFind = "/" + spec.getModuleSpecifierWithWildcard();
        List<String> resolvedPaths = WildcardPathFilter.collectPathsByWildcardPath(basePathToCheck, pathsToFind);
        relativeResolvedPaths.addAll(resolvedPaths);
    }
    return relativeResolvedPaths;
}
Also used : ModuleFilterSpecifier(org.eclipse.n4js.n4mf.ModuleFilterSpecifier) ArrayList(java.util.ArrayList)

Example 2 with ModuleFilterSpecifier

use of org.eclipse.n4js.n4mf.ModuleFilterSpecifier in project n4js by eclipse.

the class N4MFSemanticSequencer method sequence.

@Override
public void sequence(ISerializationContext context, EObject semanticObject) {
    EPackage epackage = semanticObject.eClass().getEPackage();
    ParserRule rule = context.getParserRule();
    Action action = context.getAssignedAction();
    Set<Parameter> parameters = context.getEnabledBooleanParameters();
    if (epackage == N4mfPackage.eINSTANCE)
        switch(semanticObject.eClass().getClassifierID()) {
            case N4mfPackage.BOOTSTRAP_MODULE:
                sequence_BootstrapModule(context, (BootstrapModule) semanticObject);
                return;
            case N4mfPackage.DECLARED_VERSION:
                sequence_DeclaredVersion(context, (DeclaredVersion) semanticObject);
                return;
            case N4mfPackage.EXEC_MODULE:
                sequence_ExecModule(context, (ExecModule) semanticObject);
                return;
            case N4mfPackage.EXTENDED_RUNTIME_ENVIRONMENT:
                sequence_ExtendedRuntimeEnvironment(context, (ExtendedRuntimeEnvironment) semanticObject);
                return;
            case N4mfPackage.IMPLEMENTED_PROJECTS:
                sequence_ImplementedProjects(context, (ImplementedProjects) semanticObject);
                return;
            case N4mfPackage.INIT_MODULES:
                sequence_InitModules(context, (InitModules) semanticObject);
                return;
            case N4mfPackage.MODULE_FILTER:
                sequence_ModuleFilter(context, (ModuleFilter) semanticObject);
                return;
            case N4mfPackage.MODULE_FILTER_SPECIFIER:
                sequence_ModuleFilterSpecifier(context, (ModuleFilterSpecifier) semanticObject);
                return;
            case N4mfPackage.PROJECT_DEPENDENCIES:
                sequence_ProjectDependencies(context, (ProjectDependencies) semanticObject);
                return;
            case N4mfPackage.PROJECT_DEPENDENCY:
                sequence_ProjectDependency(context, (ProjectDependency) semanticObject);
                return;
            case N4mfPackage.PROJECT_DESCRIPTION:
                sequence_ProjectDescription(context, (ProjectDescription) semanticObject);
                return;
            case N4mfPackage.PROJECT_REFERENCE:
                sequence_ProjectReference(context, (ProjectReference) semanticObject);
                return;
            case N4mfPackage.PROVIDED_RUNTIME_LIBRARIES:
                sequence_ProvidedRuntimeLibraries(context, (ProvidedRuntimeLibraries) semanticObject);
                return;
            case N4mfPackage.PROVIDED_RUNTIME_LIBRARY_DEPENDENCY:
                sequence_ProvidedRuntimeLibraryDependency(context, (ProvidedRuntimeLibraryDependency) semanticObject);
                return;
            case N4mfPackage.REQUIRED_RUNTIME_LIBRARIES:
                sequence_RequiredRuntimeLibraries(context, (RequiredRuntimeLibraries) semanticObject);
                return;
            case N4mfPackage.REQUIRED_RUNTIME_LIBRARY_DEPENDENCY:
                sequence_RequiredRuntimeLibraryDependency(context, (RequiredRuntimeLibraryDependency) semanticObject);
                return;
            case N4mfPackage.SIMPLE_PROJECT_DESCRIPTION:
                sequence_SimpleProjectDescription(context, (SimpleProjectDescription) semanticObject);
                return;
            case N4mfPackage.SOURCE_FRAGMENT:
                sequence_SourceFragment(context, (SourceFragment) semanticObject);
                return;
            case N4mfPackage.TESTED_PROJECT:
                sequence_TestedProject(context, (TestedProject) semanticObject);
                return;
            case N4mfPackage.TESTED_PROJECTS:
                sequence_TestedProjects(context, (TestedProjects) semanticObject);
                return;
            case N4mfPackage.VERSION_CONSTRAINT:
                sequence_VersionConstraint(context, (VersionConstraint) semanticObject);
                return;
        }
    if (errorAcceptor != null)
        errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
}
Also used : ModuleFilterSpecifier(org.eclipse.n4js.n4mf.ModuleFilterSpecifier) ParserRule(org.eclipse.xtext.ParserRule) ImplementedProjects(org.eclipse.n4js.n4mf.ImplementedProjects) Action(org.eclipse.xtext.Action) ProjectReference(org.eclipse.n4js.n4mf.ProjectReference) VersionConstraint(org.eclipse.n4js.n4mf.VersionConstraint) TestedProjects(org.eclipse.n4js.n4mf.TestedProjects) SimpleProjectDescription(org.eclipse.n4js.n4mf.SimpleProjectDescription) ProjectDependencies(org.eclipse.n4js.n4mf.ProjectDependencies) RequiredRuntimeLibraryDependency(org.eclipse.n4js.n4mf.RequiredRuntimeLibraryDependency) EPackage(org.eclipse.emf.ecore.EPackage) SourceFragment(org.eclipse.n4js.n4mf.SourceFragment) ExecModule(org.eclipse.n4js.n4mf.ExecModule) ProjectDescription(org.eclipse.n4js.n4mf.ProjectDescription) SimpleProjectDescription(org.eclipse.n4js.n4mf.SimpleProjectDescription) BootstrapModule(org.eclipse.n4js.n4mf.BootstrapModule) TestedProject(org.eclipse.n4js.n4mf.TestedProject) ExtendedRuntimeEnvironment(org.eclipse.n4js.n4mf.ExtendedRuntimeEnvironment) ProvidedRuntimeLibraries(org.eclipse.n4js.n4mf.ProvidedRuntimeLibraries) ProvidedRuntimeLibraryDependency(org.eclipse.n4js.n4mf.ProvidedRuntimeLibraryDependency) ProjectDependency(org.eclipse.n4js.n4mf.ProjectDependency) RequiredRuntimeLibraries(org.eclipse.n4js.n4mf.RequiredRuntimeLibraries) ModuleFilter(org.eclipse.n4js.n4mf.ModuleFilter) InitModules(org.eclipse.n4js.n4mf.InitModules) Parameter(org.eclipse.xtext.Parameter) DeclaredVersion(org.eclipse.n4js.n4mf.DeclaredVersion)

Aggregations

ModuleFilterSpecifier (org.eclipse.n4js.n4mf.ModuleFilterSpecifier)2 ArrayList (java.util.ArrayList)1 EPackage (org.eclipse.emf.ecore.EPackage)1 BootstrapModule (org.eclipse.n4js.n4mf.BootstrapModule)1 DeclaredVersion (org.eclipse.n4js.n4mf.DeclaredVersion)1 ExecModule (org.eclipse.n4js.n4mf.ExecModule)1 ExtendedRuntimeEnvironment (org.eclipse.n4js.n4mf.ExtendedRuntimeEnvironment)1 ImplementedProjects (org.eclipse.n4js.n4mf.ImplementedProjects)1 InitModules (org.eclipse.n4js.n4mf.InitModules)1 ModuleFilter (org.eclipse.n4js.n4mf.ModuleFilter)1 ProjectDependencies (org.eclipse.n4js.n4mf.ProjectDependencies)1 ProjectDependency (org.eclipse.n4js.n4mf.ProjectDependency)1 ProjectDescription (org.eclipse.n4js.n4mf.ProjectDescription)1 ProjectReference (org.eclipse.n4js.n4mf.ProjectReference)1 ProvidedRuntimeLibraries (org.eclipse.n4js.n4mf.ProvidedRuntimeLibraries)1 ProvidedRuntimeLibraryDependency (org.eclipse.n4js.n4mf.ProvidedRuntimeLibraryDependency)1 RequiredRuntimeLibraries (org.eclipse.n4js.n4mf.RequiredRuntimeLibraries)1 RequiredRuntimeLibraryDependency (org.eclipse.n4js.n4mf.RequiredRuntimeLibraryDependency)1 SimpleProjectDescription (org.eclipse.n4js.n4mf.SimpleProjectDescription)1 SourceFragment (org.eclipse.n4js.n4mf.SourceFragment)1