- @SuppressWarnings("synthetic-access")
- public void gotResult(HighLevelCallback<RequestListResult> highLevelCallback) {
- RequestListResult requestListResult;
- try {
- requestListResult = highLevelCallback.getResult();
- } catch (InterruptedException e) {
- logger.log(Level.SEVERE, "getResult() blocked and was interrupted");
- return;
+ @SuppressWarnings("synthetic-access")
+ public void gotResult(HighLevelCallback<RequestListResult> highLevelCallback) {
+ RequestListResult requestListResult;
+ try {
+ requestListResult = highLevelCallback.getResult();
+ } catch (InterruptedException e) {
+ logger.log(Level.SEVERE, "getResult() blocked and was interrupted");
+ return;
+ }
+ for (RequestResult requestResult: requestListResult) {
+ String identifier = requestResult.getIdentifier();
+ logger.log(Level.FINER, "got identifier: " + identifier);
+ Request request = identifierRequests.get(identifier);
+ if (request == null) {
+ request = new Request(node, identifier);
+ }
+ if (request.getType() == null) {
+ if (requestResult instanceof GetRequestResult) {
+ request.setType(Type.get);
+ } else if (requestResult instanceof PutRequestResult) {
+ request.setType(Type.put);
+ } else if (requestResult instanceof PutDirRequestResult) {
+ request.setType(Type.putDir);
+ }
+ }
+ if (identifierRequests.containsKey(identifier)) {
+ continue;
+ }
+ identifierRequests.put(requestResult.getIdentifier(), request);
+ fireRequestAdded(request);
+ }