QueryThings extends AbstractCommand<QueryThings> implements ThingSearchQueryCommand<QueryThings> { public static QueryThings fromJson(final String jsonString, final DittoHeaders dittoHeaders) { return fromJson(JsonFactory.newObject(jsonString), dittoHeaders); } private  QueryThings(final DittoHeaders dittoHeaders,
            @Nullable final String filter,
            @Nullable final List<String> options,
            @Nullable final JsonFieldSelector fields,
            @Nullable final Collection<String> namespaces); static QueryThings of(@Nullable final String filter, @Nullable final List<String> options,
            @Nullable final JsonFieldSelector fields, @Nullable final Set<String> namespaces,
            final DittoHeaders dittoHeaders); static QueryThings of(final DittoHeaders dittoHeaders); static QueryThings fromJson(final String jsonString, final DittoHeaders dittoHeaders); static QueryThings fromJson(final JsonObject jsonObject, final DittoHeaders dittoHeaders); @Override Optional<String> getFilter(); Optional<List<String>> getOptions(); Optional<JsonFieldSelector> getFields(); @Override Optional<Set<String>> getNamespaces(); @Override QueryThings setNamespaces(@Nullable final Collection<String> namespaces); @Override QueryThings setDittoHeaders(final DittoHeaders dittoHeaders); @Override boolean equals(@Nullable final Object o); @Override int hashCode(); @Override String toString(); static final String NAME; static final String TYPE; }
@Test public void fromJsonWithAllFieldsSetV1() { assertAllFieldsSet(QueryThings.fromJson(JSON_ALL_FIELDS_V1, DittoHeaders.empty())); }
@Test public void fromJsonWithAllFieldsSetV2() { assertAllFieldsSet(QueryThings.fromJson(JSON_ALL_FIELDS_V2, DittoHeaders.empty())); }
@Test public void fromJsonWithOnlyRequiredFieldsSetV1() { assertMinimal(QueryThings.fromJson(JSON_MINIMAL_V1, DittoHeaders.empty())); }
@Test public void fromJsonWithOnlyRequiredFieldsSetV2() { assertMinimal(QueryThings.fromJson(JSON_MINIMAL_V2, DittoHeaders.empty())); }