com.google.api.services.drive.Drive.Files Java Examples
The following examples show how to use
com.google.api.services.drive.Drive.Files.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: SyncAdapter.java From mytracks with Apache License 2.0 | 6 votes |
/** * Gets all the files from a request. * * @param request the request * @param excludeSharedWithMe true to exclude shared with me files * @return a map of file id to file */ private Map<String, File> getFiles(Files.List request, boolean excludeSharedWithMe) throws IOException { Map<String, File> idToFileMap = new HashMap<String, File>(); do { FileList files = request.execute(); for (File file : files.getItems()) { if (excludeSharedWithMe && file.getSharedWithMeDate() != null) { continue; } idToFileMap.put(file.getId(), file); } request.setPageToken(files.getNextPageToken()); } while (request.getPageToken() != null && request.getPageToken().length() > 0); return idToFileMap; }
Example #2
Source File: GoogleDrive.java From google-drive-ftp-adapter with GNU Lesser General Public License v3.0 | 6 votes |
private File patchFile(String fileId, File patch, int retry) { try { Files.Update patchRequest = drive.files().update(fileId, patch) .setFields(REQUEST_FILE_FIELDS); // control we are not exceeding number of requests/second bandwidthController.newRequest(); return patchRequest.execute(); } catch (Exception e) { if (retry > 0) { try { Thread.sleep(1000); } catch (InterruptedException e1) { throw new RuntimeException(e1); } logger.warn("Error updating file. Retrying..."); patchFile(fileId, patch, --retry); } throw new RuntimeException("Error updating file " + fileId, e); } }
Example #3
Source File: GoogleDriveUtils.java From components with Apache License 2.0 | 5 votes |
public File putResource(GoogleDrivePutParameters parameters) throws IOException { String folderId = parameters.getDestinationFolderId(); File putFile = new File(); putFile.setParents(Collections.singletonList(folderId)); Files.List fileRequest = drive.files().list() .setQ(format(QUERY_NOTTRASHED_NAME_NOTMIME_INPARENTS, parameters.getResourceName(), MIME_TYPE_FOLDER, folderId)); LOG.debug("[putResource] `{}` Exists in `{}` ? with `{}`.", parameters.getResourceName(), parameters.getDestinationFolderId(), fileRequest.getQ()); FileList existingFiles = fileRequest.execute(); if (existingFiles.getFiles().size() > 1) { throw new IOException(messages.getMessage("error.file.more.than.one", parameters.getResourceName())); } if (existingFiles.getFiles().size() == 1) { if (!parameters.isOverwriteIfExist()) { throw new IOException(messages.getMessage("error.file.already.exist", parameters.getResourceName())); } LOG.debug("[putResource] {} will be overwritten...", parameters.getResourceName()); drive.files().delete(existingFiles.getFiles().get(0).getId()).execute(); } putFile.setName(parameters.getResourceName()); String metadata = "id,parents,name"; if (!StringUtils.isEmpty(parameters.getFromLocalFilePath())) { // Reading content from local fileName FileContent fContent = new FileContent(null, new java.io.File(parameters.getFromLocalFilePath())); putFile = drive.files().create(putFile, fContent).setFields(metadata).execute(); // } else if (parameters.getFromBytes() != null) { AbstractInputStreamContent content = new ByteArrayContent(null, parameters.getFromBytes()); putFile = drive.files().create(putFile, content).setFields(metadata).execute(); } return putFile; }
Example #4
Source File: SyncAdapter.java From mytracks with Apache License 2.0 | 4 votes |
/** * Performs initial sync. */ private void performInitialSync() throws IOException { // Get the largest change id first to avoid race conditions About about = drive.about().get().setFields(ABOUT_GET_FIELDS).execute(); long largestChangeId = about.getLargestChangeId(); // Get all the KML/KMZ files in the "My Drive:/My Tracks" folder Files.List myTracksFolderRequest = drive.files() .list().setQ(String.format(Locale.US, SyncUtils.MY_TRACKS_FOLDER_FILES_QUERY, folderId)); Map<String, File> myTracksFolderMap = getFiles(myTracksFolderRequest, true); // Handle tracks that are already uploaded to Google Drive Set<String> syncedDriveIds = updateSyncedTracks(); for (String driveId : syncedDriveIds) { myTracksFolderMap.remove(driveId); } // Get all the KML/KMZ files in the "Shared with me:/" folder Files.List sharedWithMeRequest = drive.files() .list().setQ(SyncUtils.SHARED_WITH_ME_FILES_QUERY); Map<String, File> sharedWithMeMap = getFiles(sharedWithMeRequest, false); try { insertNewTracks(myTracksFolderMap.values()); insertNewTracks(sharedWithMeMap.values()); PreferencesUtils.setLong(context, R.string.drive_largest_change_id_key, largestChangeId); } catch (IOException e) { // Remove all imported tracks Cursor cursor = null; try { cursor = myTracksProviderUtils.getTrackCursor(SyncUtils.DRIVE_ID_TRACKS_QUERY, null, null); if (cursor != null && cursor.moveToFirst()) { do { Track track = myTracksProviderUtils.createTrack(cursor); if (!syncedDriveIds.contains(track.getDriveId())) { myTracksProviderUtils.deleteTrack(context, track.getId()); } } while (cursor.moveToNext()); } } finally { if (cursor != null) { cursor.close(); } } throw e; } }
Example #5
Source File: GoogleDriveFsHelperTest.java From incubator-gobblin with Apache License 2.0 | 4 votes |
private void setUp() { client = mock(Drive.class); files = mock(Files.class); when(client.files()).thenReturn(files); }