1
0
mirror of https://github.com/gnosygnu/xowa.git synced 2026-03-02 03:49:30 +00:00

Cfg: Add better escaping for val and dflt

This commit is contained in:
gnosygnu
2016-12-26 10:15:40 -05:00
parent 460f4a323b
commit 6f3500d129
9 changed files with 72 additions and 52 deletions

View File

@@ -30,6 +30,7 @@ class Gfobj_fld_ {
, Fld_tid__long = 4
, Fld_tid__double = 5
, Fld_tid__str = 6
, Fld_tid__bry = 7
;
}
class Gfobj_fld_str implements Gfobj_fld {
@@ -39,6 +40,13 @@ class Gfobj_fld_str implements Gfobj_fld {
public Object As_obj() {return val;}
public String As_str() {return val;} private String val;
}
class Gfobj_fld_bry implements Gfobj_fld {
public Gfobj_fld_bry(String key, byte[] val) {this.key = key; this.val = val;}
public String Key() {return key;} private final String key;
public byte Fld_tid() {return Gfobj_fld_.Fld_tid__bry;}
public Object As_obj() {return val;}
public byte[] As_bry() {return val;} private byte[] val;
}
class Gfobj_fld_bool implements Gfobj_fld {
public Gfobj_fld_bool(String key, boolean val) {this.key = key; this.val = val;}
public String Key() {return key;} private final String key;

View File

@@ -49,6 +49,7 @@ public class Gfobj_nde implements Gfobj_grp {
public Gfobj_nde Add_int(String key, int val) {return Add_fld(new Gfobj_fld_int(key, val));}
public Gfobj_nde Add_long(String key, long val) {return Add_fld(new Gfobj_fld_long(key, val));}
public Gfobj_nde Add_str(String key, String val) {return Add_fld(new Gfobj_fld_str(key, val));}
public Gfobj_nde Add_bry(String key, byte[] val) {return Add_fld(new Gfobj_fld_bry(key, val));}
public Gfobj_nde Add_url(String key, Io_url val) {return Add_fld(new Gfobj_fld_str(key, val.Raw()));}
public Gfobj_nde Add_double(String key, double val) {return Add_fld(new Gfobj_fld_double(key, val));}
public Gfobj_nde Add_nde(String key, Gfobj_nde val) {return Add_fld(new Gfobj_fld_nde(key, val));}

View File

@@ -53,6 +53,7 @@ public class Gfobj_wtr__json {
private void Write_fld(Gfobj_fld itm) {
switch (itm.Fld_tid()) {
case Gfobj_fld_.Fld_tid__str: wtr.Kv_str(itm.Key() , ((Gfobj_fld_str)itm).As_str()); break;
case Gfobj_fld_.Fld_tid__bry: wtr.Kv_bry(itm.Key() , ((Gfobj_fld_bry)itm).As_bry()); break;
case Gfobj_fld_.Fld_tid__int: wtr.Kv_int(itm.Key() , ((Gfobj_fld_int)itm).As_int()); break;
case Gfobj_fld_.Fld_tid__long: wtr.Kv_long(itm.Key() , ((Gfobj_fld_long)itm).As_long()); break;
case Gfobj_fld_.Fld_tid__bool: wtr.Kv_bool(itm.Key() , ((Gfobj_fld_bool)itm).As_bool()); break;