public ValueEncodeException(ParameterDataType dataType, Object valueSupplied, Throwable cause) { super(valueSupplied + " cannot be encoded as " + dataType.name(), cause); this.dataType = dataType; this.valueSupplied = valueSupplied; }
@Override public String apply(Parameter parameter) { return parameter.getName(); } }));
public Parameter getParameter(String name, ParameterDataType dataType, String defaultValue, ParameterCollectionType collectionType){ Parameter p = new Parameter(name); p.setDataType(dataType); p.setCollectionType(collectionType); p.setDisplayName("param display name"); if (collectionType.equals(ParameterCollectionType.MULTIPLE)){ p.setDefaultValue(defaultValue.split(",")); }else { p.setDefaultValue(new String[]{defaultValue}); } return p; }
/** * Given a saved query, this method extrapolates the parameter values (using the parameter definition) * and returns it as a multivalued map * * @param savedQuery * @return multivalued map containing parameter values */ private static MultivaluedMap<String, String> extrapolateSampleParamValues(SavedQuery savedQuery) { final MultivaluedHashMap<String, String> paramValues = new MultivaluedHashMap<>(); for(Parameter parameter : savedQuery.getParameters()) { final String sampleValue = ParameterDataTypeEncoder.valueOf(parameter.getDataType().toString()).getSampleValue(); if (parameter.getCollectionType() == ParameterCollectionType.SINGLE) { paramValues.putSingle( parameter.getName(), sampleValue ); } else if (parameter.getCollectionType() == ParameterCollectionType.MULTIPLE) { paramValues.put( parameter.getName(), Lists.newArrayList(sampleValue, sampleValue) ); } } return paramValues; }
static ECMAEscapedSavedQuery getFor(SavedQuery savedQuery) throws LensException { return new ECMAEscapedSavedQuery( savedQuery.getId(), StringEscapeUtils.escapeEcmaScript(savedQuery.getName()), StringEscapeUtils.escapeEcmaScript(savedQuery.getDescription()), StringEscapeUtils.escapeEcmaScript(savedQuery.getQuery()), StringEscapeUtils.escapeEcmaScript(serializeParameters(savedQuery)) ); } }
public void deleteAllSavedQueries() throws JAXBException { ListResponse savedQueryList = listSavedQueries("0", "100", sessionHandleString); if (savedQueryList.getResoures() != null){ for(SavedQuery s: savedQueryList.getResoures()){ deleteSavedQuery(s.getId(), sessionHandleString); } } }
/** * Extracts the default parameter values from the saved query * * @param query * @return multivalued map of parameter values */ public static MultivaluedMap<String, String> getDefaultParameterValues(SavedQuery query) { final MultivaluedMap<String, String> defaults = new MultivaluedHashMap<>(); for(Parameter parameter: query.getParameters()) { String[] defaultValues = parameter.getDefaultValue(); if (defaultValues != null && defaultValues.length !=0) { defaults.addAll(parameter.getName(), defaultValues); } } return defaults; }
@Test public void updateSavedQuery() throws Exception { Long queryId = getSampleSavedQuery("query-update-test").getId(); //Modify query name SavedQuery savedQuery = savedQueryResourceHelper.getSavedQuery(queryId); savedQuery.setName("query-rename"); savedQueryResourceHelper.updateSavedQuery(queryId, sessionHandleString, savedQuery); SavedQuery savedQueryModified = savedQueryResourceHelper.getSavedQuery(queryId); Assert.assertTrue(savedQueryModified.getName().equals("query-rename")); }
private ParameterResolver(SavedQuery savedQuery, MultivaluedMap<String, String> queryParameters) { final ImmutableMap.Builder<String, Parameter> builder = ImmutableMap.builder(); for (Parameter parameter : savedQuery.getParameters()) { builder.put(parameter.getName(), parameter); } parameterMap = builder.build(); this.savedQuery = savedQuery; this.queryParameters = SavedQueryHelper.getDefaultParameterValues(savedQuery); this.queryParameters.putAll(queryParameters); }
@Test(enabled = false) //TODO : Enable this once LENS-1341 is fixed public void getSavedQueryParameters() throws Exception { String query = "cube select id,name from sample_dim where id = :value"; ParameterParserResponse res = savedQueryResourceHelper.getSavedQueryParameter(query, sessionHandleString); ImmutableSet<Parameter> paramList = res.getParameters(); Assert.assertEquals(paramList.size(), 1); Assert.assertEquals(paramList.iterator().next().getName(), "value"); }
public static String encodeFor(ParameterDataType dataType, String rawValue) throws ValueEncodeException { try { return ParameterDataTypeEncoder.valueOf(dataType.toString()).encode(rawValue); } catch (Throwable e) { throw new ValueEncodeException(dataType, rawValue, e); } }
/** * Given a saved query, this method extrapolates the parameter values (using the parameter definition) * and returns it as a multivalued map * * @param savedQuery * @return multivalued map containing parameter values */ private static MultivaluedMap<String, String> extrapolateSampleParamValues(SavedQuery savedQuery) { final MultivaluedHashMap<String, String> paramValues = new MultivaluedHashMap<>(); for(Parameter parameter : savedQuery.getParameters()) { final String sampleValue = ParameterDataTypeEncoder.valueOf(parameter.getDataType().toString()).getSampleValue(); if (parameter.getCollectionType() == ParameterCollectionType.SINGLE) { paramValues.putSingle( parameter.getName(), sampleValue ); } else if (parameter.getCollectionType() == ParameterCollectionType.MULTIPLE) { paramValues.put( parameter.getName(), Lists.newArrayList(sampleValue, sampleValue) ); } } return paramValues; }
/** * Extracts the default parameter values from the saved query * * @param query * @return multivalued map of parameter values */ public static MultivaluedMap<String, String> getDefaultParameterValues(SavedQuery query) { final MultivaluedMap<String, String> defaults = new MultivaluedHashMap<>(); for(Parameter parameter: query.getParameters()) { String[] defaultValues = parameter.getDefaultValue(); if (defaultValues != null && defaultValues.length !=0) { defaults.addAll(parameter.getName(), defaultValues); } } return defaults; }
private ParameterResolver(SavedQuery savedQuery, MultivaluedMap<String, String> queryParameters) { final ImmutableMap.Builder<String, Parameter> builder = ImmutableMap.builder(); for (Parameter parameter : savedQuery.getParameters()) { builder.put(parameter.getName(), parameter); } parameterMap = builder.build(); this.savedQuery = savedQuery; this.queryParameters = SavedQueryHelper.getDefaultParameterValues(savedQuery); this.queryParameters.putAll(queryParameters); }
@Override public String apply(Parameter parameter) { return parameter.getName(); } }));
public ValueEncodeException(ParameterDataType dataType, Object valueSupplied) { super(valueSupplied + " cannot be encoded as " + dataType.name()); this.dataType = dataType; this.valueSupplied = valueSupplied; }
public static String encodeFor(ParameterDataType dataType, String rawValue) throws ValueEncodeException { try { return ParameterDataTypeEncoder.valueOf(dataType.toString()).encode(rawValue); } catch (Throwable e) { throw new ValueEncodeException(dataType, rawValue, e); } }
public ValueEncodeException(ParameterDataType dataType, Object valueSupplied) { super(valueSupplied + " cannot be encoded as " + dataType.name()); this.dataType = dataType; this.valueSupplied = valueSupplied; }
public ValueEncodeException(ParameterDataType dataType, Object valueSupplied, Throwable cause) { super(valueSupplied + " cannot be encoded as " + dataType.name(), cause); this.dataType = dataType; this.valueSupplied = valueSupplied; }