/MSNPSHARP_DEV/MSNPSharp/Services/ABServiceBindingWrapper.cs
C# | 72 lines | 36 code | 7 blank | 29 comment | 2 complexity | 7a8ead32280382cd0876cd0d2961286a MD5 | raw file
- #region
- /*
- Copyright (c) 2002-2012, Bas Geertsema, Xih Solutions
- (http://www.xihsolutions.net), Thiago.Sayao, Pang Wu, Ethem Evlice, Andy Phan, Chang Liu.
- All rights reserved. http://code.google.com/p/msnp-sharp/
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
- * Neither the names of Bas Geertsema or Xih Solutions nor the names of its
- contributors may be used to endorse or promote products derived from this
- software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS'
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- THE POSSIBILITY OF SUCH DAMAGE.
- */
- #endregion
-
- using System;
- using System.Collections.Generic;
- using System.Text;
- using System.Net;
- using System.Net.Sockets;
-
- namespace MSNPSharp.Services
- {
- using MSNPSharp.MSNWS.MSNABSharingService;
-
- [System.Web.Services.WebServiceBindingAttribute(Name = "ABServiceBinding", Namespace = "http://www.msn.com/webservices/AddressBook")]
- internal sealed class ABServiceBindingWrapper : ABServiceBinding
- {
- private IPEndPoint localEndPoint = null;
-
- public ABServiceBindingWrapper()
- : base()
- {
- }
-
- public ABServiceBindingWrapper(IPEndPoint localEndPoint, NSMessageHandler nsHandler)
- : this()
- {
- this.localEndPoint = localEndPoint;
-
- SingleSignOnManager.RenewIfExpired(nsHandler, SSOTicketType.Contact);
- }
-
- protected override WebRequest GetWebRequest(Uri uri)
- {
- WebRequest request = base.GetWebRequest(uri);
- HttpWebRequest httpRequest = request as HttpWebRequest;
- if (httpRequest != null)
- {
- httpRequest.ServicePoint.BindIPEndPointDelegate = new BindIPEndPoint((new IPEndPointCallback(localEndPoint)).BindIPEndPointCallback);
- }
- return request;
- }
- }
- };