Transférer les fichiers vers 'src/fr/sae/JSonInspector/Storage'
This commit is contained in:
parent
285c936322
commit
936e74f10b
@ -1,12 +1,20 @@
|
||||
package fr.sae.JSonInspector.Storage;
|
||||
package JsonInspector.Storage;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
public class Node {
|
||||
private final ArrayList<Value> values = new ArrayList<>();
|
||||
private final List<Value> values = new ArrayList<>();
|
||||
private final String name;
|
||||
private final Type type;
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @param name le nom du noeud
|
||||
* @param type le type du noeud
|
||||
*/
|
||||
public Node(String name, Type type) {
|
||||
this.type = type;
|
||||
if (type == Type.ELEMENT) {
|
||||
@ -16,6 +24,11 @@ public class Node {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Détermine le type de la chaîne de caractère passé en argument
|
||||
* @param value la valeur à classifier
|
||||
*/
|
||||
private void findType(String value) {
|
||||
if (value.charAt(0) == '"' && value.charAt(value.length()-1) == '"') {
|
||||
values.add(new Value<String>(Tree.cleanOpeningExpression(value)));
|
||||
@ -33,6 +46,12 @@ public class Node {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Ajoute une valeur au noeud
|
||||
* @param value la valeur à ajouter
|
||||
* @param <T> le type de la valeur à ajouter
|
||||
*/
|
||||
public <T> void add(T value) {
|
||||
if (value != null) {
|
||||
if (value.getClass().equals(Node.class)) {
|
||||
@ -43,38 +62,66 @@ public class Node {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @return le type du noeud
|
||||
*/
|
||||
public Type getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @return le nom du noeud
|
||||
*/
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Retourne la valeur contenue à l'index spécifié
|
||||
* @param index l'index de la valeur
|
||||
* @return la valeur trouvée
|
||||
*/
|
||||
public Value get(int index) {
|
||||
return values.get(index);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* retourne le nombre de valeurs du noeud
|
||||
* @return
|
||||
*/
|
||||
public int getSize() {
|
||||
return values.size();
|
||||
}
|
||||
|
||||
public boolean isObject() {
|
||||
return type == Type.OBJECT;
|
||||
}
|
||||
|
||||
|
||||
public boolean isArray() {
|
||||
return type == Type.ARRAY;
|
||||
}
|
||||
|
||||
|
||||
public boolean isElement() {
|
||||
return type == Type.ELEMENT;
|
||||
}
|
||||
|
||||
|
||||
public boolean isPair() {
|
||||
return type == Type.PAIR;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Test si l'objet est du type 'ELEMENT' ou 'OBJECT'
|
||||
* @return
|
||||
*/
|
||||
public boolean isArrayObjectElement() {
|
||||
boolean array = type == Type.ARRAY;
|
||||
boolean object = type == Type.OBJECT;
|
||||
@ -87,6 +134,7 @@ public class Node {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
String string = name + " : ";
|
||||
|
@ -1,5 +1,9 @@
|
||||
package fr.sae.JSonInspector.Storage;
|
||||
package JsonInspector.Storage;
|
||||
|
||||
|
||||
/**
|
||||
* Un type créé pour les valeurs qui ne sont pas de type String, Double ou Integer (e type est un String dans les faits).
|
||||
*/
|
||||
public class Other {
|
||||
String value;
|
||||
|
||||
@ -7,6 +11,7 @@ public class Other {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return value;
|
||||
|
@ -1,7 +1,7 @@
|
||||
package fr.sae.JSonInspector.Storage;
|
||||
package JsonInspector.Storage;
|
||||
|
||||
import fr.sae.JSonInspector.Exception.JsonSyntaxException;
|
||||
import fr.sae.JSonInspector.Settings.Parameters;
|
||||
import JsonInspector.Exception.JsonSyntaxException;
|
||||
import JsonInspector.Settings.Parameters;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
@ -1,5 +1,9 @@
|
||||
package fr.sae.JSonInspector.Storage;
|
||||
package JsonInspector.Storage;
|
||||
|
||||
|
||||
/**
|
||||
* Un type énuméré contenant tous les types possibles de noeud
|
||||
*/
|
||||
public enum Type {
|
||||
OBJECT, ELEMENT, ARRAY, PAIR, NULL
|
||||
}
|
||||
|
@ -1,16 +1,23 @@
|
||||
package fr.sae.JSonInspector.Storage;
|
||||
package JsonInspector.Storage;
|
||||
|
||||
/**
|
||||
* Représente une valeur
|
||||
* @param <T> le type de la valeur
|
||||
*/
|
||||
public class Value <T> {
|
||||
private T value;
|
||||
|
||||
|
||||
public Value(T value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
|
||||
public T getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
|
||||
public boolean isObjectOrArray() {
|
||||
if (value.getClass().equals(Node.class)) {
|
||||
Node node = (Node) value;
|
||||
@ -24,14 +31,17 @@ public class Value<T> {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public boolean isNode() {
|
||||
return value.getClass().equals(Node.class);
|
||||
}
|
||||
|
||||
|
||||
public boolean isString () {
|
||||
return value.getClass().equals(String.class);
|
||||
}
|
||||
|
||||
|
||||
public boolean isNumber() {
|
||||
return value.getClass().equals(Integer.class) || value.getClass().equals(Double.class);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user