private String autodetectLatestStonkyVersion() throws IOException { final ValueRange data = sheetService.spreadsheets().values() .get("1ipnVJ7jehwwGLTY-Oi0eHwyfyjCNCoQGOz0oO_9Pp80", "Sheet1!A2:E2") .execute(); LOGGER.trace("Received '{}' from Stonky release spreadsheet.", data); final List<List<Object>> matrix = data.getValues(); final String result = (String) matrix.get(0).get(4); // cell E2 LOGGER.debug("Stonky version auto-detected to {}.", matrix.get(0).get(1)); // cell B2 return result; }
public void sendToSheets(String sheetId, Map<ClientType, Controller.LoadtestStats> results) { List<List<List<Object>>> values = getValuesList(results); try { service.spreadsheets().values().append(sheetId, "CPS", new ValueRange().setValues(values.get(0))).setValueInputOption("USER_ENTERED").execute(); service.spreadsheets().values().append(sheetId, "Kafka", new ValueRange().setValues(values.get(1))).setValueInputOption("USER_ENTERED").execute(); } catch (IOException e) { log.error("Error publishing to spreadsheet " + sheetId + ": " + e); } }
public BatchUpdateValuesResponse writeValuesIntoSpreadsheet(String spreadsheetId, String range, List<List<Object>> insertValues) throws IOException { List<ValueRange> data = new ArrayList<>(); data.add(new ValueRange().setRange(range).setValues(insertValues)); BatchUpdateValuesRequest body = new BatchUpdateValuesRequest().setValueInputOption(InputOption.USER_ENTERED.name()).setData(data); return sheetsService.spreadsheets().values().batchUpdate(spreadsheetId, body).execute(); }
public Exchange createExchange(ValueRange valueRange) { Exchange exchange = super.createExchange(getExchangePattern()); Message message = exchange.getIn(); exchange.getIn().setHeader(GoogleSheetsStreamConstants.SPREADSHEET_ID, configuration.getSpreadsheetId()); exchange.getIn().setHeader(GoogleSheetsStreamConstants.RANGE, valueRange.getRange()); exchange.getIn().setHeader(GoogleSheetsStreamConstants.MAJOR_DIMENSION, valueRange.getMajorDimension()); message.setBody(valueRange); return exchange; }
public UpdateValuesResponse updateValues(String spreadsheetId, String range, String valueInputOption, List<List<Object>> _values) throws IOException { Sheets service = this.service; // [START sheets_update_values] List<List<Object>> values = Arrays.asList( Arrays.asList( // Cell values ... ) // Additional rows ... ); // [START_EXCLUDE silent] values = _values; // [END_EXCLUDE] ValueRange body = new ValueRange() .setValues(values); UpdateValuesResponse result = service.spreadsheets().values().update(spreadsheetId, range, body) .setValueInputOption(valueInputOption) .execute(); System.out.printf("%d cells updated.", result.getUpdatedCells()); // [END sheets_update_values] return result; }
public ValueRange getValues(String spreadsheetId, String range) throws IOException { Sheets service = this.service; // [START sheets_get_values] ValueRange result = service.spreadsheets().values().get(spreadsheetId, range).execute(); int numRows = result.getValues() != null ? result.getValues().size() : 0; System.out.printf("%d rows retrieved.", numRows); // [END sheets_get_values] return result; }
public BatchUpdateValuesResponse batchUpdateValues(String spreadsheetId, String range, String valueInputOption, List<List<Object>> _values) throws IOException { Sheets service = this.service; // [START sheets_batch_update_values] List<List<Object>> values = Arrays.asList( Arrays.asList( // Cell values ... ) // Additional rows ... ); // [START_EXCLUDE silent] values = _values; // [END_EXCLUDE] List<ValueRange> data = new ArrayList<ValueRange>(); data.add(new ValueRange() .setRange(range) .setValues(values)); // Additional ranges to update ... BatchUpdateValuesRequest body = new BatchUpdateValuesRequest() .setValueInputOption(valueInputOption) .setData(data); BatchUpdateValuesResponse result = service.spreadsheets().values().batchUpdate(spreadsheetId, body).execute(); System.out.printf("%d cells updated.", result.getTotalUpdatedCells()); // [END sheets_batch_update_values] return result; }
@Override protected MockLowLevelHttpResponse respond(final String method, final String url) { final ValueRange range = new ValueRange(); final List<Object> row = Arrays.asList("", "123456", "", "", id); range.setValues(Collections.singletonList(row)); return new MockLowLevelHttpResponse().setContent(toJson(range)); } }
private String autodetectLatestStonkyVersion() throws IOException { final ValueRange data = sheetService.spreadsheets().values() .get("1ipnVJ7jehwwGLTY-Oi0eHwyfyjCNCoQGOz0oO_9Pp80", "Sheet1!A2:E2") .execute(); LOGGER.trace("Received '{}' from Stonky release spreadsheet.", data); final List<List<Object>> matrix = data.getValues(); final String result = (String) matrix.get(0).get(4); // cell E2 LOGGER.debug("Stonky version auto-detected to {}.", matrix.get(0).get(1)); // cell B2 return result; }
public AppendValuesResponse appendValues(String spreadsheetId, String range, String valueInputOption, List<List<Object>> _values) throws IOException { Sheets service = this.service; // [START sheets_append_values] List<List<Object>> values = Arrays.asList( Arrays.asList( // Cell values ... ) // Additional rows ... ); // [START_EXCLUDE silent] values = _values; // [END_EXCLUDE] ValueRange body = new ValueRange() .setValues(values); AppendValuesResponse result = service.spreadsheets().values().append(spreadsheetId, range, body) .setValueInputOption(valueInputOption) .execute(); System.out.printf("%d cells appended.", result.getUpdates().getUpdatedCells()); // [END sheets_append_values] return result; }
/** * Prints the names and majors of students in a sample spreadsheet: * https://docs.google.com/spreadsheets/d/1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms/edit */ public static void main(String... args) throws IOException, GeneralSecurityException { // Build a new authorized API client service. final NetHttpTransport HTTP_TRANSPORT = GoogleNetHttpTransport.newTrustedTransport(); final String spreadsheetId = "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"; final String range = "Class Data!A2:E"; Sheets service = new Sheets.Builder(HTTP_TRANSPORT, JSON_FACTORY, getCredentials(HTTP_TRANSPORT)) .setApplicationName(APPLICATION_NAME) .build(); ValueRange response = service.spreadsheets().values() .get(spreadsheetId, range) .execute(); List<List<Object>> values = response.getValues(); if (values == null || values.isEmpty()) { System.out.println("No data found."); } else { System.out.println("Name, Major"); for (List row : values) { // Print columns A and E, which correspond to indices 0 and 4. System.out.printf("%s, %s\n", row.get(0), row.get(4)); } } } }
@Before public void setUp() { try { ValueRange valueRange = new ValueRange(); List<List<Object>> testValues = new ArrayList<>(); List<Object> testRowValues = new ArrayList<>(); testRowValues.add("testValueOne"); testRowValues.add("testValueTwo"); testValues.add(testRowValues); valueRange.setValues(testValues); when(auth.getSheetsService(anyString(), anyString())).thenReturn(sheetsClient); when(sheetsClient.spreadsheets()).thenReturn(spreadsheets); when(spreadsheets.values()).thenReturn(spreasheetsValues); when(spreasheetsValues.get(anyString(), anyString())).thenReturn(spreasheetsValuesGet); when(spreasheetsValuesGet.execute()).thenReturn(valueRange); } catch (Exception e) { fail(e.getMessage()); } }
@Test public void testBatchGetValues() throws IOException { String spreadsheetId = this.createTestSpreadsheet(); this.populateValuesWithStrings(spreadsheetId); List<String> ranges = Arrays.asList("A1:A3", "B1:C1"); BatchGetValuesResponse result = this.snippets.batchGetValues(spreadsheetId, ranges); List<ValueRange> valueRanges = result.getValueRanges(); assertEquals(2, valueRanges.size()); List<List<Object>> values = valueRanges.get(0).getValues(); assertEquals(3, values.size()); }
@Test public void testGetValues() throws IOException { String spreadsheetId = this.createTestSpreadsheet(); this.populateValuesWithStrings(spreadsheetId); ValueRange result = this.snippets.getValues(spreadsheetId, "A1:C2"); List<List<Object>> values = result.getValues(); assertEquals(2, values.size()); assertEquals(3, values.get(0).size()); }
public void executeWorkItem(WorkItem workItem, WorkItemManager workItemManager) { Map<String, Object> results = new HashMap<String, Object>(); String paramSheetId = (String) workItem.getParameter("SheetId"); // to learn google spreadsheet ranges go to // https://developers.google.com/sheets/api/guides/concepts String paramRange = (String) workItem.getParameter("Range"); try { RequiredParameterValidator.validate(this.getClass(), workItem); Sheets service = auth.getSheetsService(appName, clientSecret); ValueRange sheetResponse = service.spreadsheets().values() .get(paramSheetId, paramRange) .execute(); List<List<Object>> values = sheetResponse.getValues(); results.put(RESULTS_VALUES, values); workItemManager.completeWorkItem(workItem.getId(), results); } catch (Exception e) { handleException(e); } }
ValueRange sheetsResponse = sheetsService.spreadsheets().values() .get(dataSpreadsheetId, dataRangeNotation).execute(); List<List<Object>> values = sheetsResponse.getValues();