NBFile

@interface NBFile : NSObject

ファイルストレージクラス

ファイルストレージに格納される ファイル1件を表現する。

  • ファイルバケット名

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) NSString *bucketName;

    Swift

    var bucketName: String? { get }
  • メタデータのID

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) NSString *objectId;

    Swift

    var objectId: String? { get }
  • ファイル名

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, nullable) NSString *fileName;

    Swift

    var fileName: String? { get set }
  • Content-Type

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, nullable) NSString *contentType;

    Swift

    var contentType: String? { get set }
  • ファイルサイズ(バイト数)

    Declaration

    Objective-C

    @property (readonly, nonatomic) long long contentLength;

    Swift

    var contentLength: Int64 { get }
  • acl

    ACL

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, nullable) NBAcl *acl;

    Swift

    var acl: NBAcl? { get set }
  • 作成日時

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) NSDate *created;

    Swift

    var created: Date? { get }
  • 更新日時

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) NSDate *updated;

    Swift

    var updated: Date? { get }
  • メタデータのETag

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, nullable) NSString *etag;

    Swift

    var etag: String? { get set }
  • ファイル本体のETag

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic) NSString *_Nonnull fileEtag;

    Swift

    var fileEtag: String { get set }
  • 公開URL

    Declaration

    Objective-C

    @property (readonly, nonatomic) NSString *_Nonnull publicUrl;

    Swift

    var publicUrl: String { get }
  • Bucket名を指定したNBFileの生成を行う

    Declaration

    Objective-C

    + (nonnull instancetype)objectWithBucketName:(nonnull NSString *)bucketName;

    Parameters

    bucketName

    Objectが所属するBucket名

    Return Value

    NBFileのインスタンス

  • Bucketを指定したイニシャライザ

    Declaration

    Objective-C

    - (nonnull instancetype)initWithBucketName:(nullable NSString *)bucketName;

    Swift

    init(bucketName: String?)

    Parameters

    bucketName

    Objectが所属するBucket名

    Return Value

    NBFileのインスタンス

  • ファイルを新規アップロードする(Url指定)

    以下のパラメータをプロパティにて指定可能 ・ファイル名 ・ACL ・Content-Type

    Declaration

    Objective-C

    - (void)uploadNewFileInBackgroundWithURL:(nonnull NSURL *)url
                                 resultBlock:(nonnull NBFilesBlock)resultBlock
                               progressBlock:
                                   (nullable NBFileProgressBlock)progressBlock;

    Swift

    func uploadNewFileInBackground(url: URL, completion resultBlock: @escaping NBFilesBlock, progress progressBlock: NBFileProgressBlock? = nil)

    Parameters

    url

    ファイルパス

    resultBlock

    実行結果を受け取るブロック

    progressBlock

    転送進捗を受け取るブロック

  • ファイルを新規アップロードする(Data指定)

    以下のパラメータをプロパティにて指定可能 ・ファイル名 ・ACL ・Content-Type

    Declaration

    Objective-C

    - (void)uploadNewFileInBackgroundWithData:(nonnull NSData *)data
                                  resultBlock:(nonnull NBFilesBlock)resultBlock
                                progressBlock:
                                    (nullable NBFileProgressBlock)progressBlock;

    Swift

    func uploadNewFileInBackground(data: Data, completion resultBlock: @escaping NBFilesBlock, progress progressBlock: NBFileProgressBlock? = nil)

    Parameters

    data

    ファイルデータ

    resultBlock

    実行結果を受け取るブロック

    progressBlock

    転送進捗を受け取るブロック

  • ファイルをダウンロードする

    以下のパラメータをプロパティにて指定可能 ・ファイル名

    Declaration

    Objective-C

    - (void)
    downloadFileInBackgroundWithURL:(nonnull NSURL *)url
                      downloadBlock:(nonnull NBFileDownloadBlock)downloadBlock
                      progressBlock:(nullable NBFileProgressBlock)progressBlock;

    Swift

    func downloadInBackground(url: URL, completion downloadBlock: @escaping NBFileDownloadBlock, progress progressBlock: NBFileProgressBlock? = nil)

    Parameters

    url

    保存先

    downloadBlock

    実行結果を受け取るブロック

    progressBlock

    転送進捗を受け取るブロック

  • ファイルを更新アップロードする(Url指定)

    以下のパラメータをプロパティにて指定可能 ・ファイル名 ・Content-Type ・メタデータのETag ・ファイル本体のETag

    Declaration

    Objective-C

    - (void)uploadUpdateFileInBackgroundWithURL:(nonnull NSURL *)url
                                    resultBlock:(nonnull NBFilesBlock)resultBlock
                                  progressBlock:
                                      (nullable NBFileProgressBlock)progressBlock;

    Swift

    func uploadUpdateFileInBackground(url: URL, completion resultBlock: @escaping NBFilesBlock, progress progressBlock: NBFileProgressBlock? = nil)

    Parameters

    url

    ファイルパス

    resultBlock

    実行結果を受け取るブロック

    progressBlock

    転送進捗を受け取るブロック

  • ファイルを更新アップロードする(Data指定)

    以下のパラメータをプロパティにて指定可能 ・ファイル名 ・Content-Type ・メタデータのETag ・ファイル本体のETag

    Declaration

    Objective-C

    - (void)uploadUpdateFileInBackgroundWithData:(nonnull NSData *)data
                                     resultBlock:(nonnull NBFilesBlock)resultBlock
                                   progressBlock:
                                       (nullable NBFileProgressBlock)progressBlock;

    Swift

    func uploadUpdateFileInBackground(data: Data, completion resultBlock: @escaping NBFilesBlock, progress progressBlock: NBFileProgressBlock? = nil)

    Parameters

    data

    ファイルデータ

    resultBlock

    実行結果を受け取るブロック

    progressBlock

    転送進捗を受け取るブロック

  • 特定ファイルのメタデータを更新する

    以下のパラメータをプロパティにて指定可能 ・メタデータのETag ・ファイル名 ・Content-Type ・ACL

    Declaration

    Objective-C

    - (void)updateFileInBackgroundWithFilename:(nonnull NSString *)filename
                                         block:(nonnull NBFilesBlock)block;

    Swift

    func updateInBackground(filename: String, comletion block: @escaping NBFilesBlock)

    Parameters

    filename

    更新対象ファイル名

    block

    実行結果を受け取るブロック

  • 特定ファイルを削除する

    以下のパラメータをプロパティにて指定可能 ・ファイル名 ・メタデータのETag ・ファイル本体のETag

    Declaration

    Objective-C

    - (void)deleteFileInBackgroundWithBlock:(nonnull NBFilesBlock)block;

    Swift

    func deleteInBackground(completion block: @escaping NBFilesBlock)

    Parameters

    block

    実行結果を受け取るブロック

  • 特定ファイルを公開する

    以下のパラメータをプロパティにて指定可能 ・ファイル名 ・メタデータのETag

    Declaration

    Objective-C

    - (void)enablePublishFileInBackgroundWithBlock:(nonnull NBFilesBlock)block;

    Swift

    func enablePublishInBackground(completion block: @escaping NBFilesBlock)

    Parameters

    block

    実行結果を受け取るブロック

  • 特定ファイルの公開を解除する

    以下のパラメータをプロパティにて指定可能 ・ファイル名 ・メタデータのETag

    Declaration

    Objective-C

    - (void)disablePublishFileInBackgroundWithBlock:(nonnull NBFilesBlock)block;

    Swift

    func disablePublishInBackground(completion block: @escaping NBFilesBlock)

    Parameters

    block

    実行結果を受け取るブロック

  • プロパティにdictionaryの情報を反映する

    Declaration

    Objective-C

    - (void)setPropertiesWithDictionary:(nonnull NSDictionary *)dictionary;

    Swift

    func setProperties(dictionary: [AnyHashable : Any])

    Parameters

    dictionary

    オブジェクトに設定するkey-Valueのdictionary