@Override public AttributeCondition between(Object from, Object to) { setOperatorAndArgument(new BetweenOperator(this, new ValueRange(from, to))); return this; }
@Override public AttributeCondition includeLower(boolean includeLower) { ValueRange valueRange = (ValueRange) operatorAndArgument.getArgument(); valueRange.setIncludeLower(includeLower); return this; }
@Override public AttributeCondition includeUpper(boolean includeUpper) { ValueRange valueRange = (ValueRange) operatorAndArgument.getArgument(); valueRange.setIncludeUpper(includeUpper); return this; }
@Override public String visit(BetweenOperator operator) { StringBuilder sb = new StringBuilder(); ValueRange range = operator.getArgument(); if (!range.isIncludeLower() || !range.isIncludeUpper()) { // if any of the bounds are not included then we cannot use BETWEEN and need to resort to comparison appendAttributePath(sb, operator.getAttributeCondition()); sb.append(operator.getAttributeCondition().isNegated() ? (range.isIncludeLower() ? " < " : " <= ") : (range.isIncludeLower() ? " >= " : " > ")); appendArgument(sb, range.getFrom()); sb.append(operator.getAttributeCondition().isNegated() ? " OR " : " AND "); appendAttributePath(sb, operator.getAttributeCondition()); sb.append(operator.getAttributeCondition().isNegated() ? (range.isIncludeUpper() ? " > " : " >= ") : (range.isIncludeUpper() ? " <= " : " < ")); appendArgument(sb, range.getTo()); } else { // if the bounds are included then we can use BETWEEN if (operator.getAttributeCondition().isNegated()) { sb.append("NOT "); } appendAttributePath(sb, operator.getAttributeCondition()); sb.append(" BETWEEN "); appendArgument(sb, range.getFrom()); sb.append(" AND "); appendArgument(sb, range.getTo()); } return sb.toString(); }
String spreadsheetID = getResources().getString(R.string.my_google_spreadsheet_id); Integer sheetID = getResources().getInteger(R.integer.my_google_sheet_id); BatchUpdateSpreadsheetResponse response; BatchUpdateSpreadsheetRequest batchRequests = new BatchUpdateSpreadsheetRequest(); List<Request> requests = new ArrayList<Request>(); InsertDimensionRequest insertDimensionRequest = new InsertDimensionRequest(); DimensionRange dimRange = new DimensionRange(); dimRange.setStartIndex(32); dimRange.setEndIndex(33); dimRange.setSheetId(sheetID); dimRange.setDimension("ROWS"); insertDimensionRequest.setRange(dimRange); insertDimensionRequest.setInheritFromBefore(false); requests.add( new Request().setInsertDimension(insertDimensionRequest)); batchRequests = new BatchUpdateSpreadsheetRequest(); batchRequests.setRequests( requests ); response = this.mService.spreadsheets().batchUpdate(spreadsheetID, batchRequests).execute(); System.out.println(response.toPrettyString()); List<List<Object>> argData = getData(entryTitle, entryValue); ValueRange vRange = new ValueRange(); vRange.setRange("2016!A33"); vRange.setValues(argData); List<ValueRange> vList = new ArrayList<>(); vList.add(vRange); BatchUpdateValuesRequest batchRequest = new BatchUpdateValuesRequest(); batchRequest.setValueInputOption("USER-ENTERED"); batchRequest.setData(vList); this.mService.spreadsheets().values().batchUpdate(spreadsheetID, batchRequest).execute();
StringBuilder sb = new StringBuilder(); ValueRange range = operator.getArgument(); if (!range.isIncludeLower() || !range.isIncludeUpper()) { (range.isIncludeLower() ? " < " : " <= ") : (range.isIncludeLower() ? " >= " : " > ")); appendArgument(sb, range.getFrom()); sb.append(operator.getAttributeCondition().isNegated() ? " OR " : " AND "); appendAttributePath(sb, operator.getAttributeCondition()); sb.append(operator.getAttributeCondition().isNegated() ? (range.isIncludeUpper() ? " > " : " >= ") : (range.isIncludeUpper() ? " <= " : " < ")); appendArgument(sb, range.getTo()); if (wrap) { sb.append(')'); appendArgument(sb, range.getFrom()); sb.append(" AND "); appendArgument(sb, range.getTo());
@Override public AttributeCondition between(Object from, Object to) { setOperatorAndArgument(new BetweenOperator(this, new ValueRange(from, to))); return this; }
@Override public AttributeCondition includeUpper(boolean includeUpper) { ValueRange valueRange = (ValueRange) operatorAndArgument.getArgument(); valueRange.setIncludeUpper(includeUpper); return this; }
@Override public AttributeCondition includeLower(boolean includeLower) { ValueRange valueRange = (ValueRange) operatorAndArgument.getArgument(); valueRange.setIncludeLower(includeLower); return this; }
ValueRange vr = new ValueRange().setValues(writeData).setMajorDimension("ROWS"); service.spreadsheets().values() .update(id, writeRange, vr)