Presentation on theme: "Overview of CASSOs EIDE Solution Randy House CASSO Corporation."— Presentation transcript:
Overview of CASSOs EIDE Solution Randy House CASSO Corporation
Project Goals Needed to replace WEIC X.25-based data links –Low cost implementation –An XML-based solution –Retained PID functionality Wanted to leverage work done on E-Tag project –Known technology –Quicker results Target System –CASSOs Legacy system
CASSOs EIDE Solution.. Our solution is comprised of three main applicatioins… –EIDE SoapServer –EIDE Authority –EIDE Sender
CASSOs EIDE Solution EIDE SoapServer Process –Listener to receive inbound traffic –Validates message against current EIDE XML Schema (using MS XML Parser 4.0) If not well-formed then reject and send error response. If well-formed then –Send back OK response –Determine EIDE method-type being requested. –Dispatch message to EIDE Authority
CASSOs EIDE Solution (cont.) EIDE Authority Process –Child process (a.k.a. in-process server) of EIDE SoapServer process. –Parses contents of received XML message into appropriate in-memory structure for the method being requested (For example: the PutSchedule structure) –Reads memory structure and Creates a flat file or, Redirects the XML message or, Populates directly into any ODBC-compliant database.
CASSO EIDE Solution (cont.) EIDE Sender process –Handles all outbound EIDE traffic –Parses data from flat file into appropriate in- memory structure. Data could come directly from a database. –Formulates outbound XML message –Places SMXP wrapper around XML message. –Posts message request to appropriate URL URL determined from EIDE Registry lookup –Waits for response message.
Data Flow Diagram… The whole picture..
The Guts of our EIDE solution… The EIDE DLL (Dynamic Linked Library) –Library of routines to create EIDE applications with a few lines of code. EIDE-specific parsing routine for –EIDE XML Document creation –In-memory data population and retrieval –SMXP inbound/outbound message handling to deliver EIDE contents to remote servers.
EIDE DLL (cont.) May reference the EIDE DLL from any visual language to create XML methods and custom solutions. Contains EIDE registry object so you can lookup entity URLs. Dont need to know XML or SMXP messaging. Could save several man-months development time!
EIDE DLL (cont.) EIDE DLL will… –Validate inbound and outbound XML message –Determine and dispatch to appropriate method handler. –Parse and load in-memory structure of ALL EIDE methods. –Can write to DB or whatever. –Formulate responses to caller.
EIDE DLL (cont.) Has built-in FTP functions Written in MS VB 6 Used in all EIDE applications Started to write EIDE SoapServer as ASP.net Web Service. –Current EIDE DLL worked fine.
EIDE DLL example.. Simple example using the PutSched object: –PutSched.AccountCode = 5047028123 –PutSched.StartTime = 2004-11-01T07:00:00z –PutSched.StopTime = 2004-11-01T08:00:00z –PutSched.Quantity(1) = -25 –PutSched.URL = http://eide.cassocorp.com –PutSched.Send
Questions???? For more information: Randy House CASSO Corporation (509) 444-3557 firstname.lastname@example.org