public FetchRequestImpl(org.eclipse.che.api.git.shared.FetchRequest origin) { this.password = origin.getPassword(); this.timeout = origin.getTimeout(); java.util.List<java.lang.String> refSpecIn = origin.getRefSpec(); if (refSpecIn != null) { java.util.List<java.lang.String> refSpecOut = new java.util.ArrayList<java.lang.String>(); for (java.lang.String refSpecIn_ : refSpecIn) { refSpecOut.add(refSpecIn_); } this.refSpec = refSpecOut; } this.removeDeletedRefs = origin.isRemoveDeletedRefs(); this.remote = origin.getRemote(); this.username = origin.getUsername(); }
@Override public Promise<Void> fetch( Path project, String remote, List<String> refspec, boolean removeDeletedRefs, Credentials credentials) { FetchRequest fetchRequest = dtoFactory .createDto(FetchRequest.class) .withRefSpec(refspec) .withRemote(remote) .withRemoveDeletedRefs(removeDeletedRefs); if (credentials != null) { fetchRequest.setUsername(credentials.getUsername()); fetchRequest.setPassword(credentials.getPassword()); } String url = getWsAgentBaseUrl() + FETCH + "?projectPath=" + encodePath(project); return asyncRequestFactory.createPostRequest(url, fetchRequest).send(); }
@POST @Path("fetch") @Consumes(MediaType.APPLICATION_JSON) public void fetch(FetchRequest request) throws ApiException { try (GitConnection gitConnection = getGitConnection()) { gitConnection.fetch( FetchParams.create(request.getRemote()) .withRefSpec(request.getRefSpec()) .withTimeout(request.getTimeout()) .withRemoveDeletedRefs(request.isRemoveDeletedRefs()) .withUsername(request.getUsername()) .withPassword(request.getPassword())); } }