A tool to generate class definitions/reflections by a XML file description. Instances of these classes at runtime are used to implement client-server protocols (MOM). Due to class-cascading, unions and dynamic lists these protocols can achieve any level of complexity.
xfergen [options] -l language [language-options] <input-xml-file>
options: (* multiple option possible)
-h                  :  usage
-v               *  :  increase verbosity
-l language      *  :  language link, choice of c,java,..
-t                  :  keep temporary files

language options for choosen language
-L path             :  output path for generated files, default: .
-o name             :  c    :output name to create lib<name>.a, default: basename(input)
                    :  java :output name to create <name>.jar, default: basename(input)
-I path          *  :  c    : include path to find "xfer.h", default: .
                    :  java: include path to find "xfer.jar", default: .
-T path             : temporary dir, default:./xgenctmp/./xgenjavatmp/

options to validate xml:
-f                  :  proceed even if validating xml with xmllint failed
-d path-to-file     :  absolute path to dtd, default: ./xfer.dtd

options to generate c-code:
-c cc-options       :  compiler options to be passed to cc
-C linker-options   :  linker options to be passe to ld to generate shared library
-S major.minor      :  generate shared library lib<name>.so.major.minor

options to generate java-code:
-p package          :  package name for generated java classes (default:none)

Currently supported languages to generate class defintions are Java and C. The tool xfergen does not generate source-code to modify or to complete. For instances of these classes defined in the libary or Jar there are generic API's for Java and C/C++ (xferjava.jar and libxfer resp.) to allow asynchronous object transfer via TCP/IP based streams. These APIs realise the serialization, TCP/IP streaming and deserialization of the message objects.

Here you find some explanation of the Document Type Description.

This is a Small Example (Registration Server Protocol).

This is a Bigger Example (UV Protocol).

Generated on 4 Mar 2014 for xfergen by  doxygen 1.4.7