No artigo de hoje, vamos ver como renomear um arquivo no Dropbox usando a easyJavaDropbox API. O problema surgiu porque a API do Dropbox não tem nenhum método Java para renomear um arquivo. Na verdade, tem um move que pode de fato mover um arquivo ou folder e também renomear. Achamos funcionalidades demais para um [unico método, e na versão 1.2.0 da easyJavaDropbox API adicionamos um método que é capaz de fazer o rename.
Lets go… Starting…
Considerando que você já tem a API configurada no seu projeto, vamos ver como usar a nova funcionalidade de renomear um arquivo.
Requisitos:
– easyJavaDropboxAPI 1.2.0
– EasyJavaDropboxAPI 1.2.0
Há apenas dois novos métodos nessa versão:
- renameFileRoot(String currentNameFile, String newNameFile): esse método renomeia um arquivo considerando que ele está na raiz do dropbox: “/”. Lembre-se de que a raiz é da app que você criou.
- renameFile(String pathFolder, String currentNameFile, String newNameFile): já esse método vai renomear um arquivo para um caminho que for especificado, então você vai ter que dizer:
– pasta onde está o arquivo;
– o nome do arquivo que será renomeado;
– e o nome do novo arquivo;
Development
Agora vamos praticar. Como sempre, o exemplo vai estar no projeto easyJavaDropboxAPIExample, que já possui exemplos das outras funcionalidades da API.
Passo 1
No método main, vamos criar um método privado que fará o rename de um arquivo na raiz e outro para um caminho específico:
public static void main(String[] args) throws DbxException, IOException { String token = "token here"; String path = "/"; EasyJavaDropBoxService easyJavaDropBoxService = new EasyJavaDropBoxServiceImpl(path, token); renameFileFromRoot(easyJavaDropBoxService); renameFile(easyJavaDropBoxService); } Agora vamos criar os métodos: private static void renameFile(EasyJavaDropBoxService easyJavaDropBoxService) throws DbxException { easyJavaDropBoxService.renameFile("/teste/","myfile.png", "renameok.png"); } private static void renameFileFromRoot(EasyJavaDropBoxService easyJavaDropBoxService) throws DbxException { String newNameFile = "alertfytestelocal.png"; String currentNameFile = "testelocal.png"; easyJavaDropBoxService.renameFileRoot(currentNameFile ,newNameFile); }
No dropbox:
Temos um arquivo dentro do diretório teste chamado de myfile.png
Vamos renomear esse arquivo para renameok.png
Na raiz vamos alterar o arquivo chamado alertfytestelocal.png para testelocal.png
Testando
Agora vamos testar a aplicação executando o método main.
Resultado:
Na pasta teste:
Na raiz:
Fantástico, não? Espero que tenham gostado do post e da funcionalidade.
Github Projeto:
https://github.com/ITSStartup/easyJavaDropboxAPI
Projeto Exemplo:
https://github.com/ITSStartup/easyJavaDropboxAPIExample