Exemple #1
0
 public Backend(IServerApi serverApi, DDatabaseInfo databaseInfo, IMessagesApi messagesApi, IChangesetUploader changesetUploader)
 {
     _serverApi         = serverApi;
     _databaseInfo      = databaseInfo;
     _messagesApi       = messagesApi;
     _changesetUploader = changesetUploader;
     _metadata          = _serverApi.GetMetadata(databaseInfo.MetadataVersion);
     _types             = _metadata.Types.ToDictionary(k => k.Id, v => v);
     _currentPerson     = databaseInfo.Person;
 }
Exemple #2
0
        public SourcePObject(INObject source, INMetadata metadata, IReadOnlyDictionary <int, INPerson> people, IServerApiService serverApi) : base(source, metadata, people)
        {
            Title    = "Source files";
            Children = source.Dto.GetStorageChildren(serverApi).ToList();
            SourceId = source.Id;
            //Id = Guid.Empty;

            var type = metadata.Types.FirstOrDefault(t => t.Name == SystemTypes.PROJECT_FOLDER);

            Type = new PType(type);
        }
Exemple #3
0
        private void LoadMetadata(long version)
        {
            CheckApi();
            _metadata = _serverApi.GetMetadata(version);
            _types    = _metadata.Types.ToDictionary(k => k.Id, v => v);

            _states.Clear();
            _statesById.Clear();
            foreach (var state in _metadata.UserStates)
            {
                _states[state.Name]   = state;
                _statesById[state.Id] = state;
            }

            _stateMachines.Clear();
            foreach (var stateMachine in _metadata.StateMachines)
            {
                _stateMachines[stateMachine.Id] = stateMachine;
            }
        }
Exemple #4
0
        public PObject(INObject source, INMetadata metadata, IReadOnlyDictionary <int, INPerson> people)
        {
            Id                    = source.Id;
            ParentId              = source.ParentId;
            LastChange            = source.LastChange;
            Children              = source.Children;
            Relations             = source.Relations;
            Subscribers           = source.Subscribers;
            Attributes            = source.Attributes.ToDictionary(k => k.Key, v => v.Value.Value);
            ActualFileSnapshot    = source.ActualFileSnapshot;
            PreviousFileSnapshots = source.PreviousFileSnapshots;
            Created               = source.Created;
            Access                = source.Access;
            StateInfo             = source.StateInfo;
            SecretInfo            = source.SecretInfo;
            Context               = source.Context;

            var type = metadata.Types.FirstOrDefault(t => t.Id == source.TypeId);

            Type  = new PType(type);
            Title = source.GetTitle(type);
            people.TryGetValue(source.CreatorId, out var nPerson);
            Creator = nPerson;
        }