Package er.rest.format

Source Code of er.rest.format.ERXSproutCoreRestWriter

package er.rest.format;

import er.rest.ERXRestRequestNode;

public class ERXSproutCoreRestWriter extends ERXJSONRestWriter {
  @Override
  protected ERXRestRequestNode processNode(ERXRestRequestNode node) {
    ERXRestRequestNode rootNode = new ERXRestRequestNode(null, true);

    ERXRestRequestNode recordsNode = new ERXRestRequestNode("content", false);
    recordsNode.setArray(true);
    rootNode.addChild(recordsNode);

    if (node.isArray()) {
      for (ERXRestRequestNode child : node.children()) {
        recordsNode.addChild(child);
      }
    }
    else {
      recordsNode.addChild(node);
    }

    ERXRestRequestNode idsNode = new ERXRestRequestNode("ids", false);
    idsNode.setArray(true);
    rootNode.addChild(idsNode);

    for (ERXRestRequestNode child : recordsNode.children()) {
      Object id = child.id();
      idsNode.addChild(new ERXRestRequestNode(null, id, false));
    }

    ERXRestRequestNode countNode = new ERXRestRequestNode("count", Integer.valueOf(recordsNode.children().size()), false);
    rootNode.addChild(countNode);

    return rootNode;
  }
}
TOP

Related Classes of er.rest.format.ERXSproutCoreRestWriter

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.