// Generated by xsd compiler for ios/objective-c
// DO NOT CHANGE!

#import <Foundation/Foundation.h>
#import "PicoClassSchema.h"
#import "PicoPropertySchema.h"
#import "PicoConstants.h"
#import "PicoBindable.h"



/**
 
 Contains the definition of a rule that governs the number of times your
 application can access the eBay API (invoke a call) on an hourly, daily, or
 periodic basis.
 
 
 @ingroup EBayAPIInterface
*/
@interface Trading_ApiAccessRuleType : NSObject <PicoBindable> {

@private
    NSString *_callName;
    NSNumber *_countsTowardAggregate;
    NSNumber *_dailyHardLimit;
    NSNumber *_dailySoftLimit;
    NSNumber *_dailyUsage;
    NSNumber *_hourlyHardLimit;
    NSNumber *_hourlySoftLimit;
    NSNumber *_hourlyUsage;
    NSNumber *_period;
    NSNumber *_periodicHardLimit;
    NSNumber *_periodicSoftLimit;
    NSNumber *_periodicUsage;
    NSDate *_periodicStartDate;
    NSDate *_modTime;
    NSString *_ruleCurrentStatus;
    NSString *_ruleStatus;
    NSMutableArray *_any;

}


/**
 
 The name of the call that has an access rule. Can be a call name (e.g.,
 AddItem), ApplicationAggregate (returns totals for all calls),
 PasswordAuthenticationLimiter (dummy call), or NonUTF8UsageLimiter.
 
 
 type : NSString, wrapper for primitive string
*/
@property (nonatomic, retain) NSString *callName;

/**
 
 Whether use of this call counts toward the application's
 aggregate limit for all calls.
 
 
 type : NSNumber, wrapper for primitive bool
*/
@property (nonatomic, retain) NSNumber *countsTowardAggregate;

/**
 
 The number of calls per day that your application can make to this call before
 being refused.
 The day starts at midnight, 00:00:00 PST (not GMT).
 
 
 type : NSNumber, wrapper for primitive long
*/
@property (nonatomic, retain) NSNumber *dailyHardLimit;

/**
 
 The number of calls per day that your application can make to this call
 before you receive a warning.
 The day starts at midnight, 00:00:00 PST.
 
 
 type : NSNumber, wrapper for primitive long
*/
@property (nonatomic, retain) NSNumber *dailySoftLimit;

/**
 
  The number of times your application has used this
  call today.
 
 
 type : NSNumber, wrapper for primitive long
*/
@property (nonatomic, retain) NSNumber *dailyUsage;

/**
 
 The number of calls that your application can make per hour to this call
 before being refused. Each count begins on the hour (e.g. 1:00:00).
 
 
 type : NSNumber, wrapper for primitive long
*/
@property (nonatomic, retain) NSNumber *hourlyHardLimit;

/**
 
 The number of calls that your application can make to this call per hour
 before you receive a warning. Each count begins on the hour (e.g. 1:00:00).
 
 
 type : NSNumber, wrapper for primitive long
*/
@property (nonatomic, retain) NSNumber *hourlySoftLimit;

/**
 
 The number of times your application has executed this call during this hour.
 
 
 type : NSNumber, wrapper for primitive long
*/
@property (nonatomic, retain) NSNumber *hourlyUsage;

/**
 
 The length of time before your application's perodic usage counter restarts
 for this call. If the number of calls you make exceeds the periodic hard limit
 before the current period ends, further calls will be refused until the next
 period starts. Possible values: -1 (Periodic limit not enforced, could be any
 negative integer), 0 (Calendar month), 30 (Number of days, could be any
 positive integer). If the period is based on the calendar month, the usage
 counters restart on the same day of every month, regardless of the number of
 days in the month.
 
 
 type : NSNumber, wrapper for primitive int
*/
@property (nonatomic, retain) NSNumber *period;

/**
 
 Number of calls per period that your application may make before a call is
 refused, if the periodic limit is enforced. The length of the period is
 specified in Period.
 
 
 type : NSNumber, wrapper for primitive long
*/
@property (nonatomic, retain) NSNumber *periodicHardLimit;

/**
 
 Number of calls per period that your application may make before you receive a
 warning, if the periodic limit is enforced. The length of the period is
 specified in Period.
 
 
 type : NSNumber, wrapper for primitive long
*/
@property (nonatomic, retain) NSNumber *periodicSoftLimit;

/**
 
 Number of calls that your application has already made this period. Returns 0
 if the periodic access rule has not been configured for the application. The
 length of the period is specified in Period. The start date of the period is
 specified in PeriodicStartDate.
 
 
 type : NSNumber, wrapper for primitive long
*/
@property (nonatomic, retain) NSNumber *periodicUsage;

/**
 
 The time (in GMT) when this access rule's period started. The period starts at
 midnight Pacific time. For example, if the period begins on June 29 in 2005
 when California is on Pacific Daylight Time, the GMT value returned would be
 2005-06-29T07:00:00.000Z If the period begins on December 29 in 2005 when
 California is on Pacific Standard Time, the GMT value returned would be
 2005-12-29T08:00:00.000Z. Only returned when the eBay Developers Program has
 configured the start date for the access rule. The start date can vary per
 application and per call name (i.e., per access rule).
 
 
 type : NSDate, wrapper for primitive date
*/
@property (nonatomic, retain) NSDate *periodicStartDate;

/**
 
 The date and time this access rule was last modified by eBay.
 
 
 type : NSDate, wrapper for primitive date
*/
@property (nonatomic, retain) NSDate *modTime;

/**
 
 Your application's current status for this rule, including whether the rule is
 set for your application and whether the application has exceeded its daily or
 hourly limit.
 
 
 type: string constant in Trading_AccessRuleCurrentStatusCodeType.h
*/
@property (nonatomic, retain) NSString *ruleCurrentStatus;

/**
 
 The status of the access rule, including whether the rule is turned on or off
 and whether the application is currently blocked from using this call. No
 effect if RuleCurrentStatus is set to NotSet.
 
 
 type: string constant in Trading_AccessRuleStatusCodeType.h
*/
@property (nonatomic, retain) NSString *ruleStatus;

/**
 (public property)
 
 entry type : PicoAnyElement, wrapper for primitive anyelement
*/

@property (nonatomic, retain) NSMutableArray *any;


@end
