Type.registerNamespace('FabTex');
FabTex.IOrderSamples = function() {
    FabTex.IOrderSamples.initializeBase(this);
    this._timeout = 0;
    this._userContext = null;
    this._succeeded = null;
    this._failed = null;
}
FabTex.IOrderSamples.prototype = {
    _get_path: function() {
        var p = this.get_path();
        if (p) return p;
        else return FabTex.IOrderSamples._staticInstance.get_path();
    },
    AddToShoppingCart: function(shoppingCartItems, succeededCallback, failedCallback, userContext) {
        /// <param name="shoppingCartItems" type="Array">ShoppingCartItem[]</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(), 'AddToShoppingCart', false, { shoppingCartItems: shoppingCartItems }, succeededCallback, failedCallback, userContext);
    } 
}
FabTex.IOrderSamples.registerClass('FabTex.IOrderSamples', Sys.Net.WebServiceProxy);
FabTex.IOrderSamples._staticInstance = new FabTex.IOrderSamples();
FabTex.IOrderSamples.set_path = function(value) {
    FabTex.IOrderSamples._staticInstance.set_path(value);
}
FabTex.IOrderSamples.get_path = function() {
    /// <value type="String" mayBeNull="true">The service url.</value>
    return FabTex.IOrderSamples._staticInstance.get_path();
}
FabTex.IOrderSamples.set_timeout = function(value) {
    FabTex.IOrderSamples._staticInstance.set_timeout(value);
}
FabTex.IOrderSamples.get_timeout = function() {
    /// <value type="Number">The service timeout.</value>
    return FabTex.IOrderSamples._staticInstance.get_timeout();
}
FabTex.IOrderSamples.set_defaultUserContext = function(value) {
    FabTex.IOrderSamples._staticInstance.set_defaultUserContext(value);
}
FabTex.IOrderSamples.get_defaultUserContext = function() {
    /// <value mayBeNull="true">The service default user context.</value>
    return FabTex.IOrderSamples._staticInstance.get_defaultUserContext();
}
FabTex.IOrderSamples.set_defaultSucceededCallback = function(value) {
    FabTex.IOrderSamples._staticInstance.set_defaultSucceededCallback(value);
}
FabTex.IOrderSamples.get_defaultSucceededCallback = function() {
    /// <value type="Function" mayBeNull="true">The service default succeeded callback.</value>
    return FabTex.IOrderSamples._staticInstance.get_defaultSucceededCallback();
}
FabTex.IOrderSamples.set_defaultFailedCallback = function(value) {
    FabTex.IOrderSamples._staticInstance.set_defaultFailedCallback(value);
}
FabTex.IOrderSamples.get_defaultFailedCallback = function() {
    /// <value type="Function" mayBeNull="true">The service default failed callback.</value>
    return FabTex.IOrderSamples._staticInstance.get_defaultFailedCallback();
}
FabTex.IOrderSamples.set_path("OrderSamplesService.svc");
FabTex.IOrderSamples.AddToShoppingCart = function(shoppingCartItems, onSuccess, onFailed, userContext) {
    /// <param name="shoppingCartItems" type="Array">ShoppingCartItem[]</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>
    FabTex.IOrderSamples._staticInstance.AddToShoppingCart(shoppingCartItems, onSuccess, onFailed, userContext);
}
var gtc = Sys.Net.WebServiceProxy._generateTypedConstructor;
if (typeof (ShoppingCartItem) === 'undefined') {
    var ShoppingCartItem = gtc("ShoppingCartItem:http://schemas.datacontract.org/2004/07/");
    ShoppingCartItem.registerClass('ShoppingCartItem');
}

