Skip to main content
Jump to: navigation, search

Difference between pages "OHF" and "PTP/designs/rm view"

(Difference between pages)
(Audit record repository)
 
m (Interface: IRMResourceManager)
 
Line 1: Line 1:
=== About OHF ===
+
== Overview ==
This is the Eclipse Open Healthcare Framework (OHF) wiki. The OHF project addresses part of an need to improve the levels of interoperability between applications and systems within and across healthcare organizations – corporate and regions.
+
  
=== Additional OHF sites ===
+
This is a preliminary design for the PTP Resource Management system. This is the design of the first phase product, which is limited in scope to viewing the state of the resource manager. This includes the machines, jobs, queues, and nodes that are under the resource manager's control. The classes currently in PTP will implement these new interfaces in addition to their previously implemented interfaces.
* [http://www.eclipse.org/ohf/ OHF Project Home Page]
+
* [http://ohf-dev.blogspot.com/ OHF Committers Blog]
+
  
=== Discussions ===
+
[[Image: ptp_resource_manager_view.pdf|UML diagram]]
* [[OHF using SCA]]
+
  
== OHF Relationship Management (& Current Events etc) ==
+
== Package resourcemanager ==
  
* [[OHF Relationship Management: Java]]
+
For interfaces and abstract classes, the responsibilities and collaborations refer to concrete objects that are implementations of the interface or abstract class.
* [[OHF Relationship Management: Eclipse]]
+
* [[OHF Relationship Management: Open Source Healthcare initiatives]]
+
* [[OHF Relationship Management: Standards Organisations]]
+
* [[OHF Relationship Management: Corporates]]
+
  
=== Public Healthcare Serveices ===
+
=== Interface: IRMResourceManager ===
This section contains a list of known public standard healthcare services.
+
  
The listed services are actors on one of the [http://www.ihe.net IHE] profiles. OHF implements components that interacts with these services. The purpose of the list is to help developers test the plugins they develop, to validate full interoperability across vendors, and to validate comliance with the standard.
+
; Responsibilities: Proxy used to connect to the ResourceManagerHost's actual resource manager (ARM).<br> Retrieve list of machines, nodes, jobs, process, and queues from ARM.<br>  Notify registered objects that the lists have changed, either in composition, or in their element's attributes due to changes propagated from the ARM
 +
; Collaborations:    IRMResourceManagerHost<br> IRMResourceManagerListener<br> RMResourceManagerEvent<br> RMNodesChangedEvent<br>RMJobsChangedEvent<br> RMQueuesChangedEvent<br> RMStructureChangedEvent<br> IRMMachine, IRMNode, IRMJob, IRMQueue
  
None of the listed services are part of Eclipse or Eclipse OHF.
+
=== Interface: IRMResourceManagerListener ===
The services are publicly avaliable for demos and interoperability
+
tests and they are not part of production environment.
+
  
'''We welcome any service providor that have a public standard based healthcare service to contact us in order to add new services to the list'''
+
; Responsibilities:  Registration site for Observer pattern to allow objects to be notified of changes in the IRMResourceManager's status
  
====Audit record repository====
+
;Collaborations:   IRMResourceManager<br> IRMEvent
{| class="wikitable" style="background-color: white; border: 1px solid black;"
+
|+Public Healthcare Services
+
|-
+
! Vendor !! Service URL !! BSD SYSLOG Port !! Reliable Syslog Port 
+
|-
+
! IBM
+
| ibmod235.dal-ebis.ihost.com || 541 || N/A
+
|}
+
  
 +
=== Interface: ResourceManagerEvent ===
  
{| class="wikitable" style="margin: 1em auto 1em auto"
+
; ResponsibilitiesDetermine type of changed in the IRMResourceManager's state
|+ '''Cells left-aligned, table centered'''
+
; Collaborations: none
! Duis || aute || irure
+
|-
+
| dolor || in reprehenderit || in voluptate velit
+
|-
+
| esse cillum dolore || eu fugiat nulla || pariatur.
+
|}
+
  
== OHF Meetings ==
+
=== Class: ResourceManagerHost ===
* [[Face to Face meeting at EclipseCon]]
+
 
** [[Pictures from the meeting]]
+
;Responsibilities:  Determine which remote (or local) host's resource manager to proxy<br> Determine which resource manager on the host to proxy<br> Provide hosts's status
 +
; Collaborations: RMStatus
 +
 
 +
=== Interface: IRMMachine ===
 +
 
 +
; Responsibilities:  Provide the status information, i.e. attributes, for the ARM's associated machine<br> Set and provide specific attributes for a given attribute description<br> List all nodes associated with ARM's machine<br> Provide machine's status
 +
; Collaborations:    IAttribute<br> IAttrDesc<br> RMStatus
 +
 
 +
=== Interface: IRMQueue ===
 +
 
 +
; Responsibilities:  Provide the status information, i.e. attributes, for the ARM's associated queue<br> Set and provide specific attributes for a given attribute description<br> List all nodes that may have jobs dispatched from this queue<br> Provide queue's status
 +
;  Collaborations:    IAttribute<br>  IAttrDesc<br> RMStatus
 +
 
 +
=== Interface: IRMNode ===
 +
 
 +
; Responsibilities:  Provide the status information, i.e. attributes, for the ARM's associated node<br> Set and provide specific attributes for a given attribute description<br> List all jobs associated with ARM's node<br> List all queues that can run jobs on this node<br> Provide node's status
 +
; Collaborations:    IAttribute<br> IAttrDesc<br> RMStatus
 +
 
 +
=== Interface: IRMJob ===
 +
 
 +
; Responsibilities:  Provide the status information, i.e. attributes, for the ARM's associated job<br> Set and provide specific attributes for a given attribute description<br> List all processes associated with ARM's job<br> Provide job's status
 +
; Collaborations:    IAttribute<br>  IAttrDesc<br> RMJobStatus
 +
 
 +
=== Interface:  IRMProcess ===
 +
 
 +
; Responsibilities:  Provide the status information, i.e. attributes, for the ARM's associated process<br> Set and provide specific attributes for a given attribute description<br> Provide node on which the process runs
 +
; Collaborations:    IAttribute<br> IAttrDesc
 +
 
 +
=== Interface: IAttribute ===
 +
 
 +
;  Responsibilities:  Maintain the relationship between an attribute's value and its description<br> Specifies a strict-weak ordering of itself and other attributes<br>  Provide a string representation of the attribute
 +
; Collaborations:    IAttrDesc
 +
 
 +
=== Interface: IAttrDesc ===
 +
 
 +
;  Responsibilities:  Provide a string description of the attribute <br>Provide a name of the attribute<br> Know the actual type of the attribute<br>  Create new attributes of the correct type
 +
; Collaborations:    IAttribute
 +
 
 +
=== Enumeration: RMStatus ===
 +
 
 +
; Responsibilities:  Provide consistent labeling of element status<br> OK element is up and able to accept jobs, etc.<br> DOWN element is down, reason will have to be provided in other attributes<br> UNAVAILABLE element is unable to accept jobs, etc., reason will have to be provied in other attributes
 +
; Collaborations:    ResourceManagerHost, IRMMachine, IRMNode, IRMQueue
 +
 
 +
=== Enumeration: RMJobStatus ===
 +
 
 +
; Responsibilities:  Provide consistent labeling of job status<br> PENDING job is pending in queue<br> RUNNING job is running normally<br> SUSPENDED job is suspended, reason will have to be provided in other attributes<br> DONE job has completed normally<br> EXIT job has completed abnormally, reason will have to be provide in other attributes<br> UNKNOWN job status is unknown
 +
; Collaborations:    IRMJob

Revision as of 12:00, 9 May 2006

Overview

This is a preliminary design for the PTP Resource Management system. This is the design of the first phase product, which is limited in scope to viewing the state of the resource manager. This includes the machines, jobs, queues, and nodes that are under the resource manager's control. The classes currently in PTP will implement these new interfaces in addition to their previously implemented interfaces.

File:Ptp resource manager view.pdf

Package resourcemanager

For interfaces and abstract classes, the responsibilities and collaborations refer to concrete objects that are implementations of the interface or abstract class.

Interface: IRMResourceManager

Responsibilities
Proxy used to connect to the ResourceManagerHost's actual resource manager (ARM).
Retrieve list of machines, nodes, jobs, process, and queues from ARM.
Notify registered objects that the lists have changed, either in composition, or in their element's attributes due to changes propagated from the ARM
Collaborations
IRMResourceManagerHost
IRMResourceManagerListener
RMResourceManagerEvent
RMNodesChangedEvent
RMJobsChangedEvent
RMQueuesChangedEvent
RMStructureChangedEvent
IRMMachine, IRMNode, IRMJob, IRMQueue

Interface: IRMResourceManagerListener

Responsibilities
Registration site for Observer pattern to allow objects to be notified of changes in the IRMResourceManager's status
Collaborations
IRMResourceManager
IRMEvent

Interface: ResourceManagerEvent

Responsibilities
Determine type of changed in the IRMResourceManager's state
Collaborations
none

Class: ResourceManagerHost

Responsibilities
Determine which remote (or local) host's resource manager to proxy
Determine which resource manager on the host to proxy
Provide hosts's status
Collaborations
RMStatus

Interface: IRMMachine

Responsibilities
Provide the status information, i.e. attributes, for the ARM's associated machine
Set and provide specific attributes for a given attribute description
List all nodes associated with ARM's machine
Provide machine's status
Collaborations
IAttribute
IAttrDesc
RMStatus

Interface: IRMQueue

Responsibilities
Provide the status information, i.e. attributes, for the ARM's associated queue
Set and provide specific attributes for a given attribute description
List all nodes that may have jobs dispatched from this queue
Provide queue's status
Collaborations
IAttribute
IAttrDesc
RMStatus

Interface: IRMNode

Responsibilities
Provide the status information, i.e. attributes, for the ARM's associated node
Set and provide specific attributes for a given attribute description
List all jobs associated with ARM's node
List all queues that can run jobs on this node
Provide node's status
Collaborations
IAttribute
IAttrDesc
RMStatus

Interface: IRMJob

Responsibilities
Provide the status information, i.e. attributes, for the ARM's associated job
Set and provide specific attributes for a given attribute description
List all processes associated with ARM's job
Provide job's status
Collaborations
IAttribute
IAttrDesc
RMJobStatus

Interface: IRMProcess

Responsibilities
Provide the status information, i.e. attributes, for the ARM's associated process
Set and provide specific attributes for a given attribute description
Provide node on which the process runs
Collaborations
IAttribute
IAttrDesc

Interface: IAttribute

Responsibilities
Maintain the relationship between an attribute's value and its description
Specifies a strict-weak ordering of itself and other attributes
Provide a string representation of the attribute
Collaborations
IAttrDesc

Interface: IAttrDesc

Responsibilities
Provide a string description of the attribute
Provide a name of the attribute
Know the actual type of the attribute
Create new attributes of the correct type
Collaborations
IAttribute

Enumeration: RMStatus

Responsibilities
Provide consistent labeling of element status
OK element is up and able to accept jobs, etc.
DOWN element is down, reason will have to be provided in other attributes
UNAVAILABLE element is unable to accept jobs, etc., reason will have to be provied in other attributes
Collaborations
ResourceManagerHost, IRMMachine, IRMNode, IRMQueue

Enumeration: RMJobStatus

Responsibilities
Provide consistent labeling of job status
PENDING job is pending in queue
RUNNING job is running normally
SUSPENDED job is suspended, reason will have to be provided in other attributes
DONE job has completed normally
EXIT job has completed abnormally, reason will have to be provide in other attributes
UNKNOWN job status is unknown
Collaborations
IRMJob

Back to the top