3838
3939
4040@attr .s ()
41- class BaseBuildManifestPackage (models .Package , models . PackageManifest ):
41+ class BaseBuildManifestPackage (models .Package ):
4242 file_patterns = tuple ()
4343
4444 @classmethod
4545 def recognize (cls , location ):
46- if not cls ._is_build_manifest (location ):
46+ if not cls .is_manifest (location ):
4747 return
4848
4949 # we use the parent directory as a name
@@ -63,16 +63,9 @@ def recognize(cls, location):
6363 def get_package_root (cls , manifest_resource , codebase ):
6464 return manifest_resource .parent (codebase )
6565
66- @classmethod
67- def _is_build_manifest (cls , location ):
68- if not filetype .is_file (location ):
69- return False
70- fn = fileutils .file_name (location )
71- return any (fn == mf for mf in cls .file_patterns )
72-
7366
7467@attr .s ()
75- class AutotoolsPackage (BaseBuildManifestPackage ):
68+ class AutotoolsPackage (BaseBuildManifestPackage , models . PackageManifest ):
7669 file_patterns = ('configure' , 'configure.ac' ,)
7770 default_type = 'autotools'
7871
@@ -96,10 +89,11 @@ def check_rule_name_ending(rule_name):
9689
9790
9891@attr .s ()
99- class StarlarkManifestPackage (BaseBuildManifestPackage ):
92+ class StarlarkManifestPackage (BaseBuildManifestPackage , models .PackageManifest ):
93+
10094 @classmethod
10195 def recognize (cls , location ):
102- if not cls ._is_build_manifest (location ):
96+ if not cls .is_manifest (location ):
10397 return
10498
10599 # Thanks to Starlark being a Python dialect, we can use the `ast`
@@ -186,15 +180,15 @@ class BuckPackage(StarlarkManifestPackage):
186180
187181
188182@attr .s ()
189- class MetadataBzl (BaseBuildManifestPackage ):
183+ class MetadataBzl (BaseBuildManifestPackage , models . PackageManifest ):
190184 file_patterns = ('METADATA.bzl' ,)
191185 # TODO: Not sure what the default type should be, change this to something
192186 # more appropriate later
193187 default_type = 'METADATA.bzl'
194188
195189 @classmethod
196190 def recognize (cls , location ):
197- if not cls ._is_build_manifest (location ):
191+ if not cls .is_manifest (location ):
198192 return
199193
200194 with open (location , 'rb' ) as f :
0 commit comments