You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@manifoldcf.apache.org by kw...@apache.org on 2010/06/29 21:36:42 UTC
svn commit: r959078 - in
/incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr:
HttpPoster.java SolrConfig.java SolrConnector.java
Author: kwright
Date: Tue Jun 29 19:36:41 2010
New Revision: 959078
URL: http://svn.apache.org/viewvc?rev=959078&view=rev
Log:
Fix for CONNECTORS-45. Add a solr core field.
Modified:
incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/HttpPoster.java
incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/SolrConfig.java
incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/SolrConnector.java
Modified: incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/HttpPoster.java
URL: http://svn.apache.org/viewvc/incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/HttpPoster.java?rev=959078&r1=959077&r2=959078&view=diff
==============================================================================
--- incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/HttpPoster.java (original)
+++ incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/HttpPoster.java Tue Jun 29 19:36:41 2010
@@ -123,7 +123,8 @@ public class HttpPoster
* @param userID is the unencoded user name, or null.
* @param password is the unencoded password, or null.
*/
- public HttpPoster(String protocol, String server, int port, String webappName, String updatePath, String removePath, String statusPath,
+ public HttpPoster(String protocol, String server, int port, String webappName,
+ String updatePath, String removePath, String statusPath,
String realm, String userID, String password, String allowAttributeName, String denyAttributeName)
throws LCFException
{
@@ -153,6 +154,7 @@ public class HttpPoster
if (webappName.length() > 0)
webappName = "/" + webappName;
+
postUpdateAction = webappName + updatePath;
postRemoveAction = webappName + removePath;
postStatusAction = webappName + statusPath;
Modified: incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/SolrConfig.java
URL: http://svn.apache.org/viewvc/incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/SolrConfig.java?rev=959078&r1=959077&r2=959078&view=diff
==============================================================================
--- incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/SolrConfig.java (original)
+++ incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/SolrConfig.java Tue Jun 29 19:36:41 2010
@@ -35,6 +35,8 @@ public class SolrConfig
public static final String PARAM_PORT = "Server port";
/** Webapp */
public static final String PARAM_WEBAPPNAME = "Server web application";
+ /** Core */
+ public static final String PARAM_CORE = "Solr core name";
/** Update path */
public static final String PARAM_UPDATEPATH = "Server update handler";
/** Remove path */
Modified: incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/SolrConnector.java
URL: http://svn.apache.org/viewvc/incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/SolrConnector.java?rev=959078&r1=959077&r2=959078&view=diff
==============================================================================
--- incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/SolrConnector.java (original)
+++ incubator/lcf/trunk/modules/connectors/solr/connector/org/apache/lcf/agents/output/solr/SolrConnector.java Tue Jun 29 19:36:41 2010
@@ -109,6 +109,10 @@ public class SolrConnector extends org.a
if (webapp == null || webapp.length() == 0)
webapp = "";
+ String core = params.getParameter(org.apache.lcf.agents.output.solr.SolrConfig.PARAM_CORE);
+ if (core != null && core.length() == 0)
+ core = null;
+
String updatePath = params.getParameter(org.apache.lcf.agents.output.solr.SolrConfig.PARAM_UPDATEPATH);
if (updatePath == null || updatePath.length() == 0)
updatePath = "";
@@ -124,6 +128,14 @@ public class SolrConnector extends org.a
String userID = params.getParameter(SolrConfig.PARAM_USERID);
String password = params.getObfuscatedParameter(SolrConfig.PARAM_PASSWORD);
String realm = params.getParameter(SolrConfig.PARAM_REALM);
+
+ if (core != null)
+ {
+ if (webapp.length() == 0)
+ throw new LCFException("Webapp must be specified if core is specified.");
+ webapp = webapp + "/" + core;
+ }
+
try
{
poster = new HttpPoster(protocol,server,Integer.parseInt(port),webapp,updatePath,removePath,statusPath,realm,userID,password,
@@ -331,6 +343,18 @@ public class SolrConnector extends org.a
" editconnection.webappname.focus();\n"+
" return false;\n"+
" }\n"+
+" if (editconnection.core.value != \"\" && editconnection.core.value.indexOf(\"/\") != -1)\n"+
+" {\n"+
+" alert(\"Core name cannot have '/' characters\");\n"+
+" editconnection.core.focus();\n"+
+" return false;\n"+
+" }\n"+
+" if (editconnection.webappname.value == \"\" && editconnection.core.value != \"\")\n"+
+" {\n"+
+" alert(\"Web application must be specified if core is specified\");\n"+
+" editconnection.webappname.focus();\n"+
+" return false;\n"+
+" }\n"+
" if (editconnection.updatepath.value != \"\" && editconnection.updatepath.value.substring(0,1) != \"/\")\n"+
" {\n"+
" alert(\"Update path must start with a '/' character\");\n"+
@@ -375,6 +399,20 @@ public class SolrConnector extends org.a
" editconnection.webappname.focus();\n"+
" return false;\n"+
" }\n"+
+" if (editconnection.core.value != \"\" && editconnection.core.value.indexOf(\"/\") != -1)\n"+
+" {\n"+
+" alert(\"Core name cannot have '/' characters\");\n"+
+" SelectTab(\"Server\");\n"+
+" editconnection.core.focus();\n"+
+" return false;\n"+
+" }\n"+
+" if (editconnection.webappname.value == \"\" && editconnection.core.value != \"\")\n"+
+" {\n"+
+" alert(\"Web application must be specified if core is specified\");\n"+
+" SelectTab(\"Server\");\n"+
+" editconnection.webappname.focus();\n"+
+" return false;\n"+
+" }\n"+
" if (editconnection.updatepath.value != \"\" && editconnection.updatepath.value.substring(0,1) != \"/\")\n"+
" {\n"+
" alert(\"Update path must start with a '/' character\");\n"+
@@ -458,6 +496,10 @@ public class SolrConnector extends org.a
if (webapp == null)
webapp = "solr";
+ String core = parameters.getParameter(org.apache.lcf.agents.output.solr.SolrConfig.PARAM_CORE);
+ if (core == null)
+ core = "";
+
String updatePath = parameters.getParameter(org.apache.lcf.agents.output.solr.SolrConfig.PARAM_UPDATEPATH);
if (updatePath == null)
updatePath = "/update/extract";
@@ -510,12 +552,18 @@ public class SolrConnector extends org.a
" </tr>\n"+
" <tr><td colspan=\"2\" class=\"separator\"><hr/></td></tr>\n"+
" <tr>\n"+
-" <td class=\"description\"><nobr>Web application name:</nobr></td>\n"+
+" <td class=\"description\"><nobr>Web application name:</nobr></td>\n"+
" <td class=\"value\">\n"+
" <input name=\"webappname\" type=\"text\" size=\"16\" value=\""+org.apache.lcf.ui.util.Encoder.attributeEscape(webapp)+"\"/>\n"+
" </td>\n"+
" </tr>\n"+
" <tr>\n"+
+" <td class=\"description\"><nobr>Core name:</nobr></td>\n"+
+" <td class=\"value\">\n"+
+" <input name=\"core\" type=\"text\" size=\"16\" value=\""+org.apache.lcf.ui.util.Encoder.attributeEscape(core)+"\"/>\n"+
+" </td>\n"+
+" </tr>\n"+
+" <tr>\n"+
" <td class=\"description\"><nobr>Update handler:</nobr></td>\n"+
" <td class=\"value\">\n"+
" <input name=\"updatepath\" type=\"text\" size=\"32\" value=\""+org.apache.lcf.ui.util.Encoder.attributeEscape(updatePath)+"\"/>\n"+
@@ -563,6 +611,7 @@ public class SolrConnector extends org.a
"<input type=\"hidden\" name=\"servername\" value=\""+org.apache.lcf.ui.util.Encoder.attributeEscape(server)+"\"/>\n"+
"<input type=\"hidden\" name=\"serverport\" value=\""+org.apache.lcf.ui.util.Encoder.attributeEscape(port)+"\"/>\n"+
"<input type=\"hidden\" name=\"webappname\" value=\""+org.apache.lcf.ui.util.Encoder.attributeEscape(webapp)+"\"/>\n"+
+"<input type=\"hidden\" name=\"core\" value=\""+org.apache.lcf.ui.util.Encoder.attributeEscape(core)+"\"/>\n"+
"<input type=\"hidden\" name=\"updatepath\" value=\""+org.apache.lcf.ui.util.Encoder.attributeEscape(updatePath)+"\"/>\n"+
"<input type=\"hidden\" name=\"removepath\" value=\""+org.apache.lcf.ui.util.Encoder.attributeEscape(removePath)+"\"/>\n"+
"<input type=\"hidden\" name=\"statuspath\" value=\""+org.apache.lcf.ui.util.Encoder.attributeEscape(statusPath)+"\"/>\n"+
@@ -730,6 +779,10 @@ public class SolrConnector extends org.a
if (webapp != null)
parameters.setParameter(org.apache.lcf.agents.output.solr.SolrConfig.PARAM_WEBAPPNAME,webapp);
+ String core = variableContext.getParameter("core");
+ if (core != null)
+ parameters.setParameter(org.apache.lcf.agents.output.solr.SolrConfig.PARAM_CORE,core);
+
String updatePath = variableContext.getParameter("updatepath");
if (updatePath != null)
parameters.setParameter(org.apache.lcf.agents.output.solr.SolrConfig.PARAM_UPDATEPATH,updatePath);