project: Isolate ManifestProject from RepoProject
Create RepoProject and ManifestProject, inheriting from MetaProject,
with methods separated for isolation and clarity.
Change-Id: Ic1d6efc65c99470290fea612e2abaf8670d199f4
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/334139
Tested-by: LaMont Jones <lamontjones@google.com>
Reviewed-by: Mike Frysinger <vapier@google.com>
diff --git a/manifest_xml.py b/manifest_xml.py
index a14cc52..d3e952a 100644
--- a/manifest_xml.py
+++ b/manifest_xml.py
@@ -25,7 +25,8 @@
from git_config import GitConfig, IsId
from git_refs import R_HEADS, HEAD
import platform_utils
-from project import Annotation, RemoteSpec, Project, MetaProject
+from project import (Annotation, RemoteSpec, Project, RepoProject,
+ ManifestProject)
from error import (ManifestParseError, ManifestInvalidPathError,
ManifestInvalidRevisionError)
from wrapper import Wrapper
@@ -360,7 +361,7 @@
# multi-tree.
self._outer_client = outer_client or self
- self.repoProject = MetaProject(self, 'repo',
+ self.repoProject = RepoProject(self, 'repo',
gitdir=os.path.join(repodir, 'repo/.git'),
worktree=os.path.join(repodir, 'repo'))
@@ -953,9 +954,9 @@
def SubmanifestProject(self, submanifest_path):
"""Return a manifestProject for a submanifest."""
subdir = self.SubmanifestInfoDir(submanifest_path)
- mp = MetaProject(self, 'manifests',
- gitdir=os.path.join(subdir, 'manifests.git'),
- worktree=os.path.join(subdir, 'manifests'))
+ mp = ManifestProject(self, 'manifests',
+ gitdir=os.path.join(subdir, 'manifests.git'),
+ worktree=os.path.join(subdir, 'manifests'))
return mp
def GetDefaultGroupsStr(self):