예제 #1
0
            /// <summary>
            /// Loads from json.
            /// </summary>
            /// <param name="jsonProperty">The json property.</param>
            /// <param name="service">The service.</param>
            internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
            {
                base.LoadFromJson(jsonProperty, service);

                foreach (string key in jsonProperty.Keys)
                {
                    switch (key)
                    {
                    case XmlElementNames.DaysOfWeek:
                        this.dayOfTheWeek = jsonProperty.ReadEnumValue <DayOfTheWeek>(key);
                        break;

                    case XmlElementNames.DayOfWeekIndex:
                        this.dayOfTheWeekIndex = jsonProperty.ReadEnumValue <DayOfTheWeekIndex>(key);
                        break;

                    case XmlElementNames.Month:
                        this.month = jsonProperty.ReadEnumValue <Month>(key);
                        break;

                    default:
                        break;
                    }
                }
            }
예제 #2
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service"></param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlElementNames.OofState:
                    this.state = jsonProperty.ReadEnumValue <OofState>(key);
                    break;

                case XmlElementNames.ExternalAudience:
                    this.externalAudience = jsonProperty.ReadEnumValue <OofExternalAudience>(key);
                    break;

                case XmlElementNames.Duration:
                    this.duration = new TimeWindow();
                    this.duration.LoadFromJson(jsonProperty.ReadAsJsonObject(key), service);
                    break;

                case XmlElementNames.InternalReply:
                    this.internalReply = new OofReply();
                    this.internalReply.LoadFromJson(jsonProperty.ReadAsJsonObject(key), service);
                    break;

                case XmlElementNames.ExternalReply:
                    this.externalReply = new OofReply();
                    this.externalReply.LoadFromJson(jsonProperty.ReadAsJsonObject(key), service);
                    break;

                default:
                    break;
                }
            }
        }
예제 #3
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service"></param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlElementNames.PhoneCallState:
                    this.state = jsonProperty.ReadEnumValue <PhoneCallState>(key);
                    break;

                case XmlElementNames.ConnectionFailureCause:
                    this.connectionFailureCause = jsonProperty.ReadEnumValue <ConnectionFailureCause>(key);
                    break;

                case XmlElementNames.SIPResponseText:
                    this.sipResponseText = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.SIPResponseCode:
                    this.sipResponseCode = jsonProperty.ReadAsInt(key);
                    break;

                default:
                    break;
                }
            }
        }
예제 #4
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service">The service.</param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlAttributeNames.Key:
                    this.Key = jsonProperty.ReadEnumValue <EmailAddressKey>(key);
                    break;

                case XmlAttributeNames.Name:
                    this.EmailAddress.Name = jsonProperty.ReadAsString(key);
                    break;

                case XmlAttributeNames.RoutingType:
                    this.EmailAddress.RoutingType = jsonProperty.ReadAsString(key);
                    break;

                case XmlAttributeNames.MailboxType:
                    this.EmailAddress.MailboxType = jsonProperty.ReadEnumValue <MailboxType>(key);
                    break;

                case XmlElementNames.EmailAddress:
                    this.EmailAddress.Address = jsonProperty.ReadAsString(key);
                    break;
                }
            }
        }
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonObject">The json object.</param>
        internal void LoadFromJson(JsonObject jsonObject)
        {
            foreach (string key in jsonObject.Keys)
            {
                switch (key)
                {
                case XmlAttributeNames.DistinguishedPropertySetId:
                    this.propertySet = jsonObject.ReadEnumValue <DefaultExtendedPropertySet>(key);
                    break;

                case XmlAttributeNames.PropertySetId:
                    this.propertySetId = new Guid(jsonObject.ReadAsString(key));
                    break;

                case XmlAttributeNames.PropertyTag:
                    this.tag = Convert.ToUInt16(jsonObject.ReadAsString(key), 16);
                    break;

                case XmlAttributeNames.PropertyName:
                    this.name = jsonObject.ReadAsString(key);
                    break;

                case XmlAttributeNames.PropertyId:
                    this.id = jsonObject.ReadAsInt(key);
                    break;

                case XmlAttributeNames.PropertyType:
                    this.mapiType = jsonObject.ReadEnumValue <MapiPropertyType>(key);
                    break;

                default:
                    break;
                }
            }
        }
            /// <summary>
            /// Loads from json.
            /// </summary>
            /// <param name="jsonProperty">The json property.</param>
            /// <param name="service">The service.</param>
            internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
            {
                base.LoadFromJson(jsonProperty, service);

                this.value           = jsonProperty.ReadAsJsonObject(XmlElementNames.Constant).ReadAsString(XmlElementNames.Value);
                this.containmentMode = jsonProperty.ReadEnumValue <ContainmentMode>(XmlAttributeNames.ContainmentMode);
                this.comparisonMode  = jsonProperty.ReadEnumValue <ComparisonMode>(XmlAttributeNames.ContainmentComparison);
            }
예제 #7
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service"></param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlElementNames.UserId:
                    this.UserId = new UserId();
                    this.UserId.LoadFromJson(jsonProperty.ReadAsJsonObject(key), service);
                    break;

                case XmlElementNames.CanCreateItems:
                    this.canCreateItems = jsonProperty.ReadAsBool(key);
                    break;

                case XmlElementNames.CanCreateSubFolders:
                    this.canCreateSubFolders = jsonProperty.ReadAsBool(key);
                    break;

                case XmlElementNames.IsFolderOwner:
                    this.isFolderOwner = jsonProperty.ReadAsBool(key);
                    break;

                case XmlElementNames.IsFolderVisible:
                    this.isFolderVisible = jsonProperty.ReadAsBool(key);
                    break;

                case XmlElementNames.IsFolderContact:
                    this.isFolderContact = jsonProperty.ReadAsBool(key);
                    break;

                case XmlElementNames.EditItems:
                    this.editItems = jsonProperty.ReadEnumValue <PermissionScope>(key);
                    break;

                case XmlElementNames.DeleteItems:
                    this.deleteItems = jsonProperty.ReadEnumValue <PermissionScope>(key);
                    break;

                case XmlElementNames.ReadItems:
                    this.readItems = jsonProperty.ReadEnumValue <FolderPermissionReadAccess>(key);
                    break;

                case XmlElementNames.PermissionLevel:
                case XmlElementNames.CalendarPermissionLevel:
                    this.permissionLevel = jsonProperty.ReadEnumValue <FolderPermissionLevel>(key);
                    break;

                default:
                    break;
                }
            }

            this.AdjustPermissionLevel();
        }
        /// <summary>
        /// Load from json.
        /// </summary>
        /// <param name="jsonObject">The json object.</param>
        /// <returns>Retention policy tag object.</returns>
        internal static RetentionPolicyTag LoadFromJson(JsonObject jsonObject)
        {
            RetentionPolicyTag retentionPolicyTag = new RetentionPolicyTag();

            if (jsonObject.ContainsKey(XmlElementNames.DisplayName))
            {
                retentionPolicyTag.DisplayName = jsonObject.ReadAsString(XmlElementNames.DisplayName);
            }

            if (jsonObject.ContainsKey(XmlElementNames.RetentionId))
            {
                retentionPolicyTag.RetentionId = new Guid(jsonObject.ReadAsString(XmlElementNames.RetentionId));
            }

            if (jsonObject.ContainsKey(XmlElementNames.RetentionPeriod))
            {
                retentionPolicyTag.RetentionPeriod = jsonObject.ReadAsInt(XmlElementNames.RetentionPeriod);
            }

            if (jsonObject.ContainsKey(XmlElementNames.Type))
            {
                retentionPolicyTag.Type = jsonObject.ReadEnumValue <ElcFolderType>(XmlElementNames.Type);
            }

            if (jsonObject.ContainsKey(XmlElementNames.RetentionAction))
            {
                retentionPolicyTag.RetentionAction = jsonObject.ReadEnumValue <RetentionActionType>(XmlElementNames.RetentionAction);
            }

            if (jsonObject.ContainsKey(XmlElementNames.Description))
            {
                retentionPolicyTag.Description = jsonObject.ReadAsString(XmlElementNames.Description);
            }

            if (jsonObject.ContainsKey(XmlElementNames.IsVisible))
            {
                retentionPolicyTag.IsVisible = jsonObject.ReadAsBool(XmlElementNames.IsVisible);
            }

            if (jsonObject.ContainsKey(XmlElementNames.OptedInto))
            {
                retentionPolicyTag.OptedInto = jsonObject.ReadAsBool(XmlElementNames.OptedInto);
            }

            if (jsonObject.ContainsKey(XmlElementNames.IsArchive))
            {
                retentionPolicyTag.IsArchive = jsonObject.ReadAsBool(XmlElementNames.IsArchive);
            }

            return(retentionPolicyTag);
        }
예제 #9
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service"></param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlElementNames.NumberOfMembers:
                    this.numberOfMembers = jsonProperty.ReadAsInt(key);
                    break;

                case XmlElementNames.NumberOfMembersAvailable:
                    this.numberOfMembersAvailable = jsonProperty.ReadAsInt(key);
                    break;

                case XmlElementNames.NumberOfMembersWithConflict:
                    this.numberOfMembersWithConflict = jsonProperty.ReadAsInt(key);
                    break;

                case XmlElementNames.NumberOfMembersWithNoData:
                    this.numberOfMembersWithNoData = jsonProperty.ReadAsInt(key);
                    break;

                case XmlElementNames.BusyType:
                    this.freeBusyStatus = jsonProperty.ReadEnumValue <LegacyFreeBusyStatus>(key);
                    break;

                default:
                    break;
                }
            }
        }
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service"></param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlElementNames.Bias:
                    this.delta = TimeSpan.FromMinutes(jsonProperty.ReadAsInt(key));
                    break;

                case XmlElementNames.Time:
                    this.timeOfDay = TimeSpan.Parse(jsonProperty.ReadAsString(key));
                    break;

                case XmlElementNames.DayOrder:
                    this.dayOrder = jsonProperty.ReadAsInt(key);
                    break;

                case XmlElementNames.DayOfWeek:
                    this.dayOfTheWeek = jsonProperty.ReadEnumValue <DayOfTheWeek>(key);
                    break;

                case XmlElementNames.Month:
                    this.month = jsonProperty.ReadAsInt(key);
                    break;

                case XmlElementNames.Year:
                    this.year = jsonProperty.ReadAsInt(key);
                    break;

                default:
                    break;
                }
            }
        }
예제 #11
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service">The service.</param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlElementNames.SID:
                    this.sID = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.PrimarySmtpAddress:
                    this.primarySmtpAddress = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.DisplayName:
                    this.displayName = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.DistinguishedUser:
                    this.standardUser = jsonProperty.ReadEnumValue <StandardUser>(key);
                    break;

                default:
                    break;
                }
            }
        }
예제 #12
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service"></param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlElementNames.StartTime:
                    this.startTime = EwsUtilities.ParseAsUnbiasedDatetimescopedToServicetimeZone(
                        jsonProperty.ReadAsString(key),
                        service);
                    break;

                case XmlElementNames.EndTime:
                    this.endTime = EwsUtilities.ParseAsUnbiasedDatetimescopedToServicetimeZone(
                        jsonProperty.ReadAsString(key),
                        service);
                    break;

                case XmlElementNames.BusyType:
                    this.freeBusyStatus = jsonProperty.ReadEnumValue <LegacyFreeBusyStatus>(key);
                    break;

                case XmlElementNames.CalendarEventDetails:
                    this.details = new CalendarEventDetails();
                    this.details.LoadFromJson(jsonProperty.ReadAsJsonObject(key), service);
                    break;

                default:
                    break;
                }
            }
        }
예제 #13
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service">The service.</param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlElementNames.FlagStatus:
                    this.flagStatus = jsonProperty.ReadEnumValue <ItemFlagStatus>(key);
                    break;

                case XmlElementNames.StartDate:
                    this.startDate = service.ConvertUniversalDateTimeStringToLocalDateTime(jsonProperty.ReadAsString(key)).Value;
                    break;

                case XmlElementNames.DueDate:
                    this.dueDate = service.ConvertUniversalDateTimeStringToLocalDateTime(jsonProperty.ReadAsString(key)).Value;
                    break;

                case XmlElementNames.CompleteDate:
                    this.completeDate = service.ConvertUniversalDateTimeStringToLocalDateTime(jsonProperty.ReadAsString(key)).Value;
                    break;

                default:
                    break;
                }
            }
        }
예제 #14
0
 /// <summary>
 /// Loads from json.
 /// </summary>
 /// <param name="jsonProperty">The json property.</param>
 /// <param name="service">The service.</param>
 internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
 {
     this.Key             = jsonProperty.ReadEnumValue <PhysicalAddressKey>(XmlAttributeNames.Key);
     this.Street          = jsonProperty.ReadAsString(XmlElementNames.Street);
     this.City            = jsonProperty.ReadAsString(XmlElementNames.City);
     this.State           = jsonProperty.ReadAsString(XmlElementNames.State);
     this.Street          = jsonProperty.ReadAsString(XmlElementNames.Street);
     this.CountryOrRegion = jsonProperty.ReadAsString(XmlElementNames.CountryOrRegion);
     this.PostalCode      = jsonProperty.ReadAsString(XmlElementNames.PostalCode);
 }
예제 #15
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service"></param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                DelegateFolderPermission delegateFolderPermission = null;

                if (this.delegateFolderPermissions.TryGetValue(key, out delegateFolderPermission))
                {
                    delegateFolderPermission.Initialize(jsonProperty.ReadEnumValue <DelegateFolderPermissionLevel>(key));
                }
            }
        }
예제 #16
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service">The service.</param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            this.date    = DateTime.Parse(jsonProperty.ReadAsString(XmlElementNames.Date));
            this.quality = jsonProperty.ReadEnumValue <SuggestionQuality>(XmlElementNames.DayQuality);

            foreach (object jsonSuggestion in jsonProperty.ReadAsArray(XmlElementNames.SuggestionArray))
            {
                TimeSuggestion timeSuggestion = new TimeSuggestion();

                timeSuggestion.LoadFromJson(jsonSuggestion as JsonObject, service);

                this.timeSuggestions.Add(timeSuggestion);
            }
        }
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service">The service.</param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlElementNames.VotingOptionDisplayName:
                    this.displayName = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.SendPrompt:
                    this.sendPrompt = jsonProperty.ReadEnumValue <SendPrompt>(key);
                    break;

                default:
                    break;
                }
            }
        }
예제 #18
0
            /// <summary>
            /// Loads from json.
            /// </summary>
            /// <param name="jsonProperty">The json property.</param>
            /// <param name="service"></param>
            internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
            {
                base.LoadFromJson(jsonProperty, service);

                foreach (string key in jsonProperty.Keys)
                {
                    switch (key)
                    {
                    case XmlElementNames.DaysOfWeek:
                        this.DaysOfTheWeek.LoadFromJsonValue(jsonProperty.ReadAsString(key));
                        break;

                    case XmlElementNames.FirstDayOfWeek:
                        this.FirstDayOfWeek = jsonProperty.ReadEnumValue <DayOfWeek>(key);
                        break;

                    default:
                        break;
                    }
                }
            }
예제 #19
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service">The service.</param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlElementNames.AssignCategories:
                    this.assignCategories.LoadFromJson(jsonProperty.ReadAsJsonObject(key), service);
                    break;

                case XmlElementNames.CopyToFolder:
                    this.copyToFolder = new FolderId();
                    this.copyToFolder.LoadFromJson(
                        jsonProperty.ReadAsJsonObject(key),
                        service);
                    break;

                case XmlElementNames.Delete:
                    this.delete = jsonProperty.ReadAsBool(key);
                    break;

                case XmlElementNames.ForwardAsAttachmentToRecipients:
                    this.forwardAsAttachmentToRecipients.LoadFromJson(jsonProperty.ReadAsJsonObject(key), service);
                    break;

                case XmlElementNames.ForwardToRecipients:
                    this.forwardToRecipients.LoadFromJson(jsonProperty.ReadAsJsonObject(key), service);
                    break;

                case XmlElementNames.MarkImportance:
                    this.markImportance = jsonProperty.ReadEnumValue <Importance>(key);
                    break;

                case XmlElementNames.MarkAsRead:
                    this.markAsRead = jsonProperty.ReadAsBool(key);
                    break;

                case XmlElementNames.MoveToFolder:
                    this.moveToFolder = new FolderId();
                    this.moveToFolder.LoadFromJson(
                        jsonProperty.ReadAsJsonObject(key),
                        service);
                    break;

                case XmlElementNames.PermanentDelete:
                    this.permanentDelete = jsonProperty.ReadAsBool(key);
                    break;

                case XmlElementNames.RedirectToRecipients:
                    this.redirectToRecipients.LoadFromJson(jsonProperty.ReadAsJsonObject(key), service);
                    break;

                case XmlElementNames.SendSMSAlertToRecipients:
                    EmailAddressCollection smsRecipientCollection = new EmailAddressCollection(XmlElementNames.Address);
                    smsRecipientCollection.LoadFromJson(jsonProperty.ReadAsJsonObject(key), service);
                    this.sendSMSAlertToRecipients = ConvertSMSRecipientsFromEmailAddressCollectionToMobilePhoneCollection(smsRecipientCollection);
                    break;

                case XmlElementNames.ServerReplyWithMessage:
                    this.serverReplyWithMessage = new ItemId();
                    this.serverReplyWithMessage.LoadFromJson(jsonProperty.ReadAsJsonObject(key), service);
                    break;

                case XmlElementNames.StopProcessingRules:
                    this.stopProcessingRules = jsonProperty.ReadAsBool(key);
                    break;

                default:
                    break;
                }
            }
        }
예제 #20
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service">The service.</param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlElementNames.MeetingTime:
                    this.meetingTime = EwsUtilities.ParseAsUnbiasedDatetimescopedToServicetimeZone(jsonProperty.ReadAsString(key), service);
                    break;

                case XmlElementNames.IsWorkTime:
                    this.isWorkTime = jsonProperty.ReadAsBool(key);
                    break;

                case XmlElementNames.SuggestionQuality:
                    this.quality = jsonProperty.ReadEnumValue <SuggestionQuality>(key);
                    break;

                case XmlElementNames.AttendeeConflictDataArray:
                    object[] jsonConflictArray = jsonProperty.ReadAsArray(key);
                    foreach (object conflictObject in jsonConflictArray)
                    {
                        JsonObject jsonConflict = conflictObject as JsonObject;
                        if (jsonConflict != null)
                        {
                            Conflict conflict = null;

                            switch (jsonConflict.ReadTypeString())
                            {
                            case XmlElementNames.UnknownAttendeeConflictData:
                                conflict = new Conflict(ConflictType.UnknownAttendeeConflict);
                                break;

                            case XmlElementNames.TooBigGroupAttendeeConflictData:
                                conflict = new Conflict(ConflictType.GroupTooBigConflict);
                                break;

                            case XmlElementNames.IndividualAttendeeConflictData:
                                conflict = new Conflict(ConflictType.IndividualAttendeeConflict);
                                break;

                            case XmlElementNames.GroupAttendeeConflictData:
                                conflict = new Conflict(ConflictType.GroupConflict);
                                break;

                            default:
                                EwsUtilities.Assert(
                                    false,
                                    "TimeSuggestion.TryReadElementFromJson",
                                    string.Format("The {0} element name does not map to any AttendeeConflict descendant.", jsonConflict.ReadTypeString()));

                                // The following line to please the compiler
                                break;
                            }

                            conflict.LoadFromJson(jsonConflict, service);

                            this.conflicts.Add(conflict);
                        }
                    }

                    break;

                default:
                    break;
                }
            }
        }
예제 #21
0
 /// <summary>
 /// Loads from json.
 /// </summary>
 /// <param name="jsonProperty">The json property.</param>
 /// <param name="service">The service.</param>
 internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
 {
     this.Key       = jsonProperty.ReadEnumValue <ImAddressKey>(XmlAttributeNames.Key);
     this.ImAddress = jsonProperty.ReadAsString(XmlElementNames.ImAddress);
 }
예제 #22
0
 /// <summary>
 /// Loads from json.
 /// </summary>
 /// <param name="jsonProperty">The json property.</param>
 /// <param name="service">The service.</param>
 internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
 {
     this.Key         = jsonProperty.ReadEnumValue <PhoneNumberKey>(XmlAttributeNames.Key);
     this.PhoneNumber = jsonProperty.ReadAsString(XmlElementNames.PhoneNumber);
 }
예제 #23
0
        /// <summary>
        /// Loads from json.
        /// </summary>
        /// <param name="jsonProperty">The json property.</param>
        /// <param name="service"></param>
        internal override void LoadFromJson(JsonObject jsonProperty, ExchangeService service)
        {
            foreach (string key in jsonProperty.Keys)
            {
                switch (key)
                {
                case XmlElementNames.Street:
                    this.street = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.City:
                    this.city = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.Country:
                    this.country = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.PostalCode:
                    this.postalCode = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.PostOfficeBox:
                    this.postOfficeBox = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.PostalAddressType:
                    this.type = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.Latitude:
                    this.latitude = jsonProperty.ReadAsDouble(key);
                    break;

                case XmlElementNames.Longitude:
                    this.longitude = jsonProperty.ReadAsDouble(key);
                    break;

                case XmlElementNames.Accuracy:
                    this.accuracy = jsonProperty.ReadAsDouble(key);
                    break;

                case XmlElementNames.Altitude:
                    this.altitude = jsonProperty.ReadAsDouble(key);
                    break;

                case XmlElementNames.AltitudeAccuracy:
                    this.altitudeAccuracy = jsonProperty.ReadAsDouble(key);
                    break;

                case XmlElementNames.FormattedAddress:
                    this.formattedAddress = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.LocationUri:
                    this.uri = jsonProperty.ReadAsString(key);
                    break;

                case XmlElementNames.LocationSource:
                    this.source = jsonProperty.ReadEnumValue <LocationSource>(key);
                    break;

                default:
                    break;
                }
            }
        }