BMXNET 4.0 Developer API

Types

         
 All Types  Classes   Interfaces 
 NameDescription
BMXNetException
This simple exception wrapper is used for Exceptions thrown by umknown sources and by the BMX library. Check the InnerException for details.
LocalConsumer
This interface is used on UserControl-based components which are designed to work both inside the EHR and inside a WinForm application. "Consumer" interfaces basically tell Frameworks that a "Consumer"-implementating object need a specific service, versus the service being queried.
LocalEventArgs
The event args used by the LocalEventService.
LocalEventService
Access to local services are access through this interface.
LocalSession
The LocalSession is scoped to the client, whether EHR/VueCentric or a WinForm application. User management, patient/visit context, and local events are the key services. Components/controls that are programmed against this API will work within both the EhrFramework and WinFramework environments.
Log
Current Logging facility for BMXNet. This facility conforms to the EHR/VueCentric method of logging. Logging is either on or off, there is no scale from Info to Fatal to turn off and on.
M
Common M[umps] related function libraries implemented with static members.
RemoteEventArgs
The event args used by the RemoteEventService
RemoteEventService
All async communications with RPMS is performed through the RemoteEventService which is found by calling aRemoteSession.EventServices.
RemoteSession
All server-side RPMS RPC calls are performed through this interface. Each instance of RemoteSession corresponds to a single job (e.g. Cache process) on RPMS. There is always one primary RemoteSession and potentially more when using RemoteSessionPool. When the primary RemoteSession is closed all secondary pooled sessions are also closed and the server broker connection is terminated.
RemoteSessionConsumer
This interface is used on an UserControl-based components that are designed to work both inside the EHR and inside a WinForm application. The "Consumer" interfaces basically tell Frameworks that "Consumer" implementating objects need an specific service.
RemoteSessionPool

Each BMX connection to RPMS contains a single RemoteSessionPool with at least one Session, the primary session. Applications that need additional server processes beyond what can be done with async commands can used the RemoteSessionPool.

Access to the RemoteSessionPool is accomplished by implementing the RemoteSessionPoolConsumer interface on your component/control. Secondary sessions can be opened and closed as they are needed. If the AvailableSessionCount is zero then a null RemoteSession is returned so it is recommend to first check the if a pool HasAvailableSessions before an OpenSession() request.

RemoteSessionPool high-performance can be achieved by keeping RPMS server jobs alive even after secondary sessions are closed. The pool will maintain MaxSessions - 1 number of jobs alive on the server. If the application is finished for awhile needing IdleSessionCount idle jobs, then TerminateIdleSessions() will release those resources on the server. New jobs will then be created on demand.

RemoteSessionPoolConsumer
This interface is used on an UserControl-based components that are designed to work both inside the EHR and inside a WinForm application. The "Consumer" interfaces basically tell Frameworks that "Consumer" implementating objects need an specific service.