Revision 46956 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.impl/src/main/java/org/gvsig/fmap/dal/feature/impl/featurereference/FeatureReferencePK.java
FeatureReferencePK.java | ||
---|---|---|
20 | 20 |
import org.gvsig.fmap.dal.feature.spi.FeatureProvider; |
21 | 21 |
import org.gvsig.fmap.dal.feature.spi.FeatureReferenceProviderServices; |
22 | 22 |
import org.gvsig.json.Json; |
23 |
import org.gvsig.json.JsonArrayBuilder; |
|
23 | 24 |
import org.gvsig.json.JsonObjectBuilder; |
24 | 25 |
import org.gvsig.tools.persistence.Persistent; |
25 | 26 |
import org.gvsig.tools.persistence.PersistentState; |
... | ... | |
132 | 133 |
|
133 | 134 |
@Override |
134 | 135 |
public String getCode() { |
135 |
JsonObjectBuilder builder = Json.createObjectBuilder(); |
|
136 |
builder.add("type", PK_TYPE); |
|
137 |
if (this.pk == null) { |
|
138 |
builder.add("size", -1); |
|
139 |
builder.addNull("names"); |
|
140 |
builder.addNull("values"); |
|
141 |
} else { |
|
142 |
builder.add("size", pkNames.length); |
|
143 |
builder.add("names", this.pkNames); |
|
144 |
builder.add("values", this.pk); |
|
145 |
} |
|
146 |
|
|
147 |
String s = builder.toString(); |
|
136 |
String s = toJsonBuilder().toString(); |
|
148 | 137 |
String r = Base64.getEncoder().encodeToString(s.getBytes()); |
149 | 138 |
return r; |
150 | 139 |
} |
... | ... | |
235 | 224 |
return myHashCode; |
236 | 225 |
} |
237 | 226 |
|
227 |
@Override |
|
228 |
public JsonObjectBuilder toJsonBuilder() { |
|
229 |
JsonObjectBuilder builder = Json.createObjectBuilder(); |
|
230 |
builder.add("type", PK_TYPE); |
|
231 |
if (this.pk == null) { |
|
232 |
builder.addNull("names"); |
|
233 |
builder.addNull("values"); |
|
234 |
} else { |
|
235 |
JsonArrayBuilder arrayNames = Json.createArrayBuilder(); |
|
236 |
JsonArrayBuilder arrayValues = Json.createArrayBuilder(); |
|
237 |
for (int i = 0; i < pk.length; i++) { |
|
238 |
arrayNames.add(pkNames[i]); |
|
239 |
arrayValues.add(pk[i]); |
|
240 |
} |
|
241 |
builder.add("names", arrayNames); |
|
242 |
builder.add("values", arrayValues); |
|
243 |
} |
|
244 |
return builder; |
|
245 |
} |
|
238 | 246 |
} |
Also available in: Unified diff