Changeset 6307 for TI01-discovery-API


Ignore:
Timestamp:
14/01/10 17:10:27 (10 years ago)
Author:
mpritcha
Message:

Implemented getList and defined more constants. Tidied formatting.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI01-discovery-API/trunk/v4n_MEDIN/discoveryUpgrade/src/ndg/services/discovery/DiscoveryServiceMEDINSkeleton.java

    r6158 r6307  
    1  
    21/** 
    32 * DiscoveryServiceMEDINSkeleton.java 
    43 * 
    5  * This file was auto-generated from WSDL 
    6  * by the Apache Axis2 version: 1.4.1  Built on : Aug 13, 2008 (05:03:35 LKT) 
     4 * DiscoveryService server implementation 
     5 * Modified from auto-generated DiscoveryServiceMEDINSkeleton.java 
     6 * which was created using "generateStubs" build target 
     7 *  
    78 */ 
    8     package ndg.services.discovery; 
    9      
    10     import java.util.HashMap; 
    11     import java.util.Iterator; 
    12     import java.util.Hashtable; 
    13     import java.util.Vector; 
    14     import org.apache.log4j.Logger; 
    15     import java.math.BigDecimal; 
    16     import com.sun.xml.bind.v2.TODO; 
    17  
    18     import ndg.common.discovery.Utilities; 
    19  
    20      
    21     /** 
    22      *  DiscoveryServiceMEDINSkeleton java skeleton for the axisService 
    23      */ 
    24     public class DiscoveryServiceMEDINSkeleton{ 
    25          
    26         private static Logger logger = Logger.getLogger(DiscoveryDBException.class.getName()); 
    27          
    28         //Lists to provide according to http://proj.badc.rl.ac.uk/ndg/wiki/Discovery/DiscoveryWebServiceMEDIN?version=41#TermLists 
    29         public static final String[] LIST_NAMES = { "presentFormatList", "orderByFieldList", "scopeList", "termTypeList", "spatialOperatorList","spatialReferenceSystemList", 
    30                 "termTargetList","dateRangeTargetList","temporalOperatorList","metadataFormatList","recordDetailList"}; 
    31          
    32          
    33           
    34         /** 
    35          * Auto generated method signature 
    36          *  
    37          * @param getListNames 
    38          */ 
    39          
    40          public discoveryserviceapi.GetListNamesReturnDocument getListNames(discoveryserviceapi.GetListNamesDocument getListNames) 
    41          { 
    42                  //TODO : fill this with the necessary business logic 
    43                  //throw new  java.lang.UnsupportedOperationException("Please implement " + this.getClass().getName() + "#getListNames"); 
    44                   
    45                 logger.info("getListNames() invoked"); 
    46                 discoveryserviceapi.GetListNamesReturnDocument response = discoveryserviceapi.GetListNamesReturnDocument.Factory.newInstance(); 
    47                 discoveryserviceapi.GetListNamesReturnType responseContent = response.addNewGetListNamesReturn(); 
    48                 discoveryserviceapi.GetListNamesReturnType.ListNames listNames = responseContent.addNewListNames(); 
    49  
    50                 for (int i = 0; i < LIST_NAMES.length; i++) 
    51                         listNames.addListName(LIST_NAMES[i]); 
    52  
    53                 logger.info("getListNames() completed successfully"); 
    54                 return response; 
    55                   
    56          
    57          } 
    58       
    59           
    60         /** 
    61          * Auto generated method signature 
    62          *  
    63                                      * @param doSearch 
    64          */ 
    65          
    66                  public discoveryserviceapi.DoSearchReturnDocument doSearch 
    67                   ( 
    68                   discoveryserviceapi.DoSearchDocument doSearch 
    69                   ) 
    70             { 
    71                 //TODO : fill this with the necessary business logic 
    72                 throw new  java.lang.UnsupportedOperationException("Please implement " + this.getClass().getName() + "#doSearch"); 
    73         } 
    74       
    75           
    76         /** 
    77          * Auto generated method signature 
    78          *  
    79                                      * @param doPresent 
    80          */ 
    81          
    82                  public discoveryserviceapi.DoPresentReturnDocument doPresent 
    83                   ( 
    84                   discoveryserviceapi.DoPresentDocument doPresent 
    85                   ) 
    86             { 
    87                 //TODO : fill this with the necessary business logic 
    88                 throw new  java.lang.UnsupportedOperationException("Please implement " + this.getClass().getName() + "#doPresent"); 
    89         } 
    90       
    91           
    92         /** 
    93          * Auto generated method signature 
    94          *  
    95                                      * @param getList 
    96          */ 
    97          
    98                  public discoveryserviceapi.GetListReturnDocument getList 
    99                   ( 
    100                   discoveryserviceapi.GetListDocument getList 
    101                   ) 
    102             { 
    103                 //TODO : fill this with the necessary business logic 
    104                 throw new  java.lang.UnsupportedOperationException("Please implement " + this.getClass().getName() + "#getList"); 
    105         } 
    106       
    107     } 
    108      
     9package ndg.services.discovery; 
     10 
     11import java.util.HashMap; 
     12import java.util.Iterator; 
     13import java.util.Hashtable; 
     14import java.util.Vector; 
     15import org.apache.log4j.Logger; 
     16import java.math.BigDecimal; 
     17import com.sun.xml.bind.v2.TODO; 
     18 
     19import ndg.common.discovery.Utilities; 
     20 
     21/** 
     22 * DiscoveryServiceMEDINSkeleton java skeleton for the axisService 
     23 */ 
     24public class DiscoveryServiceMEDINSkeleton { 
     25 
     26        private static Logger logger = Logger.getLogger(DiscoveryDBException.class 
     27                        .getName()); 
     28 
     29        // Lists to provide according to 
     30        // http://proj.badc.rl.ac.uk/ndg/wiki/Discovery/DiscoveryWebServiceMEDIN#TermLists 
     31        public static final String[] LIST_NAMES = { "TermTargetList", 
     32                        "PresentFormatList", "OrderByFieldList", "ScopeList", 
     33                        "SpatialOperatorList", "SpatialReferenceSystemList", 
     34                        "DateRangeTargetList", "TemporalOperatorList", 
     35                        "MetadataFormatList", "RecordDetailList" }; 
     36 
     37        // Constants representing the possible, valid values for the various input 
     38        // list types 
     39 
     40        // Terms for : TermTargetList 
     41 
     42        public static final String FULLTEXT_TERMTARGET = "FullText"; 
     43        public static final String AUTHOR_TERMTARGET = "Author"; 
     44        public static final String PARAMETER_TERMTARGET = "Parameter"; 
     45        public static final String MEDIN_TERM_TARGET_TERMTARGET = "MEDINTermTarget.1"; 
     46 
     47        // Terms for : PresentFormatList 
     48 
     49        public static final String DC_PRESENTFORMAT = "DC"; 
     50        public static final String DIF_v9_4_PRESENTFORMAT = "DIF_v9.4"; 
     51        public static final String MEDIN_v2_3_1_PRESENTFORMAT = "MEDIN_v2.3.1"; 
     52        public static final String ISO19115_PRESENTFORMAT = "ISO19115"; 
     53 
     54        // Terms for : OrderByFieldList 
     55 
     56        // NOTE - when specifying text relevance ranking further parsing is required 
     57        // whether its a full text search 
     58        // or using author or parameter ranking methods! 
     59        public static final String TEXTRELEVANCE_ORDERBYFIELD = "TextRelevance"; 
     60        public static final String DATASETSTARTDATE_ORDERBYFIELD = "DatasetStartDate"; 
     61        public static final String DATASETENDDATE_ORDERBYFIELD = "DatasetEndDate"; 
     62        public static final String DATACEENTRE_ORDERBYFIELD = "DataCentre"; 
     63        public static final String DATASETRESULTSETPOPULARITY_ORDERBYFIELD = "DatasetResultsetPopularity"; 
     64        public static final String PROXIMITY_ORDERBYFIELD = "Proximity"; 
     65        public static final String PROXIMITYNEARMISS_ORDERBYFIELD = "ProximityNearMiss"; 
     66        public static final String DATASETUPDATEORDER_ORDERBYFIELD = "DatasetUpdateOrder"; 
     67        public static final String DATASETORDER_ORDERBYFIELD = "DatasetOrder"; 
     68        public static final String DISCOVERYINGESTDATE_ORDERBYFIELD = "DiscoveryIngestDate"; 
     69        public static final String MEDINTERMTARGET1_ORDERBYFIELD = "MEDINTermTarget.1"; 
     70 
     71        // Terms for : ScopeList 
     72 
     73        public static final String MEDIN_SCOPE = "MEDIN"; 
     74        public static final String NERC_DDC_SCOPE = "NERC_DDC"; 
     75        public static final String NERC_SCOPE = "NERC"; 
     76        public static final String DPPP_SCOPE = "DPPP"; 
     77 
     78        // Terms for : SpatialOperatorList 
     79 
     80        public static final String OVERLAPS_SPATIALOPERATOR = "Overlaps"; 
     81        public static final String DOESNOTOVERLAP_SPATIALOPERATOR = "DoesNotOverlap"; 
     82        public static final String WITHIN_SPATIALOPERATOR = "Within"; 
     83 
     84        // Terms for : SpatialReferenceSystemList 
     85        public static final String EPSG4326_SPATIALREFERENCESYSTEM = "EPSG:4326"; 
     86 
     87        // Terms for : DateRangeTargetList 
     88        public static final String TEMPORALCOVERAGE_DATERANGETARGET = "TemporalCoverage"; 
     89        public static final String LASTREVISIONDATE_DATERANGETARGET = "LastRevisionDate"; 
     90        public static final String DISCOVERYINGESTDATE_DATERANGETARGET = "DiscoveryIngestDate"; 
     91 
     92        // Terms for : TemporalOperatorList 
     93        public static final String EQUALS_TEMPORALOPERATOR = "Equals"; 
     94        public static final String DOESNOTEQUAL_TEMPORALOPERATOR = "DoesNotEqual"; 
     95        public static final String ONORBEFORE_TEMPORALOPERATOR = "OnOrBefore"; 
     96        public static final String ONORAFTER_TEMPORALOPERATOR = "OnOrAfter"; 
     97        public static final String BEFORE_TEMPORALOPERATOR = "Before"; 
     98        public static final String AFTER_TEMPORALOPERATOR = "After"; 
     99 
     100        // Terms for : MetadataFormatList 
     101 
     102        public static final String DC_METADATAFORMAT = "DC"; 
     103        public static final String DIF_v9_4_METADATAFORMAT = "DIF_v9.4"; 
     104        public static final String MEDIN_V2_3_1_METADATAFORMAT = "MEDIN_v2.3.1"; 
     105        public static final String ISO19115_METADATAFORMAT = "ISO19115"; 
     106 
     107        // Terms for : RecordDetailList 
     108 
     109        public static final String ID_RECORDDETAIL = "Id"; 
     110        public static final String BRIEF_RECORDDETAIL = "Brief"; 
     111        public static final String SUMMARY_RECORDDETAIL = "Summary"; 
     112 
     113        // Other constants 
     114 
     115        public static final String DELIMITER = "-------------------------------------"; 
     116 
     117        // to_tsvector ignores the '_' character; as a work around replace this with 
     118        // the following string 
     119        // - primarily for use in the scope field 
     120        public static final String UNDERSCORE_REPLACEMENT = "UNDERSCORE"; 
     121 
     122        public static final String INVALID_LIST_NAME_MESSAGE = "Invalid list name: please use getListNames to get the valid list names"; 
     123 
     124        /** 
     125         * Performs the getListNames operation - returns list of valid strings to 
     126         * use as input to the getList service 
     127         *  
     128         * @param discoveryserviceapi 
     129         *            .GetListNamesDocument containing request 
     130         * @return discoveryserviceapi.GetListNamesReturnDocument containing result 
     131         */ 
     132        public discoveryserviceapi.GetListNamesReturnDocument getListNames( 
     133                        discoveryserviceapi.GetListNamesDocument getListNames) { 
     134                // TODO : fill this with the necessary business logic 
     135                // throw new java.lang.UnsupportedOperationException("Please implement " 
     136                // + this.getClass().getName() + "#getListNames"); 
     137 
     138                logger.info("getListNames() invoked"); 
     139                discoveryserviceapi.GetListNamesReturnDocument response = discoveryserviceapi.GetListNamesReturnDocument.Factory 
     140                                .newInstance(); 
     141                discoveryserviceapi.GetListNamesReturnType responseContent = response 
     142                                .addNewGetListNamesReturn(); 
     143                discoveryserviceapi.GetListNamesReturnType.ListNames listNames = responseContent 
     144                                .addNewListNames(); 
     145 
     146                for (int i = 0; i < LIST_NAMES.length; i++) 
     147                        listNames.addListName(LIST_NAMES[i]); 
     148 
     149                logger.info("getListNames() completed successfully"); 
     150                return response; 
     151 
     152        } 
     153 
     154        /** 
     155         * Auto generated method signature 
     156         *  
     157         * @param doSearch 
     158         */ 
     159 
     160        public discoveryserviceapi.DoSearchReturnDocument doSearch( 
     161                        discoveryserviceapi.DoSearchDocument doSearch) { 
     162                // TODO : fill this with the necessary business logic 
     163                throw new java.lang.UnsupportedOperationException("Please implement " 
     164                                + this.getClass().getName() + "#doSearch"); 
     165        } 
     166 
     167        /** 
     168         * Auto generated method signature 
     169         *  
     170         * @param doPresent 
     171         */ 
     172 
     173        public discoveryserviceapi.DoPresentReturnDocument doPresent( 
     174                        discoveryserviceapi.DoPresentDocument doPresent) { 
     175                // TODO : fill this with the necessary business logic 
     176                throw new java.lang.UnsupportedOperationException("Please implement " 
     177                                + this.getClass().getName() + "#doPresent"); 
     178        } 
     179 
     180        /** 
     181         * Performs the getList operation 
     182         *  
     183         * @param discoveryserviceapi 
     184         *            .GetListDocument containing request 
     185         * @return discoveryserviceapi.GetListReturnDocument containing result 
     186         * @throws DiscoveryWSException 
     187         */ 
     188        public discoveryserviceapi.GetListReturnDocument getList( 
     189                        discoveryserviceapi.GetListDocument request) 
     190                        throws DiscoveryWSException { 
     191                logger.info("getList() invoked"); 
     192                discoveryserviceapi.GetListReturnDocument response = discoveryserviceapi.GetListReturnDocument.Factory 
     193                                .newInstance(); 
     194                discoveryserviceapi.GetListReturnType responseContent = response 
     195                                .addNewGetListReturn(); 
     196                discoveryserviceapi.GetListReturnType.List list = responseContent 
     197                                .addNewList(); 
     198 
     199                // parse the request message 
     200                discoveryserviceapi.GetListType requestContent = request.getGetList(); 
     201                String listName = requestContent.getListName(); 
     202                list.setName(listName); 
     203 
     204                if (listName.equals("TermTargetList")) { 
     205                        list.addListMember(FULLTEXT_TERMTARGET); 
     206                        list.addListMember(AUTHOR_TERMTARGET); 
     207                        list.addListMember(PARAMETER_TERMTARGET); 
     208                        list.addListMember(MEDIN_TERM_TARGET_TERMTARGET); 
     209                } else if (listName.equals("PresentFormatList")) { 
     210                        list.addListMember(DC_PRESENTFORMAT); 
     211                        list.addListMember(DIF_v9_4_PRESENTFORMAT); 
     212                        list.addListMember(MEDIN_v2_3_1_PRESENTFORMAT); 
     213                        list.addListMember(ISO19115_PRESENTFORMAT); 
     214                } else if (listName.equals("OrderByFieldList")) { 
     215                        list.addListMember(TEXTRELEVANCE_ORDERBYFIELD); 
     216                        list.addListMember(DATASETORDER_ORDERBYFIELD); 
     217                        list.addListMember(DATASETSTARTDATE_ORDERBYFIELD); 
     218                        list.addListMember(DATASETENDDATE_ORDERBYFIELD); 
     219                        list.addListMember(DATACEENTRE_ORDERBYFIELD); 
     220                        list.addListMember(DATASETRESULTSETPOPULARITY_ORDERBYFIELD); 
     221                        list.addListMember(PROXIMITY_ORDERBYFIELD); 
     222                        list.addListMember(PROXIMITYNEARMISS_ORDERBYFIELD); 
     223                        list.addListMember(DATASETUPDATEORDER_ORDERBYFIELD); 
     224                        list.addListMember(DATASETORDER_ORDERBYFIELD); 
     225                        list.addListMember(DISCOVERYINGESTDATE_ORDERBYFIELD); 
     226                        list.addListMember(MEDINTERMTARGET1_ORDERBYFIELD); 
     227                } else if (listName.equals("ScopeList")) { 
     228                        list.addListMember(MEDIN_SCOPE); 
     229                        list.addListMember(NERC_DDC_SCOPE); 
     230                        list.addListMember(NERC_SCOPE); 
     231                        list.addListMember(DPPP_SCOPE); 
     232                } else if (listName.equals("SpatialOperatorList")) { 
     233                        list.addListMember(OVERLAPS_SPATIALOPERATOR); 
     234                        list.addListMember(DOESNOTOVERLAP_SPATIALOPERATOR); 
     235                        list.addListMember(WITHIN_SPATIALOPERATOR); 
     236                } else if (listName.equals("SpatialReferenceSystemList")) { 
     237                        list.addListMember(EPSG4326_SPATIALREFERENCESYSTEM); 
     238                } else if (listName.equals("DateRangeTargetList")) { 
     239                        list.addListMember(TEMPORALCOVERAGE_DATERANGETARGET); 
     240                        list.addListMember(LASTREVISIONDATE_DATERANGETARGET); 
     241                        list.addListMember(DISCOVERYINGESTDATE_DATERANGETARGET); 
     242                } else if (listName.equals("TemporalOperatorList")) { 
     243                        list.addListMember(EQUALS_TEMPORALOPERATOR); 
     244                        list.addListMember(DOESNOTEQUAL_TEMPORALOPERATOR); 
     245                        list.addListMember(ONORBEFORE_TEMPORALOPERATOR); 
     246                        list.addListMember(ONORAFTER_TEMPORALOPERATOR); 
     247                        list.addListMember(BEFORE_TEMPORALOPERATOR); 
     248                        list.addListMember(AFTER_TEMPORALOPERATOR); 
     249                } else if (listName.equals("MetadataFormatList ")) { 
     250                        list.addListMember(DC_METADATAFORMAT); 
     251                        list.addListMember(DIF_v9_4_METADATAFORMAT); 
     252                        list.addListMember(MEDIN_V2_3_1_METADATAFORMAT); 
     253                        list.addListMember(ISO19115_METADATAFORMAT); 
     254                } else if (listName.equals("RecordDetailList")) { 
     255                        list.addListMember(ID_RECORDDETAIL); 
     256                        list.addListMember(BRIEF_RECORDDETAIL); 
     257                        list.addListMember(SUMMARY_RECORDDETAIL); 
     258                } else { 
     259                        logger.warn(INVALID_LIST_NAME_MESSAGE); 
     260                        throw new DiscoveryWSException(INVALID_LIST_NAME_MESSAGE); 
     261                } 
     262 
     263                logger.info("getList() completed successfully"); 
     264                return response; 
     265        } 
     266 
     267} 
Note: See TracChangeset for help on using the changeset viewer.