Changeset 8114


Ignore:
Timestamp:
23/02/12 15:23:31 (8 years ago)
Author:
mnagni
Message:

now is in sync again with the branch

Location:
mauRepo/revitalizationProject/trunk/project
Files:
1 added
21 edited
9 copied

Legend:

Unmodified
Added
Removed
  • mauRepo/revitalizationProject/trunk/project

  • mauRepo/revitalizationProject/trunk/project/.project

    r8033 r8114  
    1313                        </arguments> 
    1414                </buildCommand> 
     15                <buildCommand> 
     16                        <name>org.eclipse.jdt.core.javabuilder</name> 
     17                        <arguments> 
     18                        </arguments> 
     19                </buildCommand> 
     20                <buildCommand> 
     21                        <name>org.eclipse.wst.common.project.facet.core.builder</name> 
     22                        <arguments> 
     23                        </arguments> 
     24                </buildCommand> 
    1525        </buildSpec> 
    1626        <natures> 
     27                <nature>org.sonar.ide.eclipse.core.sonarNature</nature> 
    1728                <nature>org.eclipse.m2e.core.maven2Nature</nature> 
     29                <nature>org.eclipse.wst.common.project.facet.core.nature</nature> 
     30                <nature>org.eclipse.jdt.core.javanature</nature> 
    1831        </natures> 
    1932</projectDescription> 
  • mauRepo/revitalizationProject/trunk/project/discoverySchema/src/main/resources/DiscoverySchema.xsd

    r8070 r8114  
    66        --> 
    77<xs:schema targetNamespace="http://schemas.services.ndg/discovery" elementFormDefault="qualified" 
    8         xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    9         xmlns:tns="http://schemas.services.ndg/discovery"> 
     8        xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.services.ndg/discovery"> 
    109        <!-- Request elements --> 
    1110        <xs:element name="DoSearch" type="tns:DoSearchType"/> 
     
    4140                </xs:sequence> 
    4241        </xs:complexType> 
    43          
    44          
     42 
     43 
    4544        <xs:complexType name="RetrieveCriteriaType"> 
    4645                <xs:sequence> 
     
    206205        <xs:complexType name="SpatialType"> 
    207206                <xs:sequence> 
    208                         <xs:element name="BoundingBox" type="tns:BoundingBoxType"> 
    209                                 <xs:annotation> 
    210                                         <xs:documentation>Bounding box with coordinates by default in EPSG:4326 (lat/lon)</xs:documentation> 
    211                                 </xs:annotation> 
    212                         </xs:element> 
    213207                        <xs:element name="SpatialOperator" type="xs:string" minOccurs="0"> 
    214208                                <xs:annotation> 
     
    221215                                </xs:annotation> 
    222216                        </xs:element> 
     217                        <xs:choice> 
     218                                <xs:element name="BoundingBox" type="tns:BoundingBoxType"> 
     219                                        <xs:annotation> 
     220                                                <xs:documentation>Bounding box with coordinates by default in EPSG:4326 (lat/lon)</xs:documentation> 
     221                                        </xs:annotation> 
     222                                </xs:element> 
     223                                <xs:element maxOccurs="1" name="PolygonBox" type="tns:PolygonBoxType"/> 
     224                                <xs:element maxOccurs="1" name="MultiPolygonBox" type="tns:MultiPolygonBoxType"/> 
     225                        </xs:choice> 
    223226                </xs:sequence> 
    224227        </xs:complexType> 
     
    407410                </xs:sequence> 
    408411        </xs:complexType> 
     412        <xs:complexType name="PolygonPointType"> 
     413                <xs:all maxOccurs="1"> 
     414                        <xs:element name="x" type="xs:float"/> 
     415                        <xs:element name="y" type="xs:float"/> 
     416                        <xs:element name="z" type="xs:float" minOccurs="0" nillable="false"/> 
     417                </xs:all> 
     418        </xs:complexType> 
     419        <xs:complexType name="PolygonBoxType"> 
     420                <xs:sequence maxOccurs="unbounded" minOccurs="1"> 
     421                        <xs:element name="polygonPoint" type="tns:PolygonPointType"/> 
     422                </xs:sequence> 
     423        </xs:complexType> 
     424        <xs:complexType name="MultiPolygonBoxType"> 
     425                <xs:sequence maxOccurs="unbounded"> 
     426                        <xs:element maxOccurs="unbounded" minOccurs="2" name="polygonBox" 
     427                                type="tns:PolygonBoxType"/> 
     428                </xs:sequence> 
     429        </xs:complexType> 
    409430</xs:schema> 
  • mauRepo/revitalizationProject/trunk/project/dpws/pom.xml

    r8070 r8114  
    121121                        <groupId>ndg.services</groupId> 
    122122                        <artifactId>common</artifactId> 
    123                         <version>1.1.1</version> 
     123                        <version>1.2</version> 
     124                        <scope>provided</scope> 
    124125                </dependency> 
    125126                <dependency> 
    126127                        <groupId>ndg.services</groupId> 
    127128                        <artifactId>jboss</artifactId> 
    128                         <version>1.0.0</version> 
    129                 </dependency> 
    130  
    131                 <dependency> 
    132                         <groupId>org.jboss.security</groupId> 
    133                         <artifactId>jbosssx</artifactId> 
    134                         <version>2.0.3.SP1</version> 
    135                         <scope>provided</scope> 
    136                 </dependency> 
     129                        <version>1.1.0</version> 
     130                        <scope>provided</scope> 
     131                </dependency> 
     132 
    137133 
    138134                <dependency> 
     
    195191                        <artifactId>slf4j-api</artifactId> 
    196192                        <version>1.6.1</version> 
    197                         <scope>test</scope>                      
    198                 </dependency> 
    199         </dependencies> 
     193                        <scope>provided</scope> 
     194                </dependency> 
     195                <dependency> 
     196                        <groupId>org.slf4j</groupId> 
     197                        <artifactId>slf4j-log4j12</artifactId> 
     198                        <version>1.6.1</version> 
     199                        <scope>provided</scope> 
     200                </dependency> 
     201                <dependency> 
     202                        <groupId>commons-lang</groupId> 
     203                        <artifactId>commons-lang</artifactId> 
     204                        <version>2.6</version> 
     205                </dependency> 
     206        </dependencies> 
    200207   
    201208  <artifactId>dpws</artifactId> 
  • mauRepo/revitalizationProject/trunk/project/dpws/src/main/java/ndg/services/discovery/basic/DiscoveryBasicDPWS.java

    r8033 r8114  
    77import java.util.Properties; 
    88import java.util.ResourceBundle; 
     9 
     10import javax.security.auth.callback.LanguageCallback; 
    911 
    1012import ndg.common.MessageFormatter; 
     
    1719 
    1820import org.apache.log4j.Logger; 
     21 
     22import antlr.StringUtils; 
    1923 
    2024/** 
     
    7377         * */ 
    7478        private final Connection getConnection(String jndi_connection) throws ResourceNotAvailable { 
     79                if (!jndi_connection.matches("^[a-z][a-zA-Z0-9]*$")) { 
     80                        throw new ResourceNotAvailable("The JNDI connection string is not allowed"); 
     81                } 
    7582                return dataSource.getConnection(getConfigurationProperties().getProperty(jndi_connection)); 
    7683        } 
    77  
     84         
    7885        /** 
    7986         * Returns the instance of the underlying singleton. 
  • mauRepo/revitalizationProject/trunk/project/dpws/src/main/java/ndg/services/revitalization/ejb/discovery/CommonMethods.java

    r8033 r8114  
    88 
    99import ndg.common.MessageFormatter; 
    10 import ndg.common.NdgLogger; 
    1110import ndg.common.NdgMessage; 
    1211import ndg.common.exception.AssembleQueryException; 
     
    1514import ndg.services.discovery.basic.DiscoveryBasicDPWS; 
    1615import ndg.services.discovery.basic.DiscoveryDictionaryDPWS; 
     16import ndg.services.schemas.revitalization.discovery.DoSearchType; 
     17import ndg.services.schemas.revitalization.discovery.DoSearchType.SearchCriteria; 
    1718import ndg.services.schemas.revitalization.discovery.OrderByType; 
    1819import ndg.services.schemas.revitalization.discovery.RetrieveCriteriaType; 
    19 import ndg.services.schemas.revitalization.discovery.DoSearchType.SearchCriteria; 
    20  
    21 import org.apache.log4j.Level; 
     20 
     21import org.slf4j.Logger; 
     22import org.slf4j.LoggerFactory; 
     23 
    2224 
    2325abstract class CommonMethods<T> { 
    2426         
    25         private NdgLogger logHelper = DiscoveryBasicDPWS.getInstance().getNdgInstance(CommonMethods.class.getName()); 
     27        private Logger logger = LoggerFactory.getLogger(CommonMethods.class); 
    2628         
    2729        /** 
     
    114116                        selectSQL.append(orderSQL); 
    115117                } 
    116                  
    117                 //logHelper.logMessage("SQL query generated: " + selectSQL, Level.INFO); 
    118118                return selectSQL.toString(); 
    119119        } 
    120120         
    121         public String assembleSearch(SearchCriteria criteria, RetrieveCriteriaType retrieveType)  
    122                 throws AssembleQueryException{ 
    123  
     121        public String assembleSearch(DoSearchType doSearchType) throws AssembleQueryException { 
     122                String ret = assembleSearch(doSearchType.getSearchCriteria(), doSearchType.getRetrieveCriteria());  
     123                logger.info(ret);                                                
     124                return ret; 
     125        } 
     126         
     127        public String assembleSearch(RetrieveCriteriaType type) throws AssembleQueryException { 
     128                String ret = assembleSearch(null, type);  
     129                logger.debug(ret); //Used by the doPresent and usually returns a long list of document names                                                     
     130                return ret; 
     131        } 
     132         
     133        private String assembleSearch(SearchCriteria criteria, RetrieveCriteriaType retrieveType)  
     134                throws AssembleQueryException{  
    124135                // NB, we use the postgres text search function to do term searches 
    125136                StringBuffer selectSQL = new StringBuffer(); 
     
    161172                        } 
    162173                } catch (SQLException e) { 
    163                         logHelper.logMessage("rollbackError: ", Level.ERROR, e); 
     174                        logger.error("rollbackError: ", e); 
    164175                } finally { 
    165176                        if (conn != null) 
     
    168179                                                conn.close(); 
    169180                                } catch (SQLException e) { 
    170                                         logHelper.logMessage("closeConnectionError: ", Level.ERROR, e); 
     181                                        logger.error("closeConnectionError: ", e); 
    171182                                } 
    172183                } 
     
    178189                                rs.close(); 
    179190                } catch (Exception e) { 
    180                         logHelper.logMessage("closeResultsetError", Level.ERROR, e); 
     191                        logger.error("closeResultsetError: ", e); 
    181192                } 
    182193                try { 
     
    184195                                stat.close(); 
    185196                } catch (Exception e) { 
    186                         logHelper.logMessage("closeStatementError", Level.ERROR, e); 
     197                        logger.error("closeStatementError: ", e);                        
    187198                } 
    188199        } 
  • mauRepo/revitalizationProject/trunk/project/dpws/src/main/java/ndg/services/revitalization/ejb/discovery/PresentHelper.java

    r8033 r8114  
    99import java.sql.Timestamp; 
    1010import java.util.ArrayList; 
    11 import java.util.Calendar; 
    1211import java.util.GregorianCalendar; 
    1312import java.util.Iterator; 
     
    103102                DiscoveryDictionaryDPWS.RecordDetail detail = DiscoveryDictionaryDPWS.getRecordDetails(recDetail); 
    104103                /** all the IFs should be revisited */ 
     104                /* 
    105105                if (detail.equals(DiscoveryDictionaryDPWS.RecordDetail.DocumentSimple)) { 
    106106 
    107107                } 
     108                */ 
    108109                if (detail.equals(DiscoveryDictionaryDPWS.RecordDetail.DocumentBrief)) { 
    109110                        checkFROMComma(selectSQL, false); 
     
    233234                        return new ArrayList<OriginalDocument>(); 
    234235                this.documentsId = documentsId; 
    235                 String sqlQuery = assembleSearch(null, type); 
     236                String sqlQuery = assembleSearch(type); 
    236237                if (conn == null) { 
    237238                        throw new NdgSQLException("Connection is null"); 
  • mauRepo/revitalizationProject/trunk/project/dpws/src/main/java/ndg/services/revitalization/ejb/discovery/SearchHelper.java

    r8067 r8114  
    44import java.sql.ResultSet; 
    55import java.sql.SQLException; 
    6 import java.sql.Statement; 
    76import java.util.ArrayList; 
    87import java.util.Collections; 
    98import java.util.Comparator; 
    10 import java.util.Iterator; 
    119import java.util.List; 
    1210 
     
    2624import ndg.services.schemas.revitalization.discovery.DoSearchType; 
    2725import ndg.services.schemas.revitalization.discovery.DoSearchType.SearchCriteria; 
     26import ndg.services.schemas.revitalization.discovery.MultiPolygonBoxType; 
    2827import ndg.services.schemas.revitalization.discovery.ObjectFactory; 
     28import ndg.services.schemas.revitalization.discovery.PolygonBoxType; 
     29import ndg.services.schemas.revitalization.discovery.PolygonPointType; 
    2930import ndg.services.schemas.revitalization.discovery.RetrieveCriteriaType; 
    3031import ndg.services.schemas.revitalization.discovery.SpatialType; 
     
    7879         */ 
    7980        public List<OriginalDocument> doSearch() throws NdgException, ResourceNotAvailable { 
    80                 SearchCriteria criteria = searchType.getSearchCriteria(); 
    8181                List<OriginalDocument> searchResult = null; 
    82                 searchResult = searchDocuments(criteria); 
     82                searchResult = searchDocuments(searchType); 
    8383                if (conn != null) { 
    8484                        try { 
    85                                 if (!conn.isClosed()) 
     85                                if (!conn.isClosed()) { 
    8686                                        conn.close(); 
     87                                }                                        
    8788                        } catch (SQLException e) { 
    8889                                logger.error("closeConnectionError", e); 
     
    101102         *             if an error during the database access 
    102103         **/ 
    103         private List<OriginalDocument> searchDocuments(SearchCriteria criteria) throws NdgExecutionException, AssembleQueryException, NdgSQLException, ResourceNotAvailable { 
     104        private List<OriginalDocument> searchDocuments(DoSearchType doSearchType) throws NdgExecutionException, AssembleQueryException, NdgSQLException, ResourceNotAvailable { 
    104105                List<OriginalDocument> res = new ArrayList<OriginalDocument>(); 
    105                 List<String> toFilter = executeSearch(conn, assembleSearch(criteria, searchType.getRetrieveCriteria())); 
     106                List<String> toFilter = executeSearch(conn, assembleSearch(doSearchType)); 
    106107 
    107108                /* -- sets the number of hits -- */ 
     
    109110 
    110111                /* -- selects the interval of documents -- */ 
    111                 long start = (searchType.getStart() == null || !(searchType.getStart() > 0 && searchType.getStart() < toFilter.size() + 1)) ? 1 
    112                                 : searchType.getStart(); 
    113  
    114                 long howMany = (searchType.getHowMany() == null ? 0 : searchType.getHowMany()); 
     112                long start = (doSearchType.getStart() == null || !(doSearchType.getStart() > 0 && doSearchType.getStart() < toFilter.size() + 1)) ? 1 
     113                                : doSearchType.getStart(); 
     114 
     115                long howMany = (doSearchType.getHowMany() == null ? 0 : doSearchType.getHowMany()); 
    115116                if (howMany > 0) { 
    116117                        howMany = (toFilter.size() >= howMany + start - 1) ? howMany + start - 1 : toFilter.size(); 
     
    121122                toFilter = toFilter.subList((int) start - 1, (int) howMany);             
    122123                PresentHelper present = new PresentHelper(conn);         
    123                 res = present.doPresent(toFilter, searchType.getRetrieveCriteria()); 
    124 //              try { 
    125 //                      doUpdateVal(conn, toFilter); 
    126 //              } catch (SQLException e) { 
    127 //                      throw new NdgSQLException(e); 
    128 //              } 
     124                res = present.doPresent(toFilter, doSearchType.getRetrieveCriteria()); 
    129125                return res; 
    130126        } 
    131127 
    132         private void doUpdateVal(Connection conn, List<String> documentIDs) throws SQLException { 
    133                  
    134                 if (documentIDs == null || documentIDs.size() == 0) { 
    135                         if (logger.isInfoEnabled()) { 
    136                                 logger.info("Updated 0 resultset_counter"); 
    137                                 return; 
    138                         }                                
    139                 } 
    140                  
    141                 StringBuffer sb = new StringBuffer(); 
    142                 sb.append("UPDATE original_document SET resultset_count = resultset_count + 1 WHERE original_document_filename ");                                       
    143                 sb.append(" IN ("); 
    144  
    145                 Iterator<String> iter = documentIDs.iterator(); 
    146                 while (iter.hasNext()) { 
    147                         sb.append("'"); 
    148                         sb.append(iter.next()); 
    149                         sb.append("'"); 
    150                         if (iter.hasNext()) 
    151                                 sb.append(", "); 
    152                 } 
    153                 sb.append(") "); 
    154                  
    155                 Statement statement = conn.createStatement(); 
    156                 int ret = statement.executeUpdate(sb.toString()); 
    157                 if (logger.isInfoEnabled()) 
    158                                 logger.info("Updated " + ret + " resultset_counter");    
    159         } 
    160128 
    161129        @Override 
     
    245213        private void preapareTermSearch(StringBuffer fromSQL, StringBuffer whereSQL, List<TermSearchType> oterms) 
    246214                        throws AssembleQueryException { 
    247                 if (oterms == null || oterms.size() == 0) 
     215                if (oterms == null || oterms.size() == 0) { 
    248216                        return; 
     217                } 
     218                         
    249219 
    250220                Collections.sort(oterms, new TermSearchTypeComparator()); 
     
    258228 
    259229                        // if some termType is empty just skip it 
    260                         if (term == null || term.length() == 0) 
     230                        if (term == null || term.length() == 0) { 
    261231                                continue; 
     232                        } 
     233                                 
    262234                         
    263235                        //DO NOT INVERT!! 
     
    277249                        String operator = getOperator(termType.getOperator()); 
    278250 
    279                         if (queryIndex == 0) 
    280                                 checkWHERE_AND(whereSQL, secondPass);                    
     251                        if (queryIndex == 0) { 
     252                                checkWHERE_AND(whereSQL, secondPass); 
     253                        } 
     254                                                         
    281255                         
    282256                        if ((!secondPass && operator.equals(OPERATOR.NOT.name())) || (secondPass && queryIndex < terms.size())) { 
     
    314288        private void preapareTemporalSearch(StringBuffer fromSQL, StringBuffer whereSQL, TemporalType temporalType) { 
    315289                if (temporalType == null || temporalType.getDateRange() == null 
    316                                 || temporalType.getDateRange().getDate().size() == 0) 
     290                                || temporalType.getDateRange().getDate().size() == 0) { 
    317291                        return; 
     292                } 
     293                         
    318294 
    319295                DateRangeType dataRangeType = temporalType.getDateRange(); 
     
    373349                } 
    374350        } 
    375  
     351         
     352        private String processBoxSearch(BoundingBoxType bb) { 
     353                return " SetSRID('BOX3D(" + bb.getLimitWest() + " " + bb.getLimitSouth() + ", " + bb.getLimitEast() 
     354                                + " " + bb.getLimitNorth() + ")'::box3d, 4326)"; 
     355        } 
     356 
     357        private String buildPolygonPoints(PolygonBoxType pb) { 
     358                StringBuffer sb = new StringBuffer(); 
     359                sb.append('('); 
     360                for (PolygonPointType ppt : pb.getPolygonPoint()) { 
     361                        sb.append(String.format("%1$f %2$f, ", ppt.getX(), ppt.getY())); 
     362                }                
     363                sb.deleteCharAt(sb.length() - 2); 
     364                sb.trimToSize(); 
     365                sb.append(')'); 
     366                return sb.toString(); 
     367        } 
     368         
     369        private String buildMultipolygonPoints(MultiPolygonBoxType pb) { 
     370                StringBuffer sb = new StringBuffer(); 
     371                sb.append('('); 
     372                for (PolygonBoxType pbt : pb.getPolygonBox()) { 
     373                        sb.append(String.format("%1$s, ", buildPolygonPoints(pbt))); 
     374                } 
     375                sb.deleteCharAt(sb.length() - 2); 
     376                sb.trimToSize(); 
     377                sb.append(')'); 
     378                return sb.toString(); 
     379        } 
     380         
     381        private String processBoxSearch(PolygonBoxType pb) {             
     382                return " ST_GeomFromText('POLYGON(" + buildPolygonPoints(pb) + ")')"; 
     383        }        
     384         
     385        private String processBoxSearch(MultiPolygonBoxType pb) {                
     386                return " ST_GeomFromText('MULTIPOLYGON(" + buildMultipolygonPoints(pb) + ")')"; 
     387        }        
     388         
    376389        private void preapareSpatialSearch(StringBuffer fromSQL, StringBuffer whereSQL, SpatialType spatialType) { 
    377                 if (spatialType == null || spatialType.getBoundingBox() == null) 
     390                if (spatialType == null) { 
    378391                        return; 
     392                } 
    379393 
    380394                DiscoveryDictionaryDPWS.SpatialOperator spatialOperator = DiscoveryDictionaryDPWS.getSpatialOperator(null); 
     
    382396                                .getSpatialReferenceSystem(null); 
    383397 
    384                 if (spatialType.getSpatialOperator() != null) 
     398                if (spatialType.getSpatialOperator() != null) { 
    385399                        spatialOperator = DiscoveryDictionaryDPWS.getSpatialOperator(spatialType.getSpatialOperator()); 
    386  
    387                 if (spatialType.getSpatialReferenceSystem() != null) 
     400                } 
     401                         
     402 
     403                if (spatialType.getSpatialReferenceSystem() != null) { 
    388404                        spatialReferenceSystem = DiscoveryDictionaryDPWS.getSpatialReferenceSystem(spatialType 
    389405                                        .getSpatialReferenceSystem()); 
    390  
    391                 BoundingBoxType bb = spatialType.getBoundingBox(); 
    392                 String bbox = " SetSRID('BOX3D(" + bb.getLimitWest() + " " + bb.getLimitSouth() + ", " + bb.getLimitEast() 
    393                                 + " " + bb.getLimitNorth() + ")'::box3d, 4326)"; 
    394  
     406                }                
     407                 
     408                String box = ""; 
     409                 
     410                if (spatialType.isSetBoundingBox()) { 
     411                        box = processBoxSearch(spatialType.getBoundingBox()); 
     412                } 
     413 
     414                if (spatialType.isSetPolygonBox()) { 
     415                        box = processBoxSearch(spatialType.getPolygonBox()); 
     416                } 
     417                 
     418                if (spatialType.isSetMultiPolygonBox()) { 
     419                        box = processBoxSearch(spatialType.getMultiPolygonBox()); 
     420                } 
     421                 
    395422                checkFROMComma(fromSQL, false); 
    396423                fromSQL.append(DiscoveryDictionaryDPWS.SPATIAL_DATA_TABLE); 
     
    409436                        whereSQL.append(" && "); 
    410437                } 
    411                 whereSQL.append(bbox); 
     438                whereSQL.append(box); 
    412439 
    413440                checkWHERE_AND(whereSQL, false); 
     
    415442                whereSQL.append(".original_document_id = "); 
    416443                whereSQL.append(DiscoveryDictionaryDPWS.SPATIAL_DATA_TABLE); 
    417                 whereSQL.append(".original_document_id "); 
     444                whereSQL.append(".original_document_id ");               
    418445        } 
    419446 
    420447        private void preapareScopeSearch(StringBuffer fromSQL, StringBuffer whereSQL, List<String> scopes) { 
    421                 if (scopes == null || scopes.size() == 0) 
     448                if (scopes == null || scopes.size() == 0) { 
    422449                        return; 
     450                } 
     451                         
    423452 
    424453                StringBuffer safeBuffer = new StringBuffer(); 
     
    428457                        DiscoveryDictionaryDPWS.Scope scope = DiscoveryDictionaryDPWS.getScope(scopeLabel); 
    429458                        //logHelper.logMessage("Scope: " + scope, Level.DEBUG); 
    430                         if (scope == null) 
     459                        if (scope == null) { 
    431460                                continue; 
    432                         if (secondPass) 
     461                        } 
     462                                 
     463                        if (secondPass) { 
    433464                                whereSQL.append(" & "); 
     465                        }                                
    434466                        fromSQL.append(" '" + scope.fieldName() + "' "); 
    435467                        secondPass = true; 
    436468                } 
    437469 
    438                 if (safeBuffer.length() == 0) 
     470                if (safeBuffer.length() == 0) { 
    439471                        return; 
     472                } 
     473                         
    440474 
    441475                /* -- appends the terms (FROM part) -- */ 
     
    450484 
    451485        void preapareOriginalFormatSearch(StringBuffer fromSQL, StringBuffer whereSQL, String originalFormat) { 
    452                 if (originalFormat == null) 
     486                if (originalFormat == null) { 
    453487                        return; 
     488                } 
     489                         
    454490                DiscoveryDictionaryDPWS.OriginalFormat format = DiscoveryDictionaryDPWS.getOriginalFormat(originalFormat); 
    455491                checkWHERE_AND(whereSQL, false); 
     
    480516                String ret = op.name(); 
    481517 
    482                 if (operator == null) 
     518                if (operator == null) { 
    483519                        return ret; 
     520                } 
     521                         
    484522 
    485523                for (OPERATOR item : OPERATOR.values()) { 
    486524                        if (item.name().equals(operator)) { 
    487525                                ret = item.name(); 
    488                                 if (item.equals(OPERATOR.AND_NOT)) 
     526                                if (item.equals(OPERATOR.AND_NOT)) { 
    489527                                        ret = " AND NOT "; 
    490                                 if (item.equals(OPERATOR.OR_NOT)) 
     528                                } 
     529                                         
     530                                if (item.equals(OPERATOR.OR_NOT)) { 
    491531                                        ret = " OR NOT "; 
     532                                } 
     533                                         
    492534                                break; 
    493535                        } 
  • mauRepo/revitalizationProject/trunk/project/dpws/src/main/java/ndg/services/revitalization/executor/CommonProviderAdapter.java

    r8033 r8114  
    8383         
    8484        private static void extractProviderEmails(final ProviderCommonType common, final ProviderCommon provider) {              
    85                 if (common.getProviderContacts() == null) 
     85                if (common.getProviderContacts() == null) { 
     86                        return;                  
     87                } 
     88                List<ProviderEmail> contacts = provider.getProviderEmails();     
     89                if (contacts == null || contacts.size() == 0) { 
    8690                        return; 
    87                  
    88                 List<ProviderEmail> contacts = provider.getProviderEmails(); 
    89                  
    90                 if (contacts == null || contacts.size() == 0) 
    91                         return; 
     91                } 
    9292                 
    9393                //Contact email 
  • mauRepo/revitalizationProject/trunk/project/dpws/src/main/java/ndg/services/revitalization/executor/DiscoveryServiceExecutor.java

    r8033 r8114  
    44import java.lang.reflect.InvocationTargetException; 
    55import java.util.List; 
     6 
     7import org.apache.log4j.Logger; 
    68 
    79import ndg.common.NdgMessage; 
     
    1315import ndg.services.jpa.OriginalDocument; 
    1416import ndg.services.revitalization.EJBBeanFactory; 
     17import ndg.services.revitalization.ejb.discovery.SearchHelper; 
    1518import ndg.services.schemas.revitalization.discovery.CustomInfo; 
    1619import ndg.services.schemas.revitalization.discovery.DoPresentReturnType; 
     
    4043         
    4144        private static final ObjectFactory of = new ObjectFactory(); 
     45        private final static Logger logger = Logger.getLogger(DiscoveryServiceExecutor.class.getName()); 
    4246         
    4347        public GetListNamesReturnType getListNames() {   
     
    9195                                        status = true; 
    9296                                } catch (NdgException e) { 
    93                                         //statusMsg = logHelper.getBundleMessageAndDoLog(e, Level.ERROR); 
    94                                         //statusMsg = logHelper.getBundleMessage(e); 
     97                                        logger.error("Error", e); 
    9598                                } finally { 
    9699                                        int hits = -1; 
     
    107110                                                        msg = new NdgMessage("internal.server.error", new Object[] {}); 
    108111                                                } 
     112                                                logger.debug(msg.toString()); 
    109113                                                //statusMsg = logHelper.getBundleMessageAndDoLog(msg, Level.DEBUG); 
    110114                                        } 
     
    112116                        } 
    113117                } catch (Exception e) { 
    114  
     118                        logger.error("Error", e); 
    115119                } finally { 
    116120                        finalizeSearchReponse(status, statusMsg, response); 
     
    149153                        status = true; 
    150154                } catch (NdgException e) { 
    151                         //statusMsg = logHelper.getBundleMessage(e); 
     155                        logger.error("Error", e); 
    152156                } finally { 
    153157                        if (statusMsg == null) { 
    154158                                NdgMessage msg = new NdgMessage("present.successful", new Object[] {}); 
     159                                logger.debug(msg.toString()); 
    155160                                //statusMsg = logHelper.getBundleMessageAndDoLog(msg, Level.DEBUG); 
    156161                        } 
     
    171176                DiscoveryDictionaryDPWS.Names listName = DiscoveryDictionaryDPWS.getNames(name); 
    172177 
    173                 if (listName == null) 
     178                if (listName == null) { 
    174179                        return response; 
     180                }                        
    175181 
    176182                if (listName.equals(DiscoveryDictionaryDPWS.Names.TermTarget)) { 
     
    210216                                list.getListMember().add(item.fieldLabel()); 
    211217                        } 
    212                 } else { 
    213                         //logHelper.logMessage("invalid.list.name", Level.WARN); 
    214                 } 
    215                 //logHelper.logMessage("getList() completed successfully", Level.DEBUG); 
     218                } 
     219                logger.debug("getList() completed successfull"); 
    216220                return response; 
    217221        } 
     
    219223        private void processResult(List<OriginalDocument> results, Documents documents, RecordDetail type, 
    220224                        List<OrderByType> orderBy) { 
    221                 if (results != null && results.size() == 0) 
     225                if (results != null && results.size() == 0) { 
    222226                        return; 
     227                }                        
    223228                Object documentType = null; 
    224229                for (OriginalDocument result : results) { 
     
    263268                for (OrderByType orderType : orders) { 
    264269                        OrderByField order = DiscoveryDictionaryDPWS.getOrderByField(orderType.getOrderByField()); 
    265                         if (order == null) 
     270                        if (order == null) { 
    266271                                continue; 
     272                        }                                
    267273                        OrderingMetricType newOMT = getNewOMT(documentType); 
    268                         if (newOMT == null) 
    269                                 continue; 
     274                        if (newOMT == null) { 
     275                                continue;        
     276                        } 
    270277                        newOMT.setMetricName(order.fieldLabel()); 
    271278                        String value = "DataError"; 
     
    277284                                newOMT.setMetricValue(value); 
    278285                        } catch (IllegalArgumentException e) { 
    279                                 //logHelper.logMessage(new NdgException(msg, e), Level.ERROR); 
     286                                logger.error(msg.toString(), e); 
    280287                        } catch (IllegalAccessException e) { 
    281                                 //logHelper.logMessage(new NdgException(msg, e), Level.ERROR); 
     288                                logger.error(msg.toString(), e); 
    282289                        } catch (InvocationTargetException e) { 
    283                                 //logHelper.logMessage(new NdgException(msg, e), Level.ERROR); 
     290                                logger.error(msg.toString(), e); 
    284291                        } 
    285292                } 
  • mauRepo/revitalizationProject/trunk/project/dpws/src/main/java/ndg/services/revitalization/executor/ExecuteDeleteTimer.java

    r8033 r8114  
    5252        @Override 
    5353        protected void execute(DeleteTimerRequest doRequest) throws NdgExecutionException { 
    54                 if (Double.isNaN(doRequest.getTimerID())) 
     54                if (Double.isNaN(doRequest.getTimerID())) { 
    5555                        throw new NdgExecutionException("The ProviderID cannot be empty"); 
    56                  
     56                } 
    5757                TimerInfo timerInfo = EJBBeanFactory.getModelManager().getTimerInfo(doRequest.getTimerID()); 
    58                  
    59                 if (timerInfo == null) 
     58                if (timerInfo == null) { 
    6059                        throw new NdgExecutionException("No timer exists for ID:" + doRequest.getTimerID()); 
    61                  
     60                } 
    6261                TimerInfoLog timerInfoLog = EJBBeanFactory.getModelManager().deleteTimer(doRequest.getTimerID()); 
    6362                HTITimerAdapter adapter = new HTITimerAdapter(); 
  • mauRepo/revitalizationProject/trunk/project/dpws/src/main/java/ndg/services/revitalization/executor/ExecuteDoIngest.java

    r8033 r8114  
    3131        @Override 
    3232        protected void execute(DoIngestRequest doRequest) throws NdgExecutionException { 
    33                 if (doRequest.getProcessID() == null) 
     33                if (doRequest.getProcessID() == null) { 
    3434                        throw new NdgExecutionException("The ProcessID cannot be empty"); 
     35                } 
    3536                 
    3637                IngestRequest request = new IngestRequest(doRequest.getProcessID().getId(),  
     
    4041                HiProcess process = mmr.getHiProcess(request.getProcessID()); 
    4142 
    42                 if (process == null) 
    43                         throw new NdgExecutionException("Process does not exist. The request rejected.");                
     43                if (process == null) { 
     44                        throw new NdgExecutionException("Process does not exist. The request rejected."); 
     45                } 
    4446                 
    45                 if (request.getEmailIDs() == null) 
     47                if (request.getEmailIDs() == null) { 
    4648                        throw new NdgExecutionException("EmailID cannot be null. The request rejected."); 
     49                } 
    4750                 
    4851                EJBBeanFactory.getMessageDispatcher().dispatchHarvestRequest(request); 
  • mauRepo/revitalizationProject/trunk/project/dpws/src/main/java/ndg/services/revitalization/executor/ExecuteDoNewProvider.java

    r8033 r8114  
    6565                        throws NdgExecutionException { 
    6666                ProviderDetail pdetails = request.getDoNewUpdateProvider(); 
    67                 if (pdetails == null) 
     67                if (pdetails == null) { 
    6868                        throw new NdgExecutionException(new NdgMessage("null.object", new Object[]{"NewProviderDetails"})); 
     69                } 
     70                         
    6971                 
    70                 if (pdetails.getProviderCommon() == null) 
     72                if (pdetails.getProviderCommon() == null) { 
    7173                        throw new NdgExecutionException(new NdgMessage("null.object", new Object[]{"ProviderCommon"})); 
     74                } 
     75                         
    7276                 
    73                 if (pdetails.getProviderType() == null) 
     77                if (pdetails.getProviderType() == null) { 
    7478                        throw new NdgExecutionException(new NdgMessage("null.object", new Object[]{"ProviderType"})); 
     79                } 
     80                         
    7581                 
    7682                createProvider(pdetails); 
     
    8086                ProviderEmail email = null; 
    8187                 
    82                 if (provider.getProviderEmails() == null) 
     88                if (provider.getProviderEmails() == null) { 
    8389                        provider.setProviderEmails(new ArrayList<ProviderEmail>()); 
     90                } 
     91                         
    8492                 
    8593                //Admin email 
     
    96104                        email.setEmail(aemail.getEmail()); 
    97105                        email.setRealName(aemail.getName()); 
    98                         if (aemail.getID() != null) 
     106                        if (aemail.getID() != null) { 
    99107                                email.setId(aemail.getID()); 
     108                        } 
     109                                 
    100110                        email.setAdminEmail(true); 
    101111                        provider.getProviderEmails().add(email); 
     
    103113                provider.setEmailToAdmin(admin.isMonitor()); 
    104114                 
    105                 if (common.getProviderContacts() == null) 
     115                if (common.getProviderContacts() == null) { 
    106116                        return; 
     117                } 
     118                         
    107119                 
    108120                List<EmailContactType> contacts = common.getProviderContacts(); 
    109121                 
    110                 if (contacts.size() == 0) 
    111                         return;          
     122                if (contacts.size() == 0) { 
     123                        return; 
     124                } 
     125                                         
    112126                 
    113127                //Contact email  
  • mauRepo/revitalizationProject/trunk/project/dpws/src/main/java/ndg/services/revitalization/executor/HTITimerAdapter.java

    r8033 r8114  
    4444import ndg.services.schemas.revitalization.TimerInfoLogDetail; 
    4545 
     46import org.apache.log4j.Logger; 
     47 
    4648/** 
    4749 * @author Maurizio Nagni <maurizio.nagni@stfc.ac.uk> 
     
    5052 
    5153        public static long TIME_FACTOR = 60000; 
     54        private final static Logger logger = Logger.getLogger(HTITimerAdapter.class.getName()); 
    5255        public TimerInfo requestToModel(TimerInfoCommonType request) { 
    5356                TimerInfo timerInfo = new TimerInfo(); 
    5457                timerInfo.setCommonId(request.getProviderID()); 
    5558                 
    56                 if (request.getStartDate() != null) 
     59                if (request.getStartDate() != null) { 
    5760                        timerInfo.setStartDate(new Timestamp(request.getStartDate().toGregorianCalendar().getTimeInMillis())); 
     61                } 
    5862                         
    59                 if (request.getStopDate() != null) 
     63                         
     64                if (request.getStopDate() != null) { 
    6065                        timerInfo.setEndDate(new Timestamp(request.getStopDate().toGregorianCalendar().getTimeInMillis())); 
     66                } 
     67                         
    6168 
    62                 if (!Double.isNaN(request.getFrequency()))       
    63                         timerInfo.setFrequency(request.getFrequency()*TIME_FACTOR);      
     69                if (!Double.isNaN(request.getFrequency()))      { 
     70                        timerInfo.setFrequency(request.getFrequency()*TIME_FACTOR); 
     71                } 
    6472                                 
    65                 if (request.getIngestCommand() != null) 
     73                                 
     74                if (request.getIngestCommand() != null) { 
    6675                        timerInfo.setIngestCommand(request.getIngestCommand()); 
    67                  
     76                } 
    6877                timerInfo.setIsSingleAction(request.isSetSingleAction()); 
    6978                return timerInfo; 
     
    7180         
    7281        public TimerInfoDetail modelToResponse(TimerInfo timerInfo) { 
    73                 if (timerInfo == null) 
     82                if (timerInfo == null) { 
    7483                        return null; 
     84                } 
     85                         
    7586                TimerInfoDetail timer = new TimerInfoDetail(); 
    7687                 
     
    100111                        }                        
    101112                } catch (DatatypeConfigurationException e) { 
    102                         // TODO Auto-generated catch block 
    103                         e.printStackTrace(); 
     113                        logger.error("Error", e); 
    104114                } 
    105115                return timer; 
     
    112122                logDetail.setTimerInfoCommon(detail); 
    113123                 
    114                 if (timerInfoLog.getLastReqId() != null) 
    115                         detail.setLastReqId(timerInfoLog.getLastReqId()); 
     124                if (timerInfoLog.getLastReqId() != null) { 
     125                        detail.setLastReqId(timerInfoLog.getLastReqId());        
     126                } 
     127                         
    116128                 
    117129                ndg.services.schemas.revitalization.TimerInfoCommonType common = new TimerInfoCommonType(); 
     
    141153                        }                        
    142154                } catch (DatatypeConfigurationException e) { 
    143                         // TODO Auto-generated catch block 
    144                         e.printStackTrace(); 
     155                        logger.error("Error", e); 
    145156                }        
    146157                return logDetail; 
  • mauRepo/revitalizationProject/trunk/project/dpws/src/main/java/ndg/services/revitalization/executor/HarvesterTimerInfo.java

    r8033 r8114  
    114114        @Override 
    115115        public boolean equals(Object obj) { 
    116                 if (this == obj) 
     116                if (this == obj) { 
    117117                        return true; 
    118                 if (getClass() != obj.getClass()) 
     118                }                
     119                if (getClass() != obj.getClass()) { 
    119120                        return false; 
     121                }                        
    120122                HarvesterTimerInfo other = (HarvesterTimerInfo) obj; 
    121                 if (providerID != other.providerID) 
     123                if (providerID != other.providerID) { 
    122124                        return false; 
     125                }                
    123126                return true; 
    124127        } 
  • mauRepo/revitalizationProject/trunk/project/dpws/src/main/java/ndg/services/revitalization/executor/ProviderLogs.java

    r8033 r8114  
    4949        @Override 
    5050        public boolean equals(Object obj) { 
    51                 if (this == obj) 
     51                if (this == obj) { 
    5252                        return true; 
    53                 if (obj == null) 
     53                } 
     54                         
     55                if (obj == null) { 
    5456                        return false; 
    55                 if (getClass() != obj.getClass()) 
     57                } 
     58                         
     59                if (getClass() != obj.getClass()) { 
    5660                        return false; 
     61                } 
     62                         
    5763                ProviderLogs other = (ProviderLogs) obj; 
    5864                if (providerID == null) { 
    59                         if (other.providerID != null) 
     65                        if (other.providerID != null) { 
    6066                                return false; 
    61                 } else if (!providerID.equals(other.providerID)) 
     67                        }                                
     68                } else if (!providerID.equals(other.providerID)) { 
    6269                        return false; 
     70                }                        
    6371                return true; 
    6472        } 
  • mauRepo/revitalizationProject/trunk/project/dpws/src/test/java/ndg/services/discovery/model/SearchAgentTest.java

    r8033 r8114  
    3636                SearchHelper sa = new SearchHelper(null, st);            
    3737                try {                    
    38                         String query = sa.assembleSearch(st.getSearchCriteria(), 
    39                                         st.getRetrieveCriteria()); 
     38                        String query = sa.assembleSearch(st); 
    4039                        assertTrue(query.equals(referenceQuery)); 
    4140                } catch (AssembleQueryException e) { 
  • mauRepo/revitalizationProject/trunk/project/ear/EarContent/META-INF/application.xml

    r8033 r8114  
    44        <display-name>DPWS_EAR</display-name> 
    55        <module id="EjbModule_1279530422071"> 
    6                 <ejb>dpws-ejb.jar</ejb> 
     6                <ejb>dpws.jar</ejb> 
    77        </module> 
    88</application> 
  • mauRepo/revitalizationProject/trunk/project/ear/pom.xml

    r8079 r8114  
    8787                </dependency> 
    8888 
    89                 <dependency> 
    90                         <groupId>ndg.services</groupId> 
    91                         <artifactId>common</artifactId> 
    92                         <version>1.1.1</version> 
    93                         <exclusions> 
    94                                 <exclusion> 
    95                                         <artifactId>slf4j-api</artifactId> 
    96                                         <groupId>org.slf4j</groupId> 
    97                                 </exclusion> 
    98                         </exclusions> 
    99                 </dependency> 
     89                 
    10090        </dependencies> 
    10191 
     
    123113                                        </loader-repository>                                                                                     
    124114                                        </jboss>                                         
    125                                         <finalName>dpws</finalName> 
     115                                        <finalName>discovery-dpws</finalName> 
    126116                                </configuration> 
    127117                                <dependencies> 
  • mauRepo/revitalizationProject/trunk/project/ear/src/main/application/discovery-service.xml

    r8033 r8114  
    77 
    88        <!-- Configures the Discovery Mail Service --> 
    9         <mbean code="org.jboss.mail.MailService" name="jboss:service=Mail"> 
    10                 <attribute name="JNDIName">/mail/DiscoveryMail</attribute> 
     9        <mbean code="org.jboss.mail.MailService" name="jboss:service=DiscoveryMail"> 
     10                <attribute name="JNDIName">java:/DiscoveryMail</attribute> 
    1111                <attribute name="Configuration"> 
    1212                        <!-- A test configuration --> 
     
    4747 
    4848        <!-- Configures the Discovery SecurityDomain --> 
     49        <!--  
    4950        <mbean code="org.jboss.security.plugins.JaasSecurityDomain" name="jboss.security:service=SecurityDomain"> 
    5051                <constructor> 
     
    6768            </depends> 
    6869        </mbean> 
     70         --> 
    6971</server> 
  • mauRepo/revitalizationProject/trunk/project/pom.xml

    r8111 r8114  
    4242                                                                        <includes> 
    4343                                                                                <include> 
    44                                                                                         dpws.ear 
     44                                                                                        discovery-dpws.ear 
    4545                                                                                </include> 
    4646                                                                        </includes> 
     
    5353                                                                                        discovery-datasource.xml 
    5454                                                                                </include> 
     55                                                                                <include> 
     56                                                                                        discovery-service.xml 
     57                                                                                </include>                                                                               
    5558                                                                        </includes> 
    5659                                                                        <filtering>true</filtering> 
Note: See TracChangeset for help on using the changeset viewer.