All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.minidev.json.actions.ElementRemover Maven / Gradle / Ivy

Go to download

JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999. JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language.

The newest version!
package net.minidev.json.actions;

import net.minidev.json.JSONObject;
import net.minidev.json.actions.traverse.JSONTraverser;
import net.minidev.json.actions.traverse.RemoveElementsJsonAction;
import net.minidev.json.actions.traverse.JSONTraverseAction;

import java.util.*;

/**
 * Removes key:value elements from every node of a {@link JSONObject} matching the list of user-specified elements.
 * 

* An element to remove must be specified as a key:value pair *

* Usage Example: *

* To remove the element k2:v2 from the {@link JSONObject} {k0:{k2:v2, k3:v3}, k1:{k2:v2, k4:v4}} use the remover like so: *

 * PathRemover pr = new PathRemover("k2.v2");
 * JSONObject cleanObject = pr.remove(new JSONObject(...));
 * 
* The resulting object 'cleanObject' would be {k0:{k3:v3}, k1:{k4:v4}} *

* See unit tests for more examples * * @author [email protected] * */ public class ElementRemover { private Map elementsToRemove; public ElementRemover(Map elementsToRemove) { this.elementsToRemove = elementsToRemove == null ? Collections. emptyMap() : elementsToRemove; } public ElementRemover(JSONObject elementsToRemove) { this.elementsToRemove = elementsToRemove == null ? Collections. emptyMap() : elementsToRemove; } public JSONObject remove(JSONObject objectToClean) { JSONTraverseAction strategy = new RemoveElementsJsonAction(this.elementsToRemove); JSONTraverser traversal = new JSONTraverser(strategy); traversal.traverse(objectToClean); return (JSONObject) strategy.result(); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy