Interface do NowAttachmentService - Android
A interface NowAttachmentService fornece funções que permitem a manipulação de anexos de arquivo e seus metadados associados.
| Nome | Tipo | Descrição |
|---|---|---|
| configuração | NowServiceConfiguration | Configuração a ser associada ao serviço. |
NowAttachmentService - attachment(sysId: cadeia de caracteres, identifyAttachment: booliano = verdadeiro)
Recupera o anexo com o sys_id especificado e, opcionalmente, valida o anexo comparando o hash calculado do anexo com o hash esperado.
| Nome | Tipo | Descrição |
|---|---|---|
| sysId | Cadeia de caracteres | Sys_id do anexo a ser recuperado. Este é o sys_id do anexo na sua instância ServiceNow. |
| validarAnexo | Booliano | Sinalizador que indica se o anexo deve ser validado. Valores válidos:
Padrão: verdadeiro |
| Tipo | Descrição |
|---|---|
| Chamada<NowAttachment> | Objeto NowAttachment que contém o anexo solicitado. |
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: cadeia de caracteres)
Recupera os metadados do anexo associado ao sys_id especificado.
| Nome | Tipo | Descrição |
|---|---|---|
| sysId | Cadeia de caracteres | Sys_id do anexo cujos metadados você deseja recuperar. |
| Tipo | Descrição |
|---|---|
| Chamada<NowAttachmentMetadata> | Objeto que contém os metadados do anexo especificado. |
fun fetchMetadata(sysId: String) {
val call = attachmentService.attachmentMetadata(sysId)
call.enqueue(
{ response ->
val metadata: NowAttachmentMetadata? = response.body
},
{ nowDataError -> handleError(nowDataError) }
)
}
NowAttachmentService - attachmentMetadata(filtro: filtro? = nulo, limite: Int? = nulo)
Recupera os metadados de todos os anexos que atendem aos critérios especificados.
| Nome | Tipo | Descrição |
|---|---|---|
| filtros | Filtro | Opcional. Cadeia de caracteres de consulta a ser usada para filtrar os anexos cujos metadados serão retornados. Padrão: nulo - Retorna metadados para todos os anexos disponíveis. Leva em consideração o parâmetro limit. |
| limite | Inteiro | Opcional. Número máximo de metadados do arquivo de anexo a serem retornados. Padrão: nulo - Retorna todos os metadados que atendem às especificações do parâmetro filter. |
| Tipo | Descrição |
|---|---|
| Chamada<List<NowAttachmentMetadata>> | Lista de objetos que contêm os metadados dos anexos correspondentes. |
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 (filtro: filtro? = nulo, limite: Int? = nulo)
Recupera os metadados de todos os anexos que atendem aos critérios especificados e cria um paginador para iterar pelas páginas dos metadados retornados.
Você pode usar este paginador para navegar pelos metadados retornados, executando operações de navegação, como buscar a primeira, última, anterior ou próxima página, ou verificar se há a próxima página ou a anterior.
| Nome | Tipo | Descrição |
|---|---|---|
| filtros | Filtro | Opcional. Cadeia de caracteres de consulta a ser usada para filtrar os anexos cujos metadados serão retornados. Padrão: nulo - Retorna metadados para todos os anexos disponíveis. Leva em consideração o parâmetro limit. |
| limite | Inteiro | Opcional. Número máximo de metadados do arquivo de anexo a serem retornados. Padrão: nulo - Retorna todos os metadados que atendem às especificações do parâmetro filter. |
| Tipo | Descrição |
|---|---|
| Paginador<NowAttachmentMetadata> | Sucesso: objeto Paginator junto com as páginas de metadados especificadas. Falha: objeto NowDataError. |
O exemplo de código a seguir mostra como chamar esta função.
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: cadeia de caracteres)
Exclui o anexo com o sys_id especificado.
| Nome | Tipo | Descrição |
|---|---|---|
| sysId | Cadeia de caracteres | Sys_id do anexo a ser excluído. |
| Tipo | Descrição |
|---|---|
| Chamada<ByteArray> | Sucesso: nada é retornado. Falha: NowDataError retornado. |
fun deleteAttachment(sysId: String) {
val call = attachmentService.delete(sysId)
call.enqueue(
{ response -> handleResponse(response) },
{ nowDataError -> handleError(nowDataError) }
)
}
NowAttachmentService - upload (dados: ByteArray, configuração: NowAttachmentUploadConfiguration)
Recupera os metadados de todos os anexos que atendem aos critérios especificados e cria um paginador para iterar pelas páginas dos metadados retornados.
| Nome | Tipo | Descrição |
|---|---|---|
| dados | ByteArray | Metadados a serem carregados e associados ao anexo especificado no objeto de configuração. |
| configuração | NowAttachmentUploadConfiguration | Carregar parâmetros de configuração. |
| Tipo | Descrição |
|---|---|
| NowAttachmentMetadata | Metadados carregados. |
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) }
)
}