Nexjexpress/JSON Adapter

From CDOT Wiki
Revision as of 16:12, 17 September 2010 by Gbatumbya (talk | contribs) (Project Goal)
Jump to: navigation, search

JSON Adapter

Project Goal

Developer an adapter to expose NexJ Express Server objects using JSON

Definitions

JSON (JavaScript Object Notation)
A data text based data interchange format for representing simple data structures and associative arrays (called objects).

NexJ Server Objects
Integer, Long, Float, Double, BigDecimal, String, StringId, OID, Character, Boolean, Symbol, java.util.Date, java.sql.Date, TZ, TimeZone, SimpleTimeZone, java.sql.Time, java.sql.Timestamp, Binary, PagedBinary, locale, PrivilegeSet, char[], String[], Object[], byte[], ArrayList, PagedArrayList, Pair, ConstPair, PCodeFunction, PCodeMacro, Exception, TransferObject, Request, Response

Current Status

Phase 5: On-going...

Project Phases

Phase 1: Design Proposal (Done)

  • Get requirements from NexJ
  • Incorporate requirements from NexJ into Design of JSON Adapater
  • Proposal proposal for review, make changes as by NexJ until approved

Phase 2: Coding (Done)

  • JSONMarshaller
    • Develop marshaller to transform NexJ Server Objects into JSON representation
  • JSONUnmarshaller
    • Develop an marshaller to transform JSON representation into NexJ Server Objects
  • JSON Server
    • Develop a JSON Server to expose NexJ Server objects in JSON
  • Demo application that interacts with the Server using JSON
    • Read Server Objects
    • Update Server Objects
    • Create Server objects

Phase 3: Code Review 1 (Done)

  • Send patch to NexJ for review

Phase 4: Make Changes as per Code Review 1 (Done)

  • Refactor JSONSever and TextServer to inherit from GenericCharacterStreamHTTPServer
  • Optimize marshaling of nested Pair objects
  • Rename variables and methods as per NexJ Developer's Guide

Phase 5: Code Review 2

  • Send patch to NexJ for review

Links

JSON
http://www.json.org