Type.registerNamespace('SoL.WebApp.Services');
SoL.WebApp.Services.NewsletterServices=function() {
SoL.WebApp.Services.NewsletterServices.initializeBase(this);
this._timeout = 0;
this._userContext = null;
this._succeeded = null;
this._failed = null;
}
SoL.WebApp.Services.NewsletterServices.prototype={
_get_path:function() {
 var p = this.get_path();
 if (p) return p;
 else return SoL.WebApp.Services.NewsletterServices._staticInstance.get_path();},
Subscribe:function(cblProductCategories,email,succeededCallback, failedCallback, userContext) {
/// <param name="cblProductCategories" type="Array">System.String[]</param>
/// <param name="email" type="String">System.String</param>
/// <param name="succeededCallback" type="Function" optional="true" mayBeNull="true"></param>
/// <param name="failedCallback" type="Function" optional="true" mayBeNull="true"></param>
/// <param name="userContext" optional="true" mayBeNull="true"></param>
return this._invoke(this._get_path(), 'Subscribe',false,{cblProductCategories:cblProductCategories,email:email},succeededCallback,failedCallback,userContext); }}
SoL.WebApp.Services.NewsletterServices.registerClass('SoL.WebApp.Services.NewsletterServices',Sys.Net.WebServiceProxy);
SoL.WebApp.Services.NewsletterServices._staticInstance = new SoL.WebApp.Services.NewsletterServices();
SoL.WebApp.Services.NewsletterServices.set_path = function(value) {
SoL.WebApp.Services.NewsletterServices._staticInstance.set_path(value); }
SoL.WebApp.Services.NewsletterServices.get_path = function() { 
/// <value type="String" mayBeNull="true">The service url.</value>
return SoL.WebApp.Services.NewsletterServices._staticInstance.get_path();}
SoL.WebApp.Services.NewsletterServices.set_timeout = function(value) {
SoL.WebApp.Services.NewsletterServices._staticInstance.set_timeout(value); }
SoL.WebApp.Services.NewsletterServices.get_timeout = function() { 
/// <value type="Number">The service timeout.</value>
return SoL.WebApp.Services.NewsletterServices._staticInstance.get_timeout(); }
SoL.WebApp.Services.NewsletterServices.set_defaultUserContext = function(value) { 
SoL.WebApp.Services.NewsletterServices._staticInstance.set_defaultUserContext(value); }
SoL.WebApp.Services.NewsletterServices.get_defaultUserContext = function() { 
/// <value mayBeNull="true">The service default user context.</value>
return SoL.WebApp.Services.NewsletterServices._staticInstance.get_defaultUserContext(); }
SoL.WebApp.Services.NewsletterServices.set_defaultSucceededCallback = function(value) { 
 SoL.WebApp.Services.NewsletterServices._staticInstance.set_defaultSucceededCallback(value); }
SoL.WebApp.Services.NewsletterServices.get_defaultSucceededCallback = function() { 
/// <value type="Function" mayBeNull="true">The service default succeeded callback.</value>
return SoL.WebApp.Services.NewsletterServices._staticInstance.get_defaultSucceededCallback(); }
SoL.WebApp.Services.NewsletterServices.set_defaultFailedCallback = function(value) { 
SoL.WebApp.Services.NewsletterServices._staticInstance.set_defaultFailedCallback(value); }
SoL.WebApp.Services.NewsletterServices.get_defaultFailedCallback = function() { 
/// <value type="Function" mayBeNull="true">The service default failed callback.</value>
return SoL.WebApp.Services.NewsletterServices._staticInstance.get_defaultFailedCallback(); }
SoL.WebApp.Services.NewsletterServices.set_path("/Services/NewsletterServices.asmx");
SoL.WebApp.Services.NewsletterServices.Subscribe= function(cblProductCategories,email,onSuccess,onFailed,userContext) {
/// <param name="cblProductCategories" type="Array">System.String[]</param>
/// <param name="email" type="String">System.String</param>
/// <param name="succeededCallback" type="Function" optional="true" mayBeNull="true"></param>
/// <param name="failedCallback" type="Function" optional="true" mayBeNull="true"></param>
/// <param name="userContext" optional="true" mayBeNull="true"></param>
SoL.WebApp.Services.NewsletterServices._staticInstance.Subscribe(cblProductCategories,email,onSuccess,onFailed,userContext); }

