BMC Remedy – Action Request Exteranl Authentications – AREA Hub

September 7th, 2009 by Venkat Leave a reply »
*********************************************************
AREA HUB
*********************************************************
The AREA Hub is an AREA plug-in that enables you to add multiple AREA plug-ins to the plug-in server.
The plug-in server directly supports only one AREA plug-in. But sometimes more than one AREA plug-ins might be needed. The AREA Hub allows this. The AREA plug-in itself is the single AREA plug-in to be added to the plug-in server. The rest of the plug-ins can be added as sub plug-ins to the Hub.
How to use it:
==============
1. Create an entry in the ar.cfg/ar.conf file for the AREA HUb as shown here:
Plugin: areahub.dll
Make sure this is the only AREA plug-in being added.
2. Create entries for the rest of the plug-ins in the same file as shown below:
AREA-Hub-Plugin: my_area_plug-in.dll
3. If you are adding multiple entries to this plug-in, create an entry for each plug-in, as shown in the following example:
AREA-Hub-Plugin: my_area_plug-in_1.dll
AREA-Hub-Plugin: my_area_plug-in_2.dll
AREA-Hub-Plugin: my_area_plug-in_3.dll
4. Stop and start the AR System plug-in Server. (This generally requires restarting the AR System server).
These are all the action you needs to do to use the AREA Hub.
How the AREA Hub works.
=======================
Note: The plug-ins added to the AREA Hub are referred to as Hub-plug-ins
1. The AREA Hub loads the Hub-plug-ins in the order in which they appear in the ar.cfg/ar.conf file. So the first entry the AREA Hub finds will be the first plug-in loaded, the second entry the second, and so on.
2. The job of the AREA Hub is to propagate the calls it receives from the plug-in server to each hub-plug-in, as required.
3. When the AREA Hub receives the ARplug-inIdentify call, starting from the top of the Hub-plug-in list , the Hub will make this call to each hub-plug-in, until one of them returns a successful login, or all of them return login failures.
The status returned by the Hub to the plug-in server is as follows:
-  If any of the Hub-plug-ins returns AREA_LOGIN_SUCCESS, the Hub stops chaining and returns this response.
-  If none of the Hub-plug-ins returns AREA_LOGIN_SUCCESS, but at least one of them returned AREA_LOGIN_FAILED, then the Hub returns AREA_LOGIN_FAILED.
-  If none of the Hub-plug-ins returns AREA_LOGIN_SUCCESS or AREA_LOGIN_FAILED, then the Hub returns the highest error code that was returned.
The section below gives more details about how the Hub handles each API received by it.
———————-
ARplug-inIdentify
———————-
-  The Hub identifies itself as an AREA plug-in.
-  AREA plug-ins not yet loaded.
———————-
ARplug-inSetProperties
———————-
- Load all the sub-plug-ins. During loading each sub-plug-in, ARplug-inIdentify is called on each on them.
- Propagate ARplug-inSetProperties call to each sub-plug-in
———————-
ARplug-inInitialization
———————-
- This call is propagated to each sub-plug-in.
———————-
ARplug-inCreateInstance
———————-
- Propagate call to each sub-plug-in.
- The instance objects returned by each plug-in are held by the Hub itself.
———————-
ARplug-inTermination
———————-
- Propagate call to each sub-plug-in.
———————-
ARplug-inDeleteInstance
———————-
- Propagate call to each sub-plug-in
———————-
ARplug-inEvent
———————-
- Propagate call to each sub-plug-in
———————-
AREAVerifyLoginCallback
———————-
- Starting from the top of the sub-plug-in list, the Hub will make this call to each sub-plug-in, until one of them returns a successful login, or all of them return login failures.
- Immediately after making this call to each plug-in, the Hub will make a copy of the returned response, and make a call to the sub-plug-in’s AREAFreeCallback with the response object.
- The chaining will continue until one of the sub-plug-ins returns success, or all of them return something other than success.
- The status returned by the Hub to the plug-in server is as follows:
If any of the sub-plug-ins returns AREA_LOGIN_SUCCESS, the Hub stops chaining and returns this response.
If none of the sub-plug-ins returns AREA_LOGIN_SUCCESS, but at least one of them returned AREA_LOGIN_FAILED, then the Hub returns AREA_LOGIN_FAILED.
If none of the sub-plug-ins returns AREA_LOGIN_SUCCESS or AREA_LOGIN_FAILED, then the Hub returns the highest error code that was returned.
———————-
AREANeedToSyncCallback
———————-
- Starting from the top of the list of plug-ins, the Hub will make this call to each sub-plug-in.
- If any one of them returns a non-zero value, the Hub will stop chaining and return this non-zero value.
- If all the sub-plug-ins return zero, the Hub returns the same.
———————-
AREAFreeCallback
———————-
- On receiving this call, the Hub will free the memory allocated for the returned response object.
- It does not need to propagate this call to the sub-plug-ins because the response that each of them returned was already freedimmediately after the AREAVerifyLogi

The AREA Hub is an AREA plug-in that enables you to add multiple AREA plug-ins to the plug-in server.

The plug-in server directly supports only one AREA plug-in. But sometimes more than one AREA plug-ins might be needed. The AREA Hub allows this. The AREA plug-in itself is the single AREA plug-in to be added to the plug-in server. The rest of the plug-ins can be added as sub plug-ins to the Hub.

How to use it:

==============

1. Create an entry in the ar.cfg/ar.conf file for the AREA HUb as shown here:

Plugin: areahub.dll

Make sure this is the only AREA plug-in being added.

2. Create entries for the rest of the plug-ins in the same file as shown below:

AREA-Hub-Plugin: my_area_plug-in.dll

3. If you are adding multiple entries to this plug-in, create an entry for each plug-in, as shown in the following example:

AREA-Hub-Plugin: my_area_plug-in_1.dll

AREA-Hub-Plugin: my_area_plug-in_2.dll

AREA-Hub-Plugin: my_area_plug-in_3.dll

4. Stop and start the AR System plug-in Server. (This generally requires restarting the AR System server).

These are all the action you needs to do to use the AREA Hub.

How the AREA Hub works.

=======================

Note: The plug-ins added to the AREA Hub are referred to as Hub-plug-ins

1. The AREA Hub loads the Hub-plug-ins in the order in which they appear in the ar.cfg/ar.conf file. So the first entry the AREA Hub finds will be the first plug-in loaded, the second entry the second, and so on.

2. The job of the AREA Hub is to propagate the calls it receives from the plug-in server to each hub-plug-in, as required.

3. When the AREA Hub receives the ARplug-inIdentify call, starting from the top of the Hub-plug-in list , the Hub will make this call to each hub-plug-in, until one of them returns a successful login, or all of them return login failures.

The status returned by the Hub to the plug-in server is as follows:

-  If any of the Hub-plug-ins returns AREA_LOGIN_SUCCESS, the Hub stops chaining and returns this response.

-  If none of the Hub-plug-ins returns AREA_LOGIN_SUCCESS, but at least one of them returned AREA_LOGIN_FAILED, then the Hub returns AREA_LOGIN_FAILED.

-  If none of the Hub-plug-ins returns AREA_LOGIN_SUCCESS or AREA_LOGIN_FAILED, then the Hub returns the highest error code that was returned.

The section below gives more details about how the Hub handles each API received by it.

———————-

ARplug-inIdentify

———————-

-  The Hub identifies itself as an AREA plug-in.

-  AREA plug-ins not yet loaded.

———————-

ARplug-inSetProperties

———————-

- Load all the sub-plug-ins. During loading each sub-plug-in, ARplug-inIdentify is called on each on them.

- Propagate ARplug-inSetProperties call to each sub-plug-in

———————-

ARplug-inInitialization

———————-

- This call is propagated to each sub-plug-in.

———————-

ARplug-inCreateInstance

———————-

- Propagate call to each sub-plug-in.

- The instance objects returned by each plug-in are held by the Hub itself.

———————-

ARplug-inTermination

———————-

- Propagate call to each sub-plug-in.

———————-

ARplug-inDeleteInstance

———————-

- Propagate call to each sub-plug-in

———————-

ARplug-inEvent

———————-

- Propagate call to each sub-plug-in

———————-

AREAVerifyLoginCallback

———————-

- Starting from the top of the sub-plug-in list, the Hub will make this call to each sub-plug-in, until one of them returns a successful login, or all of them return login failures.

- Immediately after making this call to each plug-in, the Hub will make a copy of the returned response, and make a call to the sub-plug-in’s AREAFreeCallback with the response object.

- The chaining will continue until one of the sub-plug-ins returns success, or all of them return something other than success.

- The status returned by the Hub to the plug-in server is as follows:

If any of the sub-plug-ins returns AREA_LOGIN_SUCCESS, the Hub stops chaining and returns this response.

If none of the sub-plug-ins returns AREA_LOGIN_SUCCESS, but at least one of them returned AREA_LOGIN_FAILED, then the Hub returns AREA_LOGIN_FAILED.

If none of the sub-plug-ins returns AREA_LOGIN_SUCCESS or AREA_LOGIN_FAILED, then the Hub returns the highest error code that was returned.

———————-

AREANeedToSyncCallback

———————-

- Starting from the top of the list of plug-ins, the Hub will make this call to each sub-plug-in.

- If any one of them returns a non-zero value, the Hub will stop chaining and return this non-zero value.

- If all the sub-plug-ins return zero, the Hub returns the same.

———————-

AREAFreeCallback

———————-

- On receiving this call, the Hub will free the memory allocated for the returned response object.

- It does not need to propagate this call to the sub-plug-ins because the response that each of them returned was already freed immediately after the AREAVerifyLoginCallback call to them.

Source and Credit: BMC Software Inc.

Related posts:

  1. BMC Remedy Single Sign On (SSO) LDAP Integration
  2. Timeline(History) of BMC Action Request System Remedy
  3. ARS Object History – A version control system for the Remedy Action Request System Server
  4. Terms that you should know in BMC Remedy- Remedy 101
  5. BMC Remedy Action Request System 7.5.00 Release Notes
  6. Remedy Template Library by pathworks_dan
  7. pyARS – the swiss knife for the Remedy developer and admin

Also check our Top posts of the week.


Advertisement

Leave a Reply