This is an automated email from the ASF dual-hosted git repository. dimuthuupe pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/airavata-mft.git
commit 530485b83af87088454aa6cf6035a45cde841ce4 Author: Akshay <aksrajvan...@gmail.com> AuthorDate: Thu Apr 23 17:15:25 2020 -0400 Committing the implementation of getDropboxSecret in FileBasedSecretBackend file. --- .../backend/file/FileBasedSecretBackend.java | 23 ++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/services/secret-service/server/src/main/java/org/apache/airavata/mft/secret/server/backend/file/FileBasedSecretBackend.java b/services/secret-service/server/src/main/java/org/apache/airavata/mft/secret/server/backend/file/FileBasedSecretBackend.java index 3e1d6fa..bcd47c0 100644 --- a/services/secret-service/server/src/main/java/org/apache/airavata/mft/secret/server/backend/file/FileBasedSecretBackend.java +++ b/services/secret-service/server/src/main/java/org/apache/airavata/mft/secret/server/backend/file/FileBasedSecretBackend.java @@ -255,8 +255,27 @@ public class FileBasedSecretBackend implements SecretBackend { @Override public Optional<DropboxSecret> getDropboxSecret(DropboxSecretGetRequest request) throws Exception { - throw new UnsupportedOperationException("Operation is not supported in backend"); - } + JSONParser jsonParser = new JSONParser(); + InputStream inputStream = FileBasedSecretBackend.class.getClassLoader().getResourceAsStream(secretFile); + + try (InputStreamReader reader = new InputStreamReader(inputStream)) { + Object obj = jsonParser.parse(reader); + JSONArray resourceList = (JSONArray) obj; + + List<DropboxSecret> dbxSecrets = (List<DropboxSecret>) resourceList.stream() + .filter(resource -> "DROPBOX".equals(((JSONObject) resource).get("type").toString())) + .map(resource -> { + JSONObject r = (JSONObject) resource; + + DropboxSecret dbxSecret = DropboxSecret.newBuilder() + .setSecretId(r.get("secretId").toString()) + .setAccessToken(r.get("accessToken").toString()).build(); + return dbxSecret; + + }).collect(Collectors.toList()); + return dbxSecrets.stream().filter(r -> request.getSecretId().equals(r.getSecretId())).findFirst(); + } + } @Override public DropboxSecret createDropboxSecret(DropboxSecretCreateRequest request) throws Exception {