private String getStartRevision(int retry) { try { // control we are not exceeding number of requests/second bandwidthController.newRequest(); logger.debug("Getting drive status..."); return drive.changes().getStartPageToken().execute().getStartPageToken(); } catch (IOException e) { if (retry > 0) { try { Thread.sleep(1000); } catch (InterruptedException e1) { throw new RuntimeException(e1); } logger.warn("Error getting latest changes. Retrying..."); return getStartRevision(--retry); } throw new RuntimeException("Error getting latest changes", e); } }
List<Change> result = new ArrayList<>(); Changes.List request = drive.changes().list(startChangeId) .setFields("nextPageToken, newStartPageToken, changes(removed, fileId, file(" + REQUEST_FILE_FIELDS + "))"); request.setRestrictToMyDrive(true);
/** * An accessor for creating requests from the Changes collection. * * <p>The typical use is:</p> * <pre> * {@code Drive drive = new Drive(...);} * {@code Drive.Changes.List request = drive.changes().list(parameters ...)} * </pre> * * @return the resource collection */ public Changes changes() { return new Changes(); }