NowAttachmentService インターフェイス: Android

  • リリースバージョン: Zurich
  • 更新日 2025年07月31日
  • 所要時間:7分
  • NowAttachmentService インターフェイスは、添付ファイルとそれに関連するメタデータの操作を可能にする関数を提供します。

    表 : 1. プロパティ
    名前 タイプ 説明
    構成 NowServiceConfiguration サービスに関連付ける構成。

    NowAttachmentService:attachment(sysId:文字列、validateAttachment:ブール値 = true)

    指定されたsys_idの添付ファイルを取得し、オプションで添付ファイルの計算済みハッシュを予想されるハッシュと比較して添付ファイルを検証します。

    表 : 2. パラメーター
    名前 タイプ 説明
    sysId 文字列 取得する添付ファイルのSys_id。これは、 ServiceNow インスタンスの添付ファイルのsys_idです。
    validateAttachment ブール

    添付ファイルを検証するかどうかを示すフラグ。

    有効な値:
    • true:添付ファイルを検証します。
    • false:添付ファイルを検証しません。

    デフォルト:true

    表 : 3. 返される内容
    タイプ 説明
    Call<NowAttachment> 要求された添付ファイルを含む NowAttachment オブジェクト。

    fun getAttachment(sysId: String, isValidateAttachment: Boolean) { 
      val call = attachmentService.attachment(sysId, isValidateAttachment) 
      call.enqueue( 
        { response -> 
          val attachment: NowAttachment? = response.body 
        }, 
          { nowDataError -> handleError(nowDataError) } 
      ) 
    }

    NowAttachmentService - attachmentMetadata(sysId: 文字列)

    指定されたsys_idに関連付けられている添付ファイルのメタデータを取得します。

    表 : 4. パラメーター
    名前 タイプ 説明
    sysId 文字列 メタデータを取得する添付ファイルのSys_id。
    表 : 5. 戻り値
    タイプ 説明
    Call<NowAttachmentMetadata> 指定された添付ファイルのメタデータを含むオブジェクト。
    fun fetchMetadata(sysId: String) { 
      val call = attachmentService.attachmentMetadata(sysId) 
      call.enqueue(
        { response -> 
          val metadata: NowAttachmentMetadata? = response.body 
        },
        { nowDataError -> handleError(nowDataError) } 
      )
    }

    NowAttachmentService - attachmentMetadata(フィルター:フィルター? = null、制限:整数? = null)

    指定された基準を満たすすべての添付ファイルのメタデータを取得します。

    表 : 6. パラメーター
    名前 タイプ 説明
    フィルター フィルター オプション。メタデータを返す添付ファイルをフィルタリングするために使用するクエリ文字列。

    デフォルト:null:利用可能なすべての添付ファイルのメタデータを返します。limitパラメーターが考慮されます。

    limit 整数 オプション。返す添付ファイルのメタデータの最大数。

    デフォルト:null: filter パラメーターの仕様を満たすすべてのメタデータを返します。

    表 : 7. 戻り値
    タイプ 説明
    Call<List<NowAttachmentMetadata>> 一致する添付ファイルのメタデータを含むオブジェクトのリスト。
    fun fetchMultipleMetadata(filterQuery: String, limit: Int) { 
      val call = attachmentService.attachmentMetadata(Filter(filterQuery), limit) 
      call.enqueue( 
        { response -> 
          val metadataList: List<NowAttachmentMetadata>? = response.body 
        },
        { nowDataError -> handleError(nowDataError) } 
      )
    }

    NowAttachmentService - attachmentMetadataPaginator(フィルター: フィルター? = null, limit: Int? = null)

    指定された基準を満たすすべての添付ファイルのメタデータを取得し、返されたメタデータのページを反復処理するためのページネーションを作成します。

    このページネーションを使用して、返されたメタデータ間を移動し、最初、最後、前、または次のページのフェッチや、次のページまたは前のページがあるかどうかの確認などのナビゲーション操作を実行できます。

    表 : 8. パラメーター
    名前 タイプ 説明
    フィルター フィルター オプション。メタデータを返す添付ファイルをフィルタリングするために使用するクエリ文字列。

    デフォルト:null:利用可能なすべての添付ファイルのメタデータを返します。limitパラメーターが考慮されます。

    limit 整数 オプション。返す添付ファイルのメタデータの最大数。

    デフォルト:null: filter パラメーターの仕様を満たすすべてのメタデータを返します。

    表 : 9. 戻り値
    タイプ 説明
    paginator<NowAttachmentMetadata> 成功:指定されたメタデータのページを含むページネーションオブジェクト。

    失敗:NowDataError オブジェクト。

    次のコード例は、この関数を呼び出す方法を示しています。

    suspend fun createAttachmentMetadataPaginator() {
      val filterQuery: String = "content_type=text/plain"
      val filter = filterQuery.let(::Filter)
      val limit = 10
      val paginator = nowServiceManager.getNowAttachmentService()?.attachmentMetadataPaginator(filter, limit)
        ?.observe(object : PaginatorCallBack<NowAttachmentMetadata> {
          override fun onFailure(e: NowDataError) {
            handleError(e)
          }
    
          override fun onSuccess(response: Response<List<NowAttachmentMetadata>>) {
            handleResponse(response)
          }
    
        })
        ?: throw Exception("Response is null")
    }

    NowAttachmentService - delete(sysId: String)

    指定したsys_idの添付ファイルを削除します。

    表 : 10. パラメーター
    名前 タイプ 説明
    sysId 文字列 削除する添付ファイルの sys_id。
    表 : 11. 戻り値
    タイプ 説明
    Call<ByteArray> 成功:何も返されません。

    エラー:NowDataError が返されました。

    fun deleteAttachment(sysId: String) { 
      val call = attachmentService.delete(sysId) 
      call.enqueue( 
        { response -> handleResponse(response) }, 
        { nowDataError -> handleError(nowDataError) } 
      )
    } 

    NowAttachmentService - upload(データ:ByteArray、構成:NowAttachmentUploadConfiguration)

    指定された基準を満たすすべての添付ファイルのメタデータを取得し、返されたメタデータのページを反復処理するためのページネーションを作成します。

    表 : 12. パラメーター
    名前 タイプ 説明
    データ バイトアレイ アップロードして構成オブジェクトで指定された添付ファイルに関連付けるメタデータ。
    構成 NowAttachmentUploadConfiguration 設定パラメーターをアップロードします。
    表 : 13. 戻り値
    タイプ 説明
    NowAttachmentMetadata アップロードされたメタデータ。
    fun uploadAttachment(tableName: String, recordSysId: String, fileName: String) { 
      val bitmap = BitmapFactory.decodeResource(resources, R.drawable.test_image) 
      val data = bitmap.compress(ImageType.JPEG) 
      val contentType = "image/jpg" 
      val config = NowAttachmentUploadConfiguration(tableName, recordSysId, fileName, contentType) 
      val call = attachmentService.upload(data, config) 
     
      call.enqueue( 
        { response -> 
          val uploadedAttachmentMetadata: NowAttachmentMetadata? = response.body 
        },
        { nowDataError -> handleError(nowDataError) } 
      )
    }