Difference between revisions of "NAL"

From Gcube Wiki
Jump to: navigation, search
Line 8: Line 8:
 
* Library functionalities description:
 
* Library functionalities description:
 
*# List VO Maps
 
*# List VO Maps
*#* Return a list with the name of the DHN VOs   
+
*#* Returns a list with the name of the DHN VOs   
 
*#*; signature
 
*#*; signature
 
*#*: public Vector getVOMapsList ( ) throws Exception
 
*#*: public Vector getVOMapsList ( ) throws Exception
Line 16: Line 16:
 
*#*: The list of the DHN VOs  
 
*#*: The list of the DHN VOs  
 
*# get VO Map
 
*# get VO Map
*#* Return a VO Map
+
*#* Returns a VO Map
 
*#*; signature
 
*#*; signature
 
*#*: public String getVOMap (String voname) throws Exception
 
*#*: public String getVOMap (String voname) throws Exception

Revision as of 16:35, 21 March 2007

Introduction

The Node Access Library (NAL) is a Java Library that provides different functionalities to access the local node information. It allows to obtain the DHN unique ID, the Running Instance unique ID, the list of service running in the node, the running instance profile of the caller, and the node free disk space. Moreover, the NAL, gives access to the VO Maps and allows services to set/get both the Specific Data section and the State section in their Running Instance profile.

Implentation Overview

Each WSRF service should instantiate a NAL object in order to have access to node information (see Usage Example for details).

  • Library functionalities description:
    1. List VO Maps
      • Returns a list with the name of the DHN VOs
        signature
        public Vector getVOMapsList ( ) throws Exception
        parameters
        n.a.
        return
        The list of the DHN VOs
    2. get VO Map
      • Returns a VO Map
        signature
        public String getVOMap (String voname) throws Exception
        parameters
        The VO name
        return
        The VO Map if exists, exception otherwise.
    3. Get the Running Instance ID
      • Returns the RI unique ID of a given service name and service class
        signature
        public String getRIID ( String serviceName, String serviceClass ) throws Exception
        parameters
        A valid local RI service name
        A valid local RI service class
        return
        The RI ID if valid {class, name} parameters were used, exception otherwise.
    4. Get the Running Instance ID
      • Returns the RI unique ID of a given RI profile
        signature
        public String getRIID ( String riProfile ) throws Exception
        parameters
        A RI profile
        return
        The RI ID if valid RI profile parameter was used, exception otherwise.
    5. Get the service ID
      • Returns the service ID of a given service name and service class
        signature
        public String getServiceID ( String serviceName, String serviceClass ) throws Exception
        parameters
        A valid local service name
        A valid local service class
        return
        The service ID if valid {class, name} parameters were used, exception otherwise.
    6. Get DHN ID
      • Returns the local DHN unique ID
        signature
        public String getDHNID ( ) throws Exception
        parameters
        n.a.
        return
        The DHN unique ID were the service is running, exception otherwise.
    7. Get the list of RI configured DLs from Class and Name
      • Return the list of DLs configured into the service RI
        signature
        public String [] getDLs ( String serviceName, String serviceClass ) throws Exception
        parameters
        A valid local RI service name
        A valid local RI service class
        return
        The RI DL tag list
    8. Get the list of RI configured DLs from EPR
      • Return the list of DLs configured into the service RI
        signature
        public String [] getDLsFromEPR (EndpointReferenceType epr) throws Exception
        parameters
        An end point reference
        return
        The RI DL tag list
    9. Get a RI profile from Class and Name
      • Returns a RI profile document
        signature
        public Document getRIProfile ( String serviceName, String serviceClass )throws Exception
        parameters
        A valid local RI service name
        A valid local RI service class
        return
        A Document object with the RI profile, exception otherwise.
    10. Get the DL secure mode
      • Returns the DL secure status
        signature
        public boolean isDLSecure ( String serviceName, String serviceClass ) throws Exception
        parameters
        A valid local RI service name
        A valid local RI service class
        return
        True if the RI is running in secure mode, flase otherwise.
    11. Set the RI specific data (No secure mode)
      • Set the specific data tag of a RI service profile based on a given service name and service class
        signature
        public boolean setSpecificData ( String serviceName, String serviceClass, String data, String vo )
        parameters
        A valid local RI service name
        A valid local RI service class
        The specific data
        The desired VO
        return
        True if set completed, false otherwise
    12. Set the RI specific data (SECURE mode)
      • Set the specific data tag of a RI service profile based on a given service name and service class
        signature
        public boolean setSpecificData ( String serviceName, String serviceClass, String data, String vo, ExtendedGSSCredential credential )
        parameters
        A valid local RI service name
        A valid local RI service class
        The specific data
        The desired VO
        The service credentials
        return
        True if set completed, false otherwise
    13. Get the RI specific data
      • Returns the specific data tag of a RI service profile based on a given service name and service class.
        signature
        public String getSpecificData ( String serviceName, String serviceClass ) throws Exception
        parameters
        A valid local RI service name
        A valid local RI service class
        return
        If the required RI service profile exists returns specifc data section, exception otherwise
    14. Set the RI state data (No secure mode)
      • Set the state tag of a RI service profile based on a given service name and service class
        signature
        public boolean setState ( String serviceName, String serviceClass, String data, String vo )
        parameters
        A valid local RI service name
        A valid local RI service class
        The state
        The desired VO
        return
        True if set completed, false otherwise
    15. Set the RI state (SECURE mode)
      • Set the state tag of a RI service profile based on a given service name and service class
        signature
        public boolean setState ( String serviceName, String serviceClass, String data, String vo, ExtendedGSSCredential credential )
        parameters
        A valid local RI service name
        A valid local RI service class
        The state
        The desired VO
        The service credentials
        return
        True if set completed, false otherwise
    16. Get the RI state
      • Returns the state data tag of a RI service profile based on a given service name and service class.
        signature
        public String getState ( String serviceName, String serviceClass ) throws Exception
        parameters
        A valid local RI service name
        A valid local RI service class
        return
        If the required RI service profile exists returns the state section, exception otherwise
    17. Get all services on DHN
      • Returns a list with all the services on the local DHN
        signature
        public Vector getAllServices ( ) throws Exception
        parameters
        n.a.
        return
        A list with the services {class, name} running on the DHN, exception otherwise
    18. Get service information
      • Returns the service information from a given EPR
        signature
        public ServiceData getServiceInfoFromEPR(EndpointReferenceType epr) throws Exception
        parameters
        An End Point Reference
        return
        The service information, exception otherwise
    19. Get the DHN free disk space
      • Returns the local free disk space
        signature
        public String getDHNFreeSpace ( String fileSys ) throws Exception
        parameters
        A valid file system
        return
        The node disk free space (KBytes)
    20. Get the DHN secure mode
      • Return the DHN secure mode
        signature
        public boolean isDHNSecurityEnable () throws Exception
        parameters
        n.a.
        return
        True if DHN is running in secure mode, false otherwise.


Dependencies

The NAL used following external libraries:

  • commons-io-1.2.jar
  • dvos.authentication-api.jar
  • jaxb-api.jar
  • jaxb-impl.jar
  • jaxb-xjc.jar
  • jaxb1-impl.jar
  • jsr173_api.jar

As well as the following DILIGENT jar files:

  • org_diligentproject_common_profile.jar
  • org_diligentproject_common_profilemanager.jar
  • org_diligentproject_keeperservice_hnm_stubs.jar


Usage Example

NAL Initialization

Default constructor:

NAL    nal     = new NAL ();

With a given base directory:

String baseDir = ContainerConfig.getBaseDirectory() + "/etc/org_diligentproject_keeperservice_hnm/HNMService";
NAL    nal     = new NAL (baseDir);

Calling the get VO Map list method

Vector voList = nal.getVOMapsList ();

Calling the set specific data method

boolean result = nal.setSpecificData("PackageRepository", "Keeper", "PR specific data", "diligent");



--Henri 15:50, 21 March 2007 (EET)