2 * Copyright 2000-2009 JetBrains s.r.o.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package com
.intellij
.facet
.impl
.autodetecting
;
19 import com
.intellij
.facet
.Facet
;
20 import com
.intellij
.facet
.FacetConfiguration
;
21 import com
.intellij
.facet
.FacetType
;
22 import com
.intellij
.facet
.autodetecting
.FacetDetector
;
23 import com
.intellij
.facet
.autodetecting
.UnderlyingFacetSelector
;
24 import com
.intellij
.facet
.impl
.autodetecting
.model
.FacetInfo2
;
25 import com
.intellij
.facet
.impl
.autodetecting
.model
.ProjectFacetInfoSet
;
26 import com
.intellij
.openapi
.module
.Module
;
27 import com
.intellij
.openapi
.module
.ModuleUtil
;
28 import com
.intellij
.openapi
.vfs
.VirtualFile
;
29 import com
.intellij
.openapi
.vfs
.VirtualFileFilter
;
30 import com
.intellij
.psi
.PsiManager
;
31 import org
.jetbrains
.annotations
.Nullable
;
36 public class FacetByVirtualFileDetectorWrapper
<C
extends FacetConfiguration
, F
extends Facet
<C
>, U
extends FacetConfiguration
> extends FacetDetectorWrapper
<VirtualFile
, C
, F
, U
> {
37 public FacetByVirtualFileDetectorWrapper(ProjectFacetInfoSet projectFacetSet
, FacetType
<F
, C
> facetType
,
38 final AutodetectionFilter autodetectionFilter
, final VirtualFileFilter virtualFileFilter
,
39 final FacetDetector
<VirtualFile
, C
> facetDetector
,
40 final UnderlyingFacetSelector
<VirtualFile
, U
> selector
) {
41 super(projectFacetSet
, facetType
, autodetectionFilter
, virtualFileFilter
, facetDetector
, selector
);
45 public FacetInfo2
<Module
> detectFacet(final VirtualFile virtualFile
, final PsiManager psiManager
) {
46 Module module
= ModuleUtil
.findModuleForFile(virtualFile
, psiManager
.getProject());
50 return detectFacet(module
, virtualFile
, virtualFile
);