Classe que efetua a extração de um resource do repositório de objetos para um diretório no rootpath do server, apenas efetua a extração caso seja necessário.
Para determinar se é necessário extrair novamente o arquivo faz a comparação do MD5 do conteudo do arquivo em relação ao arquivo físico.
Métodos:
- GetCodResourceLog
- IsResourceOk
- GetLog
- GetRootPath
- SetRootPath
- GetPathResFile
- NeedReload
- ExtractOneResource
- DeleteLastResource
Exemplo
GetCodResourceLog
Retorna o código do log de extração do resource
Retorno:
Nome | Tipo | Descrição | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
nRet | Numérico | codigo do log de extração do resource
|
IsResourceOk
Retorna se o arquivo de resource está ok, ou seja, presente na pasta de rootpath e atualizado em relação ao RPO
Retorno
Nome | Tipo | Descrição |
---|---|---|
lRet | logico | Variável de controle que indica se o resource está ok |
GetLog
Retorna o log definido na classe
Retorno
Nome | Tipo | Descrição |
---|---|---|
cLog | caractere | Último log que foi definido ao extrair um recurso |
GetRootPath
Método para retornar o caminho padrão de extração do arquivo.
Caso a propriedade extensão esteja informada, retorna também a extensão como parte do caminho. O caractere de barra sempre será retornado no final do caminho
Retorno
Nome | Tipo | Descrição |
---|---|---|
cRet | caractere | Caminho padrão que será utilizado no extract |
SetRootPath
Método para definir o caminho padrão de extração do arquivo. O caminho de extração deve ser no servidor a partir da protheus_data
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cRootPath | caractere | Pasta para definir o caminho padrão para extração | X |
GetPathResFile
Retorna o nome do resource concatenado com o rootpath
Retorno
Nome | Tipo | Descrição |
---|---|---|
cRet | caractere | Nome completo do path mais o resource |
NeedReload
Método para verificar se o resource precisa ser extraído novamente
Parâmetro
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cMD5 | caractere | Código md5 a ser comparado, caso seja passado não será utilizado o arquivo físico para comparar com o md5 do RPO |
Retorno
Nome | Tipo | Descrição |
---|---|---|
lRet | logico | True caso precise fazer o reload no arquivo e false caso não precise. |
ExtractOneResource
Método para extrair um resource do RPO.
Retorna true apenas quando a extração foi realizada. Caso tenha retornado false, é necessário utilizar o método isResourceOk
Para determinar se o resource está disponível na pasta, junto com o método GetLog e GetCodResourceLog
Parametro
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cResource | caractere | Indica o nome do recurso no repositório a ser salvo em disco pode ser passado junto com a extensão | X |
cExtensao | caractere | Extensão do arquivo a ser extraído, caso seja passado não deve ser passado no resource, | |
cMD5 | caractere | Código md5 do arquivo, caso seja passado não irá utilizar o md5 do arquivo físico será utilizado esse parâmetro para determinar se o arquivo precisa ser atualizado | |
Parâmetro interno, não deve ser utilizado. |
Retorno
Nome | Tipo | Descrição |
---|---|---|
lRet | logico | Retorna true caso tenha extraído com sucesso o arquivo retorna false caso não tenha feito a extração, se o recurso já está na pasta rootpath definida, tb irá retornar false |
DeleteLastResource
Deleta o resource extraído anteriormente. Se o arquivo já não existir no diretório, retorna 0
Retorno
Nome | Tipo | Descrição |
---|---|---|
nRet | numérico | Código de retorno da função FErase retorna 0 caso tenha conseguido deletar, ou -1 caso não tenha deletado |