Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

In a given internalExchangeInfo.xml there should only be a single Exchange element, which should also be set as the default. As this file only serves as your internal adapter endpoints, there is no support / functionality centered around having multiple internal exchanges.

Exchange Info

Code Block
<exchangeInfo xmlns="urn:gov:hhs:fha:nhinc:exchange"
    xmlns:ns2="urn:gov:hhs:fha:nhinc:exchange:directory">
    <defaultExchange>adapter</defaultExchange>
    <exchanges>
        ...
    </exchanges>
</exchangeInfo>

The above snippet can be broken down as follows:


ElementDescription
exchangeInfo
<defaultExchange>adapter</defaultExchange>defaultExchangeThe default Exchange to use for the file. This will always be the first (and only, in the case of Internal Exchange Info files) exchange specified in the Exchanges element
<exchanges> ... </exchanges>exchangesThis will hold your exchange for internal adapter endpoints. There should only be a single <exchange> element contained here at all times.

Exchanges

...

...

...
    <exchanges>
        <exchange type="local">
            <name>adapter</name>
            <disabled>true</disabled>
            <lastUpdated></lastUpdated>
            <organizationList>
                ...
            </organizationList>
        </exchange>
    </exchanges>
...

The breakdown of the schema is as follows:

The exchange root element specifying the type of . Will always be of "local" type, as we do not use UDDI or FHIR lookups for internal endpoints.<name>adapter</name><disabled>true</disabled>
ElementDescription
<exchange type="local">exchange
nameThe name of the exchange. This should exactly match the <defaultExchange> element. In the case of the example: "adapter"
disabledA required schema element for the Exchange Type. This will always be "true" as internal exchanges do not do refresh on a FHIR or UDDI server.
<lastUpdated></lastUpdated>lastUpdatedA required schema element for the Exchange Type. This should be left blank, as it is not used for any purpose.
<organizationList>orgalizationListThe list of organizations specified by this exchange. Internal Exchange info files will always have 1 organization with the given HCID.

Organizations

Code Block
			... 				
				<organization>
                    <ns2:name>Gateway 1</ns2:name>
                    <ns2:hcid>urn:oid:1.1</ns2:hcid>
                    <ns2:endpointList>
                        <ns2:endpoint>
                            <ns2:name>ServiceName1</ns2:name>
                            <ns2:endpointConfigurationList>
                                <ns2:endpointConfiguration>
                                    <ns2:url>https://localhost:8181/CONNECTGateway/GatewayService/ServiceName1Version2</ns2:url>
                                    <ns2:version>2.0</ns2:version>
                                </ns2:endpointConfiguration>
                                <ns2:endpointConfiguration>
                                    <ns2:url>https://localhost:8181/CONNECTGateway/GatewayService/ServiceName1Version1</ns2:url>
                                    <ns2:version>1.0</ns2:version>
                                </ns2:endpointConfiguration>
                            </ns2:endpointConfigurationList>
                        </ns2:endpoint>
                       <ns2:endpoint>
                            <ns2:name>Service1AdapterName</ns2:name>
                            <ns2:endpointConfigurationList>
                                <ns2:endpointConfiguration>
                                    <ns2:url>https://localhost:8181/CONNECTAdapter/Service1Adapter</ns2:url>
                                    <ns2:version>LEVEL_a0</ns2:version>
                                </ns2:endpointConfiguration>
                            </ns2:endpointConfigurationList>
                        </ns2:endpoint>
                    </ns2:endpointList>
                    <ns2:targetRegion>US-NY</ns2:targetRegion>
                    <ns2:targetRegion>US-VA</ns2:targetRegion>
                </organization>
			...
 The <ns2:hcid>urn:oid:1.1</hcid><ns2endpointList>
ElementDescription
<ns2:name>Gateway 1</ns2:name>organization
ns2:nameThe name of the organization. In the case of the example: "Gateway 1"
ns2:hcidThe HCID of the given internal organization. This should match the same HCID in your adapter.properties file as well.
ns2:endpointListThe list of services that this organization may have.
ns2:endpoint
<ns2ns2:endpoint>Root element of a given endpoint. Houses information on the given servicenameThe service name to be looked up by CONNECT. The service names must match the service name lookup of CONNECT in order to function as these are not arbitrarily named. For example, the Document Submission secured adapter is "adapterxdrsecured".The <endpointConfigurationList> element holds
ns2:endpointConfigurationListHolds a list of endpoints for that service, as well as the endpoint URL and spec version. CONNECT uses numerical numbers for all proxy layers and
ns2:endpointConfiguration
ns2:urlThe URL of the given endpoint to be used by CONNECt
ns2:versionthe Spec Version of this endpoint. Most service layers are numerically named, whereas adapter layers are often "LEVEL_a0" for adapter layers.