All Classes and Interfaces

Class
Description
Abstract class for used retrieving and validating codes from user defined and HL7 specific tables that correspond to a conformance profile.
An abstraction of the common features of Field, Component, and SubComponent.
 
This class contains the functionality for a parent class in the Conformance class set heirarchy to hold Repeatable children.
This class contains the functionality for a Data Type in the Conformance class set
Abstract base class for encoding rules
A partial implementation of Group.
Abstract base class for Exceptions that are able to create acknowledgement messages from their error code and location information
A TransportLayer that exchanges messages through JMS destinations.
A default implementation of Message.
Abstract base class for message rules
Abstract base class for ModelClassFactory implementations that read event maps from the file system.
NOT YET IN USE
Base class for Primitives.
Abstract base class for primitive rules
Provides common functionality needed by implementers of the Segment interface.
An abstraction of SegGroup and MessageProfile (both are containers for segment specs).
 
Base class for a SuperStructure message.
Base class for a textual primitive datatypes such as FT, TX, ST.
A base implementation of TransportLayer which looks after the addition of common metadata to each inbound Transportable.
An abstract Type that provides a default implementation of getName().
An abstraction of the parts of a use case (eg EventFlow), all of which have a name and a body.
Abstract base class of a ValidationExceptionHandler that supports a validation subject.
Abstract implementation of a message validator.
Checks whether messages can be accepted and creates appropriate ACK messages.
A structure for decisions as to whether a message can be accepted, along with a corresponding accept or reject acknowlegement message.
An application that returns AA acknowledgements.
Determines whether messages are acceptable for storage.
Represents a decision regarding whether a message can be initially accepted for further processing.
Acknowledgment code table
A TCP/IP connection to a remote HL7 server.
Performs the initiation role of a message exchange (i.e sender of the first message; analogous to the client in a client-server interaction), according to HL7's original mode processing rules.
Use Case Actor.
From an HL7 messaging perspective, an Application is a consumer of a messages.
Represents any problem encountered during processing of a message by an Application.
The Interface ApplicationExceptionHandler.
A utility for loading Application and ReceivingApplication bindings from configuration files.
Routes messages to the appropriate application.
Encapsulates the message fields used for routing of messages from the HL7 protocol to the appropriate Application.
A default implementation of ApplicationRouter
Wraps a legacy HAPI Application to convert it to a new style ReceivingApplication
A default implementation of ApplicationRouter.AppRoutingData.
Wraps a ca.uhn.hl7v2.app.Application as a ca.uhn.hl7v2.protocol.ReceivingApplication.
Utility methods for working with arrays
Default Implementation of a BlockingMap.
 
Abstract base class for Validation Rule building that provides factory methods for Predicates.
Specialized version of ModelClassFactory that always returns the same version or even structure.
Charset utility class
Message rule which enforces that only one "choice element" within any groups in the message must only have content within one of the possible choices.
Support class that allows process messages of the parameterized type
Looks up the profile in a file "ID.xml" somewhere in in classpath (where ID is the profile ID).
A client-side SocketStreamSource.
Version 2.1 contains a number of unspecified CM datatypes, which we model as GenericComposites.
Maps local codes to interface codes and vice versa.
Interface used retrieving and validating codes from user defined and HL7 specific tables that correspond to a conformance profile.
Registry containing CodeStore instances registered for Conformance Profile IDs or ID patterns.
ValidationExceptionHandler that collects all ValidationExceptions in a list.
This class contains functionality used by the DT class in the version 2.3.0, 2.3.1, and 2.4 packages Note: The class description below has been excerpted from the Hl7 2.4 documentation.
This class contains functionality used by the TM class in the version 2.3.0, 2.3.1, and 2.4 packages Note: The class description below has been excerpted from the Hl7 2.4 documentation.
This class contains functionality used by the TS class in the version 2.3.0, 2.3.1, and 2.4 packages
The specification for a particular field component in a message profile.
Represents the category of HL7 data types that contain more than one component (e.g.
A validation rule that applies to a fully populated composite type.
This exception will be thrown when an invalid data type is populated
Part of a specification that defines application behavior and IDs for other parts of the spec.
This exception will be thrown when an invalid data type is populated
This exception will be thrown when an invalid data type is populated
A MessageRule that checks conformance to message profiles.
This exception will be thrown when an invalid Repetition is attempted
Interface for a connection
Provides access to shared HL7 Connections.
An object that wants to be notified of new remote connections.
ModelClassFactory which allows custom packages to search to be specified.
Represents a problem with the validity of a data type, such as an attempt to set the value of a primitive type to something invalid for that type.
This class is used to provide utility functions for other datatype classes and methods.
An explicit data value specified in a message profile.
An object of this class represents a variable-size path for identifying the location of a datum within an HL7 message, which we can use for maintaining parser state and for generating a suitable string key (in the ZYX[a]-b[c]-d-e style) for a piece of data in the message (see toString()).
Tools for copying data recurvisely from one message element into another.
An Application that does nothing with the message and returns an Application Reject message in response.
Default Implementation of a CodeStoreRegistry
Handles "escaping" and "unescaping" of text according to the HL7 escape sequence rules defined in section 2.10 of the standard (version 2.4).
Provides a global cached thread pool if Connections and Servers are not initialized with their specific ExecutorService instances.
Default implementation for HapiContext.
Default implementation of ModelClassFactory.
A ValidationContext with a default set of rules initially defined.
Builder implementing the default validation rules as described in the HL7 standard
Simple implementation of a handler that just tracks if DefaultValidationExceptionHandler.error(ValidationException) has been called at least once.
A ValidationContext with a default set of rules initially defined.
Builder implementing the default validation rules as described in the HL7 standard except for the TN data type, which is not appropriate anywhere outside the U.S.
A default conformance profile validator.
Default implementation of a message validator.
A default XMLParser.
Default implementation of a HiLo ID generator that allows to use another (non-HiLo) ID generator for generating the "hi" part of the ID.
Delegates all visit method calls to the wrapped MessageVisitor.
Delegating Rule Builder that additionally allows to delegate rule building.
A use case derivative event.
Message classes marked with this annotation should not have their structure cached by the parser.
Represents an HL7 DT (date) datatype.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.1 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
A utility for connecting separate inbound and outbound TransortLayers in a manner that avoids deadlock.
Tools for testing message strings for semantic equivalence without assuming the correctness of parsers.
A class that indicated an HL7 encoding acceptable within a specification.
 
 
Represents the set of special characters used to encode traditionally encoded HL7 messages.
Detects message encoding (ER7 / XML) without relying on any external dependencies
Represents a problem where a Parser does not support a particular HL7 encoding.
A validation rule that applies to encoded message strings.
A RuleBinding that applies to EncodingRules.
Rule builder for EncodingRules.
 
 
 
Error code table
Deprecated.
use DefaultEscaping instance
Handles "escaping" and "unescaping" of text according to the HL7 escape sequence rules defined in section 2.10 of the standard (version 2.4).
A use case event flow.
Expression used to obtain values from a message structure
ExtendedMllpReader uses a message-dependent decoder to respect a potentially populated MSH-18.
ExtendedMinLLPWriter uses a message-dependent encoder to obey a potentially populated field MSH-18.
Deprecated.
call MinLowerLayerProtocol(boolean) and pass true as argument
A set of "extra" components (sub-components) that are not a standard part of a field (component) but have been added at runtime.
The specification for a specific field in a message profile.
Field is a auxiliary model class only created while visiting parts of the message.
Replacement for MessageIDGenerator.
Convenience class that delegates expensive ID retrieval from a file to a default FileBasedGenerator.
Implements CodeMapper using files to store code values.
Stores profiles in a local directory.
 
Interface for evaluating whether an object should be returned by the iterator
Holds a group of repetitions for a given Profile and exercises cardinality constraints
Utility class that provides methods for fixing OBX-5 data type.
Provides methods to convert between HL7 Formatted Text encoding (See Chapter 2.7) and other encoding schemes.
An unspecified Composite datatype that has an undefined number of components, each of which is a Varies.
An undefined segment group.
A generic HL7 message, meant for parsing message with unrecognized structures into a flat list of segments.
 
 
 
 
 
 
 
 
 
 
 
 
 
GenericModelClassFactory is a ModelClassFactory implementation which always returns generic types:
A Parser that delegates parsing tasks to an underlying PipeParser and DefaultXMLParser as needed.
An unspecified Primitive datatype that imposes no constraints on its string value.
An unspecified segment that has an undefined number of fields, each of which is a Varies.
An abstraction representing >1 message parts which may repeated together.
Interface that provides a starting point for Configuring HAPI core services (e.g.
Abstract base class for subclasses supporting the access to a HapiContext.
Abstract base class for a HiLo-style generator that cheaply generates "lo" IDs in memory but only seldomly increments (potentially more expensive) a "hi" ID, e.g.
Represents an exception encountered while processing an HL7 message.
Reads from an InputStream containing a stream of encoded HL7 messages and iterates over those messages.
Reads from an InputStream containing a stream of encoded HL7 messages and iterates over those messages.
 
An HL7Reader implements reading from an input stream using a particular lower layer protocol.
A TCP/IP based server.
An HL7 service.
An HL7Writer implements writing to an output stream using a particular lower layer protocol.
Used to access the hapi.home system property.
This class contains functionality used by the ID class in the version 2.3.0, 2.3.1, 2.4, and 2.5 packages Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.1 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
MessageID generator interface.
Extension for continuous ID sequences
Ordered ID sequences with a configurable increment
HL7 ID type which also stores a namespace string
An implementation note.
Interface for an Initiator
A convenient way for the initiator of a message exchange to send a message to a remote server and await the response in the same thread.
Default implementation of Initiator.
In-memory variant of an message ID generator.
The class IntRef is a reference for an int value.
This class contains functionality used by the IS class in the version 2.3.0, 2.3.1, 2.4, and 2.5 packages Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.1 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Contains information about the composition of a given type of Structure.
Base class for an ID type which also stores a namespace string
A facade for a JMS Queue or Topic.
An implementation of JMSDestination that uses an underlying Queue.
A TransportLayer that uses a JMS Queue.
An implementation of JMSDestination that uses an underlying Topic.
A TransportLayer that uses a JMS Topic.
A TransportLayer that exchanges messages through JMS destinations.
A LazyConnection behaves like an ordinary connection except for the fact that the actual socket connection is created lazily right before the first message is sent over the associated Initiator.
Bridge between the IDGenerator interface and the old MessageIDGenerator class.
Represents a problem encountered while using a Lower Layer Protocol.
Location class to determine the location of an element
 
Represents a particular "lower layer protocol" over which HL7 messages can be sent.
Represents a complete HL7 message including all structures, segments, and fields.
Deprecated.
use one of the IDGenerator implementations
Iterates over all defined nodes (ie segments, groups) in a message, regardless of whether they have been instantiated previously.
Iterates over all defined nodes (ie segments, groups) in a message, regardless of whether they have been instantiated previously.
An index of a child structure within a group, consisting of the name and rep of of the child.
A structure position within a message.
A structure position within a message.
Used to navigate the nested group structure of a message.
Deprecated. 
A result set for a message query.
A validation rule that applies to a fully populated message object.
A RuleBinding that applies to MessageRules.
Rule Builder for MessageRules
Validation utilities for parsed and encoded messages.
A MessageVisitor can be used to traverse a message structure.
This factory interface creates message visitors.
Static methods for working with MessageVisitor
 
 
Base MessageVisitor implementation that just logs each call with TRACE level
Conformance Profile meta data (an element of ConformanceProfile and StaticDef).
A utility for getting a list of fields from a Message, e.g.
 
 
Writes HL7 messages to an OutputStream.
Implements the "Minimal Lower Layer Protocol" from the HL7 Implementation Guide, Appendix C.
Some constants for MLLP
An implementation of the HL7 Minimal Lower Layer Protocol (see HL7 implementation guide appendix C).
Looks up classes for message model components (e.g.
ID generator that simply returns the return value of System.nanoTime().
Structure definition which defines a non-standard structure within a parent structure.
A ValidationContext with no validation initially defined.
 
Base class for "NULL" datatype.
Special datatype used in fields which have been withdrawn from the HL7 specification and should not contain a value.
Special datatype used in fields which have been withdrawn from the HL7 specification and should not contain a value.
Special datatype used in fields which have been withdrawn from the HL7 specification and should not contain a value.
Special datatype used in fields which have been withdrawn from the HL7 specification and should not contain a value.
Special datatype used in fields which have been withdrawn from the HL7 specification and should not contain a value.
Special datatype used in fields which have been withdrawn from the HL7 specification and should not contain a value.
A non-functional implementation of SafeStorage.
Validation rule for detecting populated elements in a SuperStructure which do not belong to the given message type
Validation rule for detecting unknown segments in a message
 
A debugging utility that logs raw messages and parsed/encoded versions, and warnings about apparent discrepancies between them.
Parses HL7 message Strings into HL7 Message objects and encodes HL7 Message objects into HL7 message Strings.
Contains configuration which will be applied to any parsers which are a part of the given HAPI Context.
An implementation of Parser that supports traditionally encoded (ie delimited with characters like |, ^, and ~) HL7 messages.
A use case postcondition.
A use case precondition.
 
Predicate used for validation rules.
Abstract base class for message rules that are evaluated using predicates
Abstract base class for PrimitiveTypeRules that validate using predicates
 
Interface for predicate-aware validation rules.
Extracts specified fields from unparsed messages.
Represents the category of HL7 data types that contain a single value (in other words have no subcomponents).
Rule builder for PrimitiveTypeRules
A rule that applies to a primitive datatype.
A RuleBinding that applies to PrimitiveTypeRules.
Encapsulates both the client and server roles of the HL7-defined "original mode" and "enhanced mode" processing rules.
The operational context of a Processor.
Default implementation of ProcessorContext.
A default implementation of Processor.
This particular implementation of CodeStore retrieves valid codes and validates codeSystems using tables found in 'spec xml tables only' docs generated from the HL7 Messaging Workbench tool.
Represents something wrong with a profile.
An exception indicating that some message contents don't reflect a static profile.
An exception indicating that a static profile doesn't correspond to HL7 rules.
Parses a Message Profile XML document into a RuntimeProfile object.
A repository for conformance profile documents.
Provides access to a (configurable) ProfileStore.
A message profile Segment or SegGroup.
The class ReaderThread read from a Reader into a char[] buffer.
Iterator though existing Stuctures in a message.
Base class for read-only profile stores.
Listens for incoming messages on a certain input stream, and sends them to the appropriate location.
Handle any protocol level parsing exceptions and pass them on to an exception handler
From an HL7 messaging perspective, a ReceivingApplication is a consumer of a messages.
Represents any problem encountered during processing of a message by a ReceivingApplication.
The Interface ReceivingApplicationExceptionHandler.
 
Deprecated.
A class which implements this interface will provide the methods to return Min and Max repetitions
ValidationExceptionHandler that logs all ValidationExceptions and optionally throws the first one wrapped in a HL7Exception.
ValidationExceptionHandler that generates response messages as statically configured and based on the outcome of a validation process.
A testable rule to which HL7 messages (at least certain specific message) should conform.
RuleBinding<T extends Rule<?>>
An association between a type of item to be validated (eg a datatype or message) and a validation Rule.
 
RuleTypeBuilder<S extends RuleTypeBuilder<S,T>,T extends Rule<?>>
Defines the type of rule to be built.
A conformance specification (see HL7 2.5 section 2.12).
Represents a persistent store for incoming messages.
A specification for a message segment in a conformance profile.
A specification for a segment group in a conformance profile.
Represents an HL7 message segment, which is a unit of data that contains multiple fields.
A tool for getting segments by name within a message or part of a message.
Contains configuration which will be applied to any servers which are created using the given HAPI Context.
 
A StreamSource that gets streams from ServerSockets.
Base class for a unified management of threads with a defined lifecycle.
Severity code table
A simple TCP/IP-based HL7 server.
A very simple example of a validation handler that simply returns a boolean value as validation result.
Deprecated.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Pluggable socket factory interface
A base implementation of StreamSource based on sockets.
A conformance specification (see HL7 2.5 section 2.12).
 
A "static message profile" (see HL7 2.5 section 2.12).
A source of input and output streams for use with stream-based TransportLayers.
Various string utility methods
Part of an HL7 message: either a segment or group.
Defines
 
 
The specification for a particular field sub-component in a message profile.
Represents a Message or Group which contains child elements for more than one structure type.
Wraps a message to provide access to fields using a terse location specification syntax.
Validation rule for checking values extracted by a Terser.
 
Represents an HL7 TM (time) datatype.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.1 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
An HL7 message in text form, with optional metadata, which can be handled in a transport layer.
Default implementation of Transportable.
Represents a problem that has occured during transport of a message string to / from some other server.
Encapsulates the transport layer of a connection to another HL7 server.
Deprecated.
Deprecated.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Represents an HL7 timestamp, which is related to the HL7 TS type.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.0 documentation.
Note: The class description below has been excerpted from the Hl7 2.3.1 documentation.
Note: The class description below has been excerpted from the Hl7 2.4 documentation.
A TCP/IP-based HL7 Service that uses separate ports for inbound and outbound messages.
An HL7 datatype.
Defines the behaviour to use when an unexpected segment is discovered while parsing a message.
A static helper class that allows to obtain unmodifiable message wrappers, i.e.
A read-only profile store that loads profiles from URLs.
A TransportLayer that reads and writes from an URL (for example over HTTP).
The use case portion of a conformance specification.
ID generator that simply return random UUIDs as message IDs.
Base class for visitors that run over a message and thereby collect ValidationExceptions.
A set of rules for message validation.
The ValidationContext returned by getContext() is determined by the system property "ca.uhn.hl7v2.validation.context_class".
A default implementation of ValidationContext.
A failure to validate against a rule.
Handler that is called for every violation during a message validation.
This factory is responsible for generating a ValidationExceptionHandler instance, which is then used when validating a message using a DefaultValidator.
Base class every rule builder starts with.
Validates messages against message profiles.
Interface to validates messages.
Interface type for Varies
Varies is a Type used as a placeholder for another Type in cases where the appropriate Type is not known until run-time (e.g.
 
Class to log the HAPI version when HAPI is first used (mostly for troubleshooting purposes)
Interface that marks implementing classes as being capable to be visited by a MessageVisitor
A message rule that runs a ValidatingMessageVisitor over the message, collecting exceptions while traversing
Deprecated.
Validation rule for blaming a wring HL7 version
An element that a profile defines as "not used" (X) is present in the message.
 
the SAXParser reports parsing events to an object of this class.
 
Parses and encodes HL7 messages in XML form, according to HL7's normative XML encoding specification.
Validates HL7 version 2 messages encoded according to the HL7 XML Encoding Syntax against XML schemas provided by hl7.org.