protected override void DeserializeFromStream(CitpBinaryReader reader) { base.DeserializeFromStream(reader); switch (Version) { case MsexVersion.Version1_1: { LibraryId = MsexLibraryId.FromByteArray(reader.ReadBytes(4)); int elementCount = reader.ReadByte(); Information = new List <CitpGenericInformation>(elementCount); for (int i = 0; i < elementCount; ++i) { Information.Add(new CitpGenericInformation { ElementNumber = reader.ReadByte(), DmxRangeMin = reader.ReadByte(), DmxRangeMax = reader.ReadByte(), Name = reader.ReadString(), VersionTimestamp = DateTimeHelpers.ConvertFromUnixTimestamp(reader.ReadUInt64()) }); } } break; case MsexVersion.Version1_2: { LibraryId = MsexLibraryId.FromByteArray(reader.ReadBytes(4)); int elementCount = reader.ReadUInt16(); Information = new List <CitpGenericInformation>(elementCount); for (int i = 0; i < elementCount; ++i) { Information.Add(new CitpGenericInformation { ElementNumber = reader.ReadByte(), SerialNumber = reader.ReadUInt32(), DmxRangeMin = reader.ReadByte(), DmxRangeMax = reader.ReadByte(), Name = reader.ReadString(), VersionTimestamp = DateTimeHelpers.ConvertFromUnixTimestamp(reader.ReadUInt64()) }); } } break; } }
protected override void DeserializeFromStream(CitpBinaryReader reader) { base.DeserializeFromStream(reader); switch (Version) { case MsexVersion.Version1_0: { LibraryNumber = reader.ReadByte(); int mediaCount = reader.ReadByte(); Media = new List <CitpMediaInformation>(mediaCount); for (int i = 0; i < mediaCount; ++i) { Media.Add(new CitpMediaInformation { ElementNumber = reader.ReadByte(), DmxRangeMin = reader.ReadByte(), DmxRangeMax = reader.ReadByte(), Name = reader.ReadString(), MediaVersionTimestamp = DateTimeHelpers.ConvertFromUnixTimestamp(reader.ReadUInt64()), MediaWidth = reader.ReadUInt16(), MediaHeight = reader.ReadUInt16(), MediaLength = reader.ReadUInt32(), MediaFps = reader.ReadByte() }); } } break; case MsexVersion.Version1_1: { LibraryId = MsexLibraryId.FromByteArray(reader.ReadBytes(4)); int mediaCount = reader.ReadByte(); Media = new List <CitpMediaInformation>(mediaCount); for (int i = 0; i < mediaCount; ++i) { Media.Add(new CitpMediaInformation { ElementNumber = reader.ReadByte(), DmxRangeMin = reader.ReadByte(), DmxRangeMax = reader.ReadByte(), Name = reader.ReadString(), MediaVersionTimestamp = DateTimeHelpers.ConvertFromUnixTimestamp(reader.ReadUInt64()), MediaWidth = reader.ReadUInt16(), MediaHeight = reader.ReadUInt16(), MediaLength = reader.ReadUInt32(), MediaFps = reader.ReadByte() }); } } break; case MsexVersion.Version1_2: { LibraryId = MsexLibraryId.FromByteArray(reader.ReadBytes(4)); int mediaCount = reader.ReadUInt16(); Media = new List <CitpMediaInformation>(mediaCount); for (int i = 0; i < mediaCount; ++i) { Media.Add(new CitpMediaInformation { ElementNumber = reader.ReadByte(), SerialNumber = reader.ReadUInt32(), DmxRangeMin = reader.ReadByte(), DmxRangeMax = reader.ReadByte(), Name = reader.ReadString(), MediaVersionTimestamp = DateTimeHelpers.ConvertFromUnixTimestamp(reader.ReadUInt64()), MediaWidth = reader.ReadUInt16(), MediaHeight = reader.ReadUInt16(), MediaLength = reader.ReadUInt32(), MediaFps = reader.ReadByte() }); } } break; } }
private void AddActivity() { try { if (_appEnvironment.ServiceConnector == null) { throw new NullReferenceException($"Null reference of { nameof(_appEnvironment.ServiceConnector) }"); } var activityDto = new ActivityDto { ProfileId = SessionStorage.Instance.ProfileId, IsStarted = false, Category = "", Description = NewActivityDescription, PlannedBeginTime = (Int64)DateTimeHelpers.ConvertToUnixTimestamp(DateTime.Now.AddHours(2).ToUniversalTime()) }; var response = _appEnvironment.ServiceConnector.Post <ActivityDto, ActivityDto, ErrorMsgDto>(new Request <ActivityDto> { AuthToken = new KeyValuePair <string, string>("session_token", SessionStorage.Instance.SessionId), Body = activityDto, OpName = OperationType.CreateActivity }); if (response.SuccessBody != null) { var newActivity = new ActivityDomainModel(); newActivity.Id = response.SuccessBody.Id; newActivity.IsStarted = response.SuccessBody.IsStarted; newActivity.ProfileId = response.SuccessBody.ProfileId; newActivity.Description = response.SuccessBody.Description; newActivity.Category = response.SuccessBody.Category; newActivity.PlannedBeginTime = DateTimeHelpers.ConvertFromUnixTimestamp(response.SuccessBody.PlannedBeginTime).ToLocalTime(); newActivity.CreatedAt = DateTimeHelpers.ConvertFromUnixTimestamp(response.SuccessBody.CreatedAt).ToLocalTime(); newActivity.BeginTime = DateTimeHelpers.ConvertFromUnixTimestamp(response.SuccessBody.BeginTime).ToLocalTime(); newActivity.DurationSeconds = response.SuccessBody.ActualDuration; if (response.SuccessBody.WorkIntervals != null) { foreach (var interval in activityDto.WorkIntervals) { newActivity.WorkIntervals.Add(new WorkInterval() { Begin = DateTimeHelpers.ConvertFromUnixTimestamp(interval.Begin).ToLocalTime(), End = DateTimeHelpers.ConvertFromUnixTimestamp(interval.End).ToLocalTime() }); } } Activities.Add(newActivity); } } catch (ApplicationException e) { Logger.Log.Debug(e.Message); } catch (Exception e) { Logger.Log.Debug(e.Message); } }
private void GetAllActivities() { try { if (_appEnvironment.ServiceConnector == null) { throw new NullReferenceException($"Null reference of { nameof(_appEnvironment.ServiceConnector) }"); } Double totalSeconds = default(Double); var userInfo = new UserInfoDto() { ProfileId = SessionStorage.Instance.ProfileId }; var response = _appEnvironment.ServiceConnector.Get <UserInfoDto, List <ActivityDto>, ErrorMsgDto>(new Request <UserInfoDto> { AuthToken = new KeyValuePair <string, string>("session_token", SessionStorage.Instance.SessionId), Body = userInfo, OpName = OperationType.GetActivities }); if (response.SuccessBody != null) { foreach (var activityDto in response.SuccessBody) { var existedActivity = Activities.Where(a => { return(a.Id == activityDto.Id); }).FirstOrDefault(); if (existedActivity == null) { var newActivity = new ActivityDomainModel(); using (UntrackedContext <ActivityDomainModel> .Untrack(newActivity)) { newActivity.Id = activityDto.Id; newActivity.ProfileId = activityDto.ProfileId; newActivity.IsStarted = activityDto.IsStarted; newActivity.Description = activityDto.Description; newActivity.Category = activityDto.Category; newActivity.DurationSeconds = activityDto.ActualDuration; newActivity.CreatedAt = DateTimeHelpers.ConvertFromUnixTimestamp(activityDto.CreatedAt).ToLocalTime(); newActivity.BeginTime = DateTimeHelpers.ConvertFromUnixTimestamp(activityDto.BeginTime).ToLocalTime(); newActivity.PlannedBeginTime = DateTimeHelpers.ConvertFromUnixTimestamp(activityDto.PlannedBeginTime).ToLocalTime(); if (activityDto.WorkIntervals != null) { foreach (var interval in activityDto.WorkIntervals) { newActivity.WorkIntervals.Add(new WorkInterval() { Begin = DateTimeHelpers.ConvertFromUnixTimestamp(interval.Begin).ToLocalTime(), End = DateTimeHelpers.ConvertFromUnixTimestamp(interval.End).ToLocalTime() }); } } Activities.Add(newActivity); }; totalSeconds += activityDto.ActualDuration; TotalDurationSeconds = totalSeconds; } } } } catch (ApplicationException e) { Logger.Log.Debug(e.Message); } catch (Exception e) { Logger.Log.Debug(e.Message); } }