001/* 002 * The MIT License 003 * Copyright (c) 2012 Microsoft Corporation 004 * 005 * Permission is hereby granted, free of charge, to any person obtaining a copy 006 * of this software and associated documentation files (the "Software"), to deal 007 * in the Software without restriction, including without limitation the rights 008 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 009 * copies of the Software, and to permit persons to whom the Software is 010 * furnished to do so, subject to the following conditions: 011 * 012 * The above copyright notice and this permission notice shall be included in 013 * all copies or substantial portions of the Software. 014 * 015 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 016 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 017 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 018 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 019 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 020 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 021 * THE SOFTWARE. 022 */ 023 024package microsoft.exchange.webservices.data.misc; 025 026import microsoft.exchange.webservices.data.ISelfValidate; 027import microsoft.exchange.webservices.data.core.exception.service.local.ServiceValidationException; 028 029/** 030 * Represents a mobile phone. 031 */ 032public final class MobilePhone implements ISelfValidate { 033 034 /** 035 * Name of the mobile phone. 036 */ 037 private String name; 038 039 /** 040 * Phone number of the mobile phone. 041 */ 042 private String phoneNumber; 043 044 /** 045 * Initializes a new instance of the <see cref="MobilePhone"/> class. 046 */ 047 public MobilePhone() { 048 } 049 050 /** 051 * Initializes a new instance of the MobilePhone class. 052 * 053 * @param name The name associated with the mobile phone. 054 * @param phoneNumber The mobile phone number. 055 */ 056 public MobilePhone(String name, String phoneNumber) { 057 this.name = name; 058 this.phoneNumber = phoneNumber; 059 } 060 061 /** 062 * Gets or sets the name associated with this mobile phone. 063 */ 064 public String getName() { 065 return this.name; 066 } 067 068 public void setName(String value) { 069 this.name = value; 070 } 071 072 073 /** 074 * Gets or sets the number of this mobile phone. 075 */ 076 public String getPhoneNumber() { 077 return this.phoneNumber; 078 } 079 080 public void setPhoneNumber(String value) { 081 this.phoneNumber = value; 082 } 083 084 085 /** 086 * Validates this instance. 087 * 088 * @throws ServiceValidationException on validation error 089 */ 090 public void validate() throws ServiceValidationException { 091 if (this.getPhoneNumber() == null || this.getPhoneNumber().isEmpty()) { 092 throw new ServiceValidationException( 093 "PhoneNumber cannot be empty."); 094 } 095 } 096}