public RepositoryService(
            IStatusService statusService,
            ICacheService cacheService,
            ICommitsDetailsService commitsDetailsService,
            Lazy <IRemoteService> remoteService,
            IRepositoryStructureService repositoryStructureService,
            IProgressService progressService,
            IBranchTipMonitorService branchTipMonitorService)
        {
            this.statusService              = statusService;
            this.cacheService               = cacheService;
            this.commitsDetailsService      = commitsDetailsService;
            this.remoteService              = remoteService;
            this.repositoryStructureService = repositoryStructureService;
            this.progressService            = progressService;
            this.branchTipMonitorService    = branchTipMonitorService;

            statusService.StatusChanged += (s, e) => OnStatusChanged(e.NewStatus);
            statusService.RepoChanged   += (s, e) => OnRepoChanged(e.BranchIds);
        }
예제 #2
0
        public Repository(
            MRepository mRepository,
            Lazy <IReadOnlyKeyedList <string, Branch> > branches,
            Lazy <IReadOnlyDictionary <CommitId, Commit> > commits,
            Lazy <Branch> currentBranch,
            Lazy <Commit> currentCommit,
            ICommitsDetailsService commitsDetailsService,
            GitStatus status,
            CommitId rootId,
            CommitId unComittedId)
        {
            MRepository           = mRepository;
            CommitsDetailsService = commitsDetailsService;
            Status = status;

            this.branches      = branches;
            this.commits       = commits;
            this.currentBranch = currentBranch;
            this.currentCommit = currentCommit;
            this.rootId        = rootId;
            this.unComittedId  = unComittedId;
        }