Author: daniele
Date: 2007-02-09 15:25:52 +0100 (Fri, 09 Feb 2007)
New Revision: 4425
Modified:
trunk/core-api/pom.xml
trunk/core-api/src/main/java/no/schibstedsok/searchportal/result/ProductResultItem.java
trunk/core-api/src/main/java/no/schibstedsok/searchportal/result/ProductSearchResultItem.java
trunk/core-api/src/main/java/no/schibstedsok/searchportal/result/handler/CatalogueResultHandler.java
trunk/war/pom.xml
Log:
ejb client communication, and functionality for populating result objects from
alfa objects.
Modified: trunk/core-api/pom.xml
===================================================================
--- trunk/core-api/pom.xml 2007-02-09 14:02:35 UTC (rev 4424)
+++ trunk/core-api/pom.xml 2007-02-09 14:25:52 UTC (rev 4425)
@@ -155,6 +155,42 @@
<groupId>jep</groupId>
<artifactId>jep</artifactId>
</dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossall-client</artifactId>
+ <type>jar</type>
+ <version>4.0.5</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-ejb3-client</artifactId>
+ <type>jar</type>
+ <version>RC9</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-aspect-jdk50-client</artifactId>
+ <type>jar</type>
+ <version>4.0.5</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-aop-jdk50-client</artifactId>
+ <type>jar</type>
+ <version>4.0.5</version>
+ </dependency>
+
+ <dependency>
+ <groupId>no.schibstedsok.alfa</groupId>
+ <artifactId>alfa-remote</artifactId>
+ <type>ejb-client</type>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+
<!-- Testin -->
<dependency>
<groupId>schibstedsok</groupId>
Modified:
trunk/core-api/src/main/java/no/schibstedsok/searchportal/result/ProductResultItem.java
===================================================================
---
trunk/core-api/src/main/java/no/schibstedsok/searchportal/result/ProductResultItem.java
2007-02-09 14:02:35 UTC (rev 4424)
+++
trunk/core-api/src/main/java/no/schibstedsok/searchportal/result/ProductResultItem.java
2007-02-09 14:25:52 UTC (rev 4425)
@@ -1,11 +1,19 @@
package no.schibstedsok.searchportal.result;
import java.util.Collection;
+import java.util.HashMap;
public interface ProductResultItem {
void addField(String field, String value);
- String getField(String field);
- public Collection getMultivaluedField(final String field);
- public void addToMultivaluedField(final String field, final String value);
+
+ String getField(String field);
+
+ HashMap getFields();
+
+ void setFields(HashMap map);
+
+ public Collection getMultivaluedField(final String field);
+
+ public void addToMultivaluedField(final String field, final String
value);
}
Modified:
trunk/core-api/src/main/java/no/schibstedsok/searchportal/result/ProductSearchResultItem.java
===================================================================
---
trunk/core-api/src/main/java/no/schibstedsok/searchportal/result/ProductSearchResultItem.java
2007-02-09 14:02:35 UTC (rev 4424)
+++
trunk/core-api/src/main/java/no/schibstedsok/searchportal/result/ProductSearchResultItem.java
2007-02-09 14:25:52 UTC (rev 4425)
@@ -79,4 +79,12 @@
return super.hashCode();
}
+ public HashMap getFields() {
+ return fields;
+ }
+
+ public void setFields(HashMap fields) {
+ this.fields = fields;
+ }
+
}
Modified:
trunk/core-api/src/main/java/no/schibstedsok/searchportal/result/handler/CatalogueResultHandler.java
===================================================================
---
trunk/core-api/src/main/java/no/schibstedsok/searchportal/result/handler/CatalogueResultHandler.java
2007-02-09 14:02:35 UTC (rev 4424)
+++
trunk/core-api/src/main/java/no/schibstedsok/searchportal/result/handler/CatalogueResultHandler.java
2007-02-09 14:25:52 UTC (rev 4425)
@@ -2,8 +2,17 @@
package no.schibstedsok.searchportal.result.handler;
import java.util.Map;
+import java.util.Properties;
+import javax.naming.InitialContext;
+
+import no.schibstedsok.alfa.external.service.CompanyService;
import no.schibstedsok.commons.ioc.ContextWrapper;
+import no.schibstedsok.searchportal.result.CatalogueSearchResultItem;
+import no.schibstedsok.searchportal.result.ProductResultItem;
+import no.schibstedsok.searchportal.result.ProductSearchResult;
+import no.schibstedsok.searchportal.result.ProductSearchResultItem;
+import no.schibstedsok.searchportal.result.SearchResult;
import no.schibstedsok.searchportal.site.config.SiteConfiguration;
import org.apache.log4j.Logger;
@@ -24,11 +33,13 @@
private static final Logger LOG = Logger
.getLogger(CatalogueResultHandler.class);
-
/**
* Handle the search result.
- * @param cxt the context in which the resulthandler is executed in.
- * @param parameters sent to the resulthandler.
+ *
+ * @param cxt
+ * the context in which the resulthandler is executed in.
+ * @param parameters
+ * sent to the resulthandler.
*/
public void handleResult(final Context cxt, final Map parameters) {
LOG.info("Starter Catalogue ResultHandler.");
@@ -36,6 +47,70 @@
final SiteConfiguration siteConf = SiteConfiguration
.valueOf(ContextWrapper.wrap(SiteConfiguration.Context.class,
cxt));
-
+
+ String url = (String) siteConf.getProperties().get(
+ "alfa_remote_service_url");
+ String jndi = (String) siteConf.getProperties().get(
+ "alfa_remote_service_jndi_name");
+
+ SearchResult searchResult = cxt.getSearchResult();
+
+ if (searchResult.getResults().iterator().hasNext()) {
+
+ CatalogueSearchResultItem cat =
(CatalogueSearchResultItem) searchResult
+ .getResults().get(0);
+
+ String sCompanyId = cat.getField("iypcompanyid");
+ int intCompanyId = -1;
+
+ intCompanyId = Integer.valueOf(sCompanyId);
+
+ // kall sl-bean i salesadmin with company id parameter.
+ try {
+ Properties properties = new Properties();
+ properties.put("java.naming.factory.initial",
+
"org.jnp.interfaces.NamingContextFactory");
+ properties.put("java.naming.factory.url.pkgs",
+
"org.jboss.naming:org.jnp.interfaces");
+ properties.put("java.naming.provider.url", url);
+
+ InitialContext ctx = new
InitialContext(properties);
+ CompanyService service = (CompanyService)
ctx.lookup(jndi);
+
no.schibstedsok.alfa.external.dto.ProductSearchResult eksternt =
(no.schibstedsok.alfa.external.dto.ProductSearchResult) service
+
.getProductDataForCompany(intCompanyId);
+
+
+ /**
+ * Hent ut alle produkter som er lagt inn på
infosiden.
+ *
+ */
+ ProductSearchResult internalResult = new
ProductSearchResult();
+ if (eksternt.hasInfoPageProducts()) {
+ for
(no.schibstedsok.alfa.external.dto.ProductResultItem prodItem : eksternt
+ .getInfoPageProducts())
{
+ ProductResultItem item = new
ProductSearchResultItem();
+
item.setFields(prodItem.getFields());
+ }
+ }
+
+ /**
+ * Hent ut alle produkter som er lagt inn på
søkeresultatet.
+ *
+ */
+ if (eksternt.hasListingProducts()) {
+ for
(no.schibstedsok.alfa.external.dto.ProductResultItem prodItem : eksternt
+ .getListingProducts()) {
+ ProductResultItem item = new
ProductSearchResultItem();
+
item.setFields(prodItem.getFields());
+ }
+ }
+
+ cat.addProducts(internalResult);
+
+ } catch (Exception e) {
+ System.out.print(e);
+ e.printStackTrace();
+ }
+ }
}
}
Modified: trunk/war/pom.xml
===================================================================
--- trunk/war/pom.xml 2007-02-09 14:02:35 UTC (rev 4424)
+++ trunk/war/pom.xml 2007-02-09 14:25:52 UTC (rev 4425)
@@ -136,10 +136,11 @@
<groupId>axis</groupId>
<artifactId>axis-jaxrpc</artifactId>
</dependency>
- <dependency>
+ <dependency>
<groupId>axis</groupId>
<artifactId>axis-saaj</artifactId>
</dependency>
+
</dependencies>
<profiles>
<profile>
_______________________________________________
Kernel-commits mailing list
[email protected]
http://sesat.no/mailman/listinfo/kernel-commits