Search in sources :

Example 1 with ExtWrapMap

use of org.javarosa.core.util.externalizable.ExtWrapMap in project javarosa by opendatakit.

the class FormInstance method readExternal.

public void readExternal(DataInputStream in, PrototypeFactory pf) throws IOException, DeserializationException {
    super.readExternal(in, pf);
    schema = (String) ExtUtil.read(in, new ExtWrapNullable(String.class), pf);
    dateSaved = (Date) ExtUtil.read(in, new ExtWrapNullable(Date.class), pf);
    namespaces = (HashMap<String, Object>) ExtUtil.read(in, new ExtWrapMap(String.class, String.class));
    setRoot((TreeElement) ExtUtil.read(in, TreeElement.class, pf));
}
Also used : ExtWrapMap(org.javarosa.core.util.externalizable.ExtWrapMap) Date(java.util.Date) ExtWrapNullable(org.javarosa.core.util.externalizable.ExtWrapNullable)

Example 2 with ExtWrapMap

use of org.javarosa.core.util.externalizable.ExtWrapMap in project javarosa by opendatakit.

the class FormDef method readExternal.

/**
 * Reads the form definition object from the supplied stream.
 * <p/>
 * Requires that the instance has been set to a prototype of the instance
 * that should be used for deserialization.
 *
 * @param dis - the stream to read from.
 * @throws IOException
 * @throws InstantiationException
 * @throws IllegalAccessException
 */
@Override
public void readExternal(DataInputStream dis, PrototypeFactory pf) throws IOException, DeserializationException {
    setID(ExtUtil.readInt(dis));
    setName(ExtUtil.nullIfEmpty(ExtUtil.readString(dis)));
    setTitle((String) ExtUtil.read(dis, new ExtWrapNullable(String.class), pf));
    setChildren((List<IFormElement>) ExtUtil.read(dis, new ExtWrapListPoly(), pf));
    setInstance((FormInstance) ExtUtil.read(dis, FormInstance.class, pf));
    setLocalizer((Localizer) ExtUtil.read(dis, new ExtWrapNullable(Localizer.class), pf));
    List<Condition> vcond = (List<Condition>) ExtUtil.read(dis, new ExtWrapList(Condition.class), pf);
    for (Condition condition : vcond) {
        addTriggerable(condition);
    }
    List<Recalculate> vcalc = (List<Recalculate>) ExtUtil.read(dis, new ExtWrapList(Recalculate.class), pf);
    for (Recalculate recalculate : vcalc) {
        addTriggerable(recalculate);
    }
    finalizeTriggerables();
    outputFragments = (List<IConditionExpr>) ExtUtil.read(dis, new ExtWrapListPoly(), pf);
    submissionProfiles = (HashMap<String, SubmissionProfile>) ExtUtil.read(dis, new ExtWrapMap(String.class, SubmissionProfile.class));
    formInstances = (HashMap<String, DataInstance>) ExtUtil.read(dis, new ExtWrapMap(String.class, new ExtWrapTagged()), pf);
    eventListeners = (HashMap<String, List<Action>>) ExtUtil.read(dis, new ExtWrapMap(String.class, new ExtWrapListPoly()), pf);
    extensions = (List<XFormExtension>) ExtUtil.read(dis, new ExtWrapListPoly(), pf);
    resetEvaluationContext();
}
Also used : Condition(org.javarosa.core.model.condition.Condition) IConditionExpr(org.javarosa.core.model.condition.IConditionExpr) DataInstance(org.javarosa.core.model.instance.DataInstance) Recalculate(org.javarosa.core.model.condition.Recalculate) ExtWrapTagged(org.javarosa.core.util.externalizable.ExtWrapTagged) ExtWrapMap(org.javarosa.core.util.externalizable.ExtWrapMap) Localizer(org.javarosa.core.services.locale.Localizer) ExtWrapListPoly(org.javarosa.core.util.externalizable.ExtWrapListPoly) List(java.util.List) ArrayList(java.util.ArrayList) ExtWrapList(org.javarosa.core.util.externalizable.ExtWrapList) ExtWrapList(org.javarosa.core.util.externalizable.ExtWrapList) ExtWrapNullable(org.javarosa.core.util.externalizable.ExtWrapNullable)

Example 3 with ExtWrapMap

use of org.javarosa.core.util.externalizable.ExtWrapMap in project javarosa by opendatakit.

the class FormDef method writeExternal.

/**
 * Writes the form definition object to the supplied stream.
 *
 * @param dos - the stream to write to.
 * @throws IOException
 */
@Override
public void writeExternal(DataOutputStream dos) throws IOException {
    ExtUtil.writeNumeric(dos, getID());
    ExtUtil.writeString(dos, ExtUtil.emptyIfNull(getName()));
    ExtUtil.write(dos, new ExtWrapNullable(getTitle()));
    ExtUtil.write(dos, new ExtWrapListPoly(getChildren()));
    ExtUtil.write(dos, getMainInstance());
    ExtUtil.write(dos, new ExtWrapNullable(localizer));
    List<Condition> conditions = dagImpl.getConditions();
    List<Recalculate> recalcs = dagImpl.getRecalculates();
    ExtUtil.write(dos, new ExtWrapList(conditions));
    ExtUtil.write(dos, new ExtWrapList(recalcs));
    ExtUtil.write(dos, new ExtWrapListPoly(outputFragments));
    ExtUtil.write(dos, new ExtWrapMap(submissionProfiles));
    // for support of multi-instance forms
    ExtUtil.write(dos, new ExtWrapMap(formInstances, new ExtWrapTagged()));
    ExtUtil.write(dos, new ExtWrapMap(eventListeners, new ExtWrapListPoly()));
    ExtUtil.write(dos, new ExtWrapListPoly(extensions));
}
Also used : Condition(org.javarosa.core.model.condition.Condition) ExtWrapListPoly(org.javarosa.core.util.externalizable.ExtWrapListPoly) Recalculate(org.javarosa.core.model.condition.Recalculate) ExtWrapTagged(org.javarosa.core.util.externalizable.ExtWrapTagged) ExtWrapMap(org.javarosa.core.util.externalizable.ExtWrapMap) ExtWrapList(org.javarosa.core.util.externalizable.ExtWrapList) ExtWrapNullable(org.javarosa.core.util.externalizable.ExtWrapNullable)

Example 4 with ExtWrapMap

use of org.javarosa.core.util.externalizable.ExtWrapMap in project javarosa by opendatakit.

the class SubmissionProfile method readExternal.

@SuppressWarnings("unchecked")
public void readExternal(DataInputStream in, PrototypeFactory pf) throws IOException, DeserializationException {
    ref = (IDataReference) ExtUtil.read(in, new ExtWrapTagged(IDataReference.class));
    method = ExtUtil.nullIfEmpty(ExtUtil.readString(in));
    action = ExtUtil.nullIfEmpty(ExtUtil.readString(in));
    mediaType = ExtUtil.nullIfEmpty(ExtUtil.readString(in));
    attributeMap = (HashMap<String, String>) ExtUtil.read(in, new ExtWrapMap(String.class, String.class));
}
Also used : ExtWrapTagged(org.javarosa.core.util.externalizable.ExtWrapTagged) ExtWrapMap(org.javarosa.core.util.externalizable.ExtWrapMap)

Example 5 with ExtWrapMap

use of org.javarosa.core.util.externalizable.ExtWrapMap in project javarosa by opendatakit.

the class SubmissionProfile method writeExternal.

public void writeExternal(DataOutputStream out) throws IOException {
    ExtUtil.write(out, new ExtWrapTagged(ref));
    ExtUtil.writeString(out, ExtUtil.emptyIfNull(method));
    ExtUtil.writeString(out, ExtUtil.emptyIfNull(action));
    ExtUtil.writeString(out, ExtUtil.emptyIfNull(mediaType));
    ExtUtil.write(out, new ExtWrapMap(attributeMap));
}
Also used : ExtWrapTagged(org.javarosa.core.util.externalizable.ExtWrapTagged) ExtWrapMap(org.javarosa.core.util.externalizable.ExtWrapMap)

Aggregations

ExtWrapMap (org.javarosa.core.util.externalizable.ExtWrapMap)9 ExtWrapNullable (org.javarosa.core.util.externalizable.ExtWrapNullable)7 ExtWrapList (org.javarosa.core.util.externalizable.ExtWrapList)5 ExtWrapListPoly (org.javarosa.core.util.externalizable.ExtWrapListPoly)5 ExtWrapTagged (org.javarosa.core.util.externalizable.ExtWrapTagged)5 ArrayList (java.util.ArrayList)3 List (java.util.List)3 Date (java.util.Date)2 Condition (org.javarosa.core.model.condition.Condition)2 Recalculate (org.javarosa.core.model.condition.Recalculate)2 HashMap (java.util.HashMap)1 IConditionExpr (org.javarosa.core.model.condition.IConditionExpr)1 DataInstance (org.javarosa.core.model.instance.DataInstance)1 Localizer (org.javarosa.core.services.locale.Localizer)1 OrderedMap (org.javarosa.core.util.OrderedMap)1 ExtWrapBase (org.javarosa.core.util.externalizable.ExtWrapBase)1 ExtWrapMapPoly (org.javarosa.core.util.externalizable.ExtWrapMapPoly)1 PrototypeFactory (org.javarosa.core.util.externalizable.PrototypeFactory)1