@@ -171,12 +171,16 @@ public class DeliveryParameterBuilder {
171171 static final String LIMIT = "limit" ;
172172 static final String INCLUDE_TOTAL_COUNT = "includeTotalCount" ;
173173
174+ static final String NOT_EQUALS = "[neq]" ;
175+ static final String EMPTY = "[empty]" ;
176+ static final String NOT_EMPTY = "[nempty]" ;
174177 static final String LESS_THAN = "[lt]" ;
175178 static final String LESS_THAN_OR_EQUALS = "[lte]" ;
176179 static final String GREATER_THAN = "[gt]" ;
177180 static final String GREATER_THAN_OR_EQUALS = "[gte]" ;
178181 static final String RANGE = "[range]" ;
179182 static final String IN = "[in]" ;
183+ static final String NOT_IN = "[nin]" ;
180184 static final String CONTAINS = "[contains]" ;
181185 static final String ANY = "[any]" ;
182186 static final String ALL = "[all]" ;
@@ -211,6 +215,52 @@ public DeliveryParameterBuilder filterEquals(String attribute, String value) {
211215 return this ;
212216 }
213217
218+ /**
219+ * Attribute value is not the same as the specified value.
220+ *
221+ * @param attribute The attribute.
222+ * @param value The value.
223+ * @return This DeliveryParameterBuilder with the added operator.
224+ * @see <a href="https://docs.kontent.ai/reference/delivery-api#tag/Filtering-content/filtering-operators">
225+ * More in Filtering operators.</a>
226+ */
227+ public DeliveryParameterBuilder filterNotEquals (String attribute , String value ) {
228+ if (attribute != null ) {
229+ nameValuePairs .add (new NameValuePair (String .format ("%s%s" , attribute , NOT_EQUALS ), value ));
230+ }
231+ return this ;
232+ }
233+
234+ /**
235+ * Attribute value is empty.
236+ *
237+ * @param attribute The attribute.
238+ * @return This DeliveryParameterBuilder with the added operator.
239+ * @see <a href="https://docs.kontent.ai/reference/delivery-api#tag/Filtering-content/filtering-operators">
240+ * More in Filtering operators.</a>
241+ */
242+ public DeliveryParameterBuilder filterEmpty (String attribute ) {
243+ if (attribute != null ) {
244+ nameValuePairs .add (new NameValuePair (String .format ("%s%s" , attribute , EMPTY ), null ));
245+ }
246+ return this ;
247+ }
248+
249+ /**
250+ * Attribute value is not empty.
251+ *
252+ * @param attribute The attribute.
253+ * @return This DeliveryParameterBuilder with the added operator.
254+ * @see <a href="https://docs.kontent.ai/reference/delivery-api#tag/Filtering-content/filtering-operators">
255+ * More in Filtering operators.</a>
256+ */
257+ public DeliveryParameterBuilder filterNotEmpty (String attribute ) {
258+ if (attribute != null ) {
259+ nameValuePairs .add (new NameValuePair (String .format ("%s%s" , attribute , NOT_EMPTY ), null ));
260+ }
261+ return this ;
262+ }
263+
214264 /**
215265 * Attribute value is less than the specified value.
216266 *
@@ -333,6 +383,35 @@ public DeliveryParameterBuilder filterIn(String attribute, Collection<String> va
333383 return filterIn (attribute , values .toArray (new String [0 ]));
334384 }
335385
386+ /**
387+ * Attribute value is not in the specified list of values.
388+ *
389+ * @param attribute The attribute.
390+ * @param values The values.
391+ * @return This DeliveryParameterBuilder with the added operator.
392+ * @see <a href="https://docs.kontent.ai/reference/delivery-api#tag/Filtering-content/filtering-operators">
393+ * More in Filtering operators.</a>
394+ */
395+ public DeliveryParameterBuilder filterNotIn (String attribute , String ... values ) {
396+ if (attribute != null ) {
397+ nameValuePairs .add (new NameValuePair (String .format ("%s%s" , attribute , NOT_IN ), String .join ("," , values )));
398+ }
399+ return this ;
400+ }
401+
402+ /**
403+ * Attribute value is not in the specified list of values.
404+ *
405+ * @param attribute The attribute.
406+ * @param values The values.
407+ * @return This DeliveryParameterBuilder with the added operator.
408+ * @see <a href="https://docs.kontent.ai/reference/delivery-api#tag/Filtering-content/filtering-operators">
409+ * More in Filtering operators.</a>
410+ */
411+ public DeliveryParameterBuilder filterNotIn (String attribute , Collection <String > values ) {
412+ return filterNotIn (attribute , values .toArray (new String [0 ]));
413+ }
414+
336415 /**
337416 * Attribute with an array of values contains the specified value.
338417 *
0 commit comments