APObject Class Reference
| Inherits from | NSObject |
| Declared in | APObject.h APObject.m |
Overview
AppPotによって永続化が管理するクラスは全てこのクラスを親クラスとして指定する必要がある。 SDKを利用する開発車はこのクラスが定義している属性を適切に設定することでAppPot SKDによるデータの管理方式やデータ保存場所等を指定する。
Tasks
-
objectIdproperty -
createUserIdproperty -
groupIdsproperty -
isAutoRefreshproperty -
autoRefreshIntervalproperty -
scopeTypeproperty -
lifeSpanproperty -
syncStatusproperty -
persistentTypeproperty -
isUsingLockForUpdateproperty -
createTimeproperty -
updateTimeproperty -
serverUpdateTimeproperty -
– initForServerOnlyWithScopeType: -
– setDefaultProperties -
– saveObject: -
– saveWithBlock: -
– deleteObject: -
– deleteObjectWithBlock: -
– refreshObjectWithBlock: -
+ objectWithId:error: -
+ objectWithId:withBlock:
Properties
autoRefreshInterval
このクラスのデータをサーバー側のデータで更新するまでの間隔。秒単位で指定。Refresh time interval @property refreshInterval
@property (nonatomic) long autoRefreshIntervalDeclared In
APObject.hcreateTime
Created time @property createTime
@property (nonatomic, strong) NSDate *createTimeDeclared In
APObject.hcreateUserId
このデータを作成したユーザーのID @property createUserID
@property (nonatomic) long createUserIdDeclared In
APObject.hgroupIds
このデータへのアクセスができるグループのID @property groupIDs
@property (nonatomic, strong) NSString *groupIdsDeclared In
APObject.hisAutoRefresh
このクラスの情報を定期的にサーバーからアップデートするかとうかを指定。Desice if data of this class refreshed automatically by the value in the server. @property doRefreshAutomatically
@property (nonatomic) BOOL isAutoRefreshDiscussion
デフォルト値はNO。つまりサーバーとの自動同期は行わない。この値がYESに設定されたクラスに対してはAppPot SDKが定期的にサーバーの情報を確認して端末内のデータを更新する。端末内のデータの変更をサーバーに通知することはない。端末でのデータの更新はAPEntityManagerの更新用APIを使って行う。サーターアンダギーとの情報更新の間隔はrefreshIntervalによって設定する。Default value for isAutoRefresh is NO. If isAutoRefresh is set YES, AppPot SDK will call refresh: in a fixed period based on the value of refreshInterval.
Declared In
APObject.hisUsingLockForUpdate
データを更新する前に他の人によって変更されたかを確認するか否かを指定する。 @property isUsingLockForUpdate
@property (nonatomic) BOOL isUsingLockForUpdateDeclared In
APObject.hlifeSpan
Time to expired @property lifeSpan
@property (nonatomic) long lifeSpanDeclared In
APObject.hobjectId
このデータの識別子となるキーシステム全体でユニークである。 @property objectId
@property (nonatomic, strong) NSString *objectIdDeclared In
APObject.hpersistentType
Type of data access @property peristentType
@property (nonatomic) int persistentTypeDeclared In
APObject.hscopeType
このクラスに対するアクセス権限(readwrite)Access right for the class @property scopeType
@property (nonatomic) NSInteger scopeTypeDeclared In
APObject.hserverUpdateTime
サーバーでの更新時刻。 @property updateTime
@property (nonatomic, strong) NSString *serverUpdateTimeDeclared In
APObject.hClass Methods
Instance Methods
deleteObject:
データを同期型で削除する。
- (BOOL)deleteObject:(NSError **)errorParameters
- error
データの削除の際に発生したエラーを格納する
@discussion
Declared In
APObject.hdeleteObjectWithBlock:
データを非同期型で削除する。
- (void)deleteObjectWithBlock:(APResponseResultBlock)blockParameters
- error
データの削除の際に発生したエラーを格納する
@discussion
Declared In
APObject.hinitForServerOnlyWithScopeType:
サーバー側に保存する目的でデータを生成する。
- (id)initForServerOnlyWithScopeType:(SCOPE_TYPE)scopeTypeParameters
- scopeType
データへのアクセス権限の範囲を指定
Discussion
端末にはデータを保存せず、サーバーだけに保存するためのデータを生成する。 このメソッドで生成されたデータはこのクラスの指定された永続化場所とは関係なくサーバーにだけ保存される。
Declared In
APObject.hrefreshObjectWithBlock:
Refresh immediately @property self
- (void)refreshObjectWithBlock:(APObjectResultBlock)blockDeclared In
APObject.hsaveObject:
このオブジェクトの情報をデータストーアに同期型で反映する。保存先のデータストーアはpersistentTypeによって制御される。
- (APObject *)saveObject:(NSError **)errorParameters
- error
オブジェクトの更新中に発生したエラーを格
Return Value
object. 保存されたオブジェクトを返す。 @discussion このメソッドはオブジェクトの状態によってデータストーアに新しいデータを追加、あるいは既存のデータを更新する。新しいデータであるか否かはobjectIdの有無で判断する。objectIdがない場合は新しいデータとして追加する。
Declared In
APObject.hsaveWithBlock:
このオブジェクトの情報をデータストーアに非同期型で反映する。保存先のデータストーアはpersistentTypeによって制御される。
- (void)saveWithBlock:(APObjectResultBlock)blockParameters
- ブロック
オブジェクトの更新が終わった後に実行されるコードを渡す。
Return Value
objectId. 保存されたオブジェクトの識別子を返す。 @discussion このメソッドはオブジェクトの状態によってデータストーアに新しいデータを追加、あるいは既存のデータを更新する。新しいデータであるか否かはobjectIdの有無で判断する。objectIdがない場合は新しいデータとして追加する。
Declared In
APObject.hsetDefaultProperties
このクラスの基本的な設定を行う。
- (void)setDefaultPropertiesDiscussion
以下の属性を設定することでこのクラスの基本的な操作方式を指定する。この指定はこのクラスの全てのインスタンスに適用される。 以下に設定可能な属性と設定しなかった場合のデフォルト値を示す。このメソッド内で設定しなかった属性に対してはデフォルト値が適用される。
self.peristentType = APPersistentServerOnly; // データの保存場所を指定する。 self.isAutoRefresh = NO; // データの保存場所が端末とサーバー(APPersistentServerAndLocal)で、端末のデータを自動更新する場合のみYESにする。 self.refreshInterval = 600; // 自動更新を行う場合、自動更新の時間間隔を秒単位で指定する。デフォルト値は10分か、SDKの初期化にて指定された時間が使用される。 self.lifeSpan = 2,592,000; // 永続化場所が端末とサーバー(APPersistentServerAndLocal)である場合、端末内のデータの保存期間を秒で指定する。デフォルト値は30日か、SDKの初期化にて指定された時間が使用される。 self.scopeType = APScopeGroup; // データを参照・編集できる範囲を指定する。デフォルト値はデータ作成者のグループ(APScopeGroup) かSDKの初期化にて指定されたタイプが使用される。 self.scopeTypeForAutoRefresh = APScopeGroup; // 端末にあるデータの自動更新対象の権限範囲を指定する。デフォルト値はデータの権限(_scopeType)が使用される。 self.isUsingLockForUpdate = NO;
Declared In
APObject.h