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; }
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); }
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; } }
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; }