Author: kwright
Date: Mon Mar 2 22:54:44 2015
New Revision: 1663458
URL: http://svn.apache.org/r1663458
Log:
Commit patch 1
Added:
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Job_Body.html
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Job_Header.js
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Repo_Body.html
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Repo_Header.js
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/viewConfiguration_Job.html
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/viewConfiguration_Repo.html
Modified:
manifoldcf/branches/CONNECTORS-1160/CHANGES.txt
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/livelink/LivelinkConnector.java
Modified: manifoldcf/branches/CONNECTORS-1160/CHANGES.txt
URL:
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1160/CHANGES.txt?rev=1663458&r1=1663457&r2=1663458&view=diff
==============================================================================
--- manifoldcf/branches/CONNECTORS-1160/CHANGES.txt (original)
+++ manifoldcf/branches/CONNECTORS-1160/CHANGES.txt Mon Mar 2 22:54:44 2015
@@ -3,6 +3,9 @@ $Id$
======================= 2.1-dev =====================
+CONNECTORS-1160: Update Livelink Connector HTML String to Velocity Template
+(Kishore Kumar)
+
CONNECTORS-1166: Delete link doesn't work on listtransformations
UI page.
(Shinichiro Abe, Karl Wright)
Modified:
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/livelink/LivelinkConnector.java
URL:
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/livelink/LivelinkConnector.java?rev=1663458&r1=1663457&r2=1663458&view=diff
==============================================================================
---
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/livelink/LivelinkConnector.java
(original)
+++
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/livelink/LivelinkConnector.java
Mon Mar 2 22:54:44 2015
@@ -93,6 +93,21 @@ public class LivelinkConnector extends o
{
public static final String _rcsid = "@(#)$Id: LivelinkConnector.java 996524
2010-09-13 13:38:01Z kwright $";
+ //Forward to the javascript to check the configuration parameters.
+ private static final String EDIT_CONFIG_JOB_HEADER_FORWARD =
"editConfiguration_Job_Header.js";
+ private static final String EDIT_CONFIG_REPO_HEADER_FORWARD =
"editConfiguration_Repo_Header.js";
+
+ //Forward to the HTML template to edit the configuration parameters.
+ private static final String EDIT_CONFIG_JOB_BODY_FORWARD =
"editConfiguration_Job_Body.html";
+ private static final String EDIT_CONFIG_REPO_BODY_FORWARD =
"editConfiguration_Repo_Body.html";
+
+ //Forward to the HTML template to view the configuration parameters.
+ private static final String VIEW_CONFIG_JOB_BODY_FORWARD =
"viewConfiguration_Job.html";
+ private static final String VIEW_CONFIG_REPO_BODY_FORWARD =
"viewConfiguration_Repo.html";
+
+ //Tab name parameter for managing the view of the Web UI.
+ private static final String TAB_NAME_PARAM = "TabName";
+
// Activities we will report on
private final static String ACTIVITY_SEED = "find documents";
private final static String ACTIVITY_FETCH = "fetch document";
@@ -1528,138 +1543,10 @@ public class LivelinkConnector extends o
tabsArray.add(Messages.getString(locale,"LivelinkConnector.Server"));
tabsArray.add(Messages.getString(locale,"LivelinkConnector.DocumentAccess"));
tabsArray.add(Messages.getString(locale,"LivelinkConnector.DocumentView"));
- out.print(
-"<script type=\"text/javascript\">\n"+
-"<!--\n"+
-"function ServerDeleteCertificate(aliasName)\n"+
-"{\n"+
-" editconnection.serverkeystorealias.value = aliasName;\n"+
-" editconnection.serverconfigop.value = \"Delete\";\n"+
-" postForm();\n"+
-"}\n"+
-"\n"+
-"function ServerAddCertificate()\n"+
-"{\n"+
-" if (editconnection.servercertificate.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.ChooseACertificateFile")+"\");\n"+
-" editconnection.servercertificate.focus();\n"+
-" }\n"+
-" else\n"+
-" {\n"+
-" editconnection.serverconfigop.value = \"Add\";\n"+
-" postForm();\n"+
-" }\n"+
-"}\n"+
-"\n"+
-"function IngestDeleteCertificate(aliasName)\n"+
-"{\n"+
-" editconnection.ingestkeystorealias.value = aliasName;\n"+
-" editconnection.ingestconfigop.value = \"Delete\";\n"+
-" postForm();\n"+
-"}\n"+
-"\n"+
-"function IngestAddCertificate()\n"+
-"{\n"+
-" if (editconnection.ingestcertificate.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.ChooseACertificateFile")+"\");\n"+
-" editconnection.ingestcertificate.focus();\n"+
-" }\n"+
-" else\n"+
-" {\n"+
-" editconnection.ingestconfigop.value = \"Add\";\n"+
-" postForm();\n"+
-" }\n"+
-"}\n"+
-"\n"+
-"function checkConfig()\n"+
-"{\n"+
-" if (editconnection.serverport.value != \"\" &&
!isInteger(editconnection.serverport.value))\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.AValidNumberIsRequired")+"\");\n"+
-" editconnection.serverport.focus();\n"+
-" return false;\n"+
-" }\n"+
-" if (editconnection.ingestport.value != \"\" &&
!isInteger(editconnection.ingestport.value))\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.AValidNumberOrBlankIsRequired")+"\");\n"+
-" editconnection.ingestport.focus();\n"+
-" return false;\n"+
-" }\n"+
-" if (editconnection.viewport.value != \"\" &&
!isInteger(editconnection.viewport.value))\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.AValidNumberOrBlankIsRequired")+"\");\n"+
-" editconnection.viewport.focus();\n"+
-" return false;\n"+
-" }\n"+
-" return true;\n"+
-"}\n"+
-"\n"+
-"function checkConfigForSave()\n"+
-"{\n"+
-" if (editconnection.servername.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.EnterALivelinkServerName")+"\");\n"+
-" SelectTab(\"" +
Messages.getBodyJavascriptString(locale,"LivelinkConnector.Server") + "\");\n"+
-" editconnection.servername.focus();\n"+
-" return false;\n"+
-" }\n"+
-" if (editconnection.serverport.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.AServerPortNumberIsRequired")+"\");\n"+
-" SelectTab(\"" +
Messages.getBodyJavascriptString(locale,"LivelinkConnector.Server") + "\");\n"+
-" editconnection.serverport.focus();\n"+
-" return false;\n"+
-" }\n"+
-" if (editconnection.serverhttpcgipath.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.EnterTheServerCgiPathToLivelink")+"\");\n"+
-" SelectTab(\"" +
Messages.getBodyJavascriptString(locale,"LivelinkConnector.Server") + "\");\n"+
-" editconnection.serverhttpcgipath.focus();\n"+
-" return false;\n"+
-" }\n"+
-" if (editconnection.serverhttpcgipath.value.substring(0,1) != \"/\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.TheServerCgiPathMustBeginWithACharacter")+"\");\n"+
-" SelectTab(\"" +
Messages.getBodyJavascriptString(locale,"LivelinkConnector.Server") + "\");\n"+
-" editconnection.serverhttpcgipath.focus();\n"+
-" return false;\n"+
-" }\n"+
-" if (editconnection.viewprotocol.value == \"\" &&
editconnection.ingestprotocol.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.SelectAViewProtocol")+"\");\n"+
-" SelectTab(\"" +
Messages.getBodyJavascriptString(locale,"LivelinkConnector.DocumentView") +
"\");\n"+
-" editconnection.viewprotocol.focus();\n"+
-" return false;\n"+
-" }\n"+
-" if (editconnection.viewcgipath.value == \"\" &&
editconnection.ingestcgipath.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.EnterTheViewCgiPathToLivelink")+"\");\n"+
-" SelectTab(\"" +
Messages.getBodyJavascriptString(locale,"LivelinkConnector.DocumentView") +
"\");\n"+
-" editconnection.viewcgipath.focus();\n"+
-" return false;\n"+
-" }\n"+
-" if (editconnection.ingestcgipath.value != \"\" &&
editconnection.ingestcgipath.value.substring(0,1) != \"/\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.TheIngestCgiPathMustBeBlankOrBeginWithACharacter")+"\");\n"+
-" SelectTab(\"" +
Messages.getBodyJavascriptString(locale,"LivelinkConnector.DocumentAccess") +
"\");\n"+
-" editconnection.ingestcgipath.focus();\n"+
-" return false;\n"+
-" }\n"+
-" if (editconnection.viewcgipath.value != \"\" &&
editconnection.viewcgipath.value.substring(0,1) != \"/\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.TheViewCgiPathMustBeBlankOrBeginWithACharacter")+"\");\n"+
-" SelectTab(\"" +
Messages.getBodyJavascriptString(locale,"LivelinkConnector.DocumentView") +
"\");\n"+
-" editconnection.viewcgipath.focus();\n"+
-" return false;\n"+
-" }\n"+
-" return true;\n"+
-"}\n"+
-"\n"+
-"//-->\n"+
-"</script>\n"
- );
+
+ Map<String, String> paramMap = new HashMap<>();
+
+ Messages.outputResourceWithVelocity(out, locale,
EDIT_CONFIG_REPO_HEADER_FORWARD, paramMap, true);
}
/** Output the configuration body section.
@@ -1675,288 +1562,119 @@ public class LivelinkConnector extends o
public void outputConfigurationBody(IThreadContext threadContext,
IHTTPOutput out,
Locale locale, ConfigParams parameters, String tabName)
throws ManifoldCFException, IOException
- {
-
+ {
+ Map<String, Object> paramMap = new HashMap<>();
+ paramMap.put(TAB_NAME_PARAM,tabName);
+
// LAPI parameters
String serverProtocol =
parameters.getParameter(LiveLinkParameters.serverProtocol);
if (serverProtocol == null)
serverProtocol = "internal";
+ paramMap.put("serverProtocol",serverProtocol);
String serverName = parameters.getParameter(LiveLinkParameters.serverName);
if (serverName == null)
serverName = "localhost";
+ paramMap.put("serverName",serverName);
String serverPort = parameters.getParameter(LiveLinkParameters.serverPort);
if (serverPort == null)
serverPort = "2099";
+ paramMap.put("serverPort",serverPort);
String serverUserName =
parameters.getParameter(LiveLinkParameters.serverUsername);
- if (serverUserName == null)
- serverUserName = "";
+ paramMap.put("serverUserName",serverUserName);
String serverPassword =
parameters.getObfuscatedParameter(LiveLinkParameters.serverPassword);
- if (serverPassword == null)
- serverPassword = "";
- else
+ if (serverPassword != null)
serverPassword = out.mapPasswordToKey(serverPassword);
+ paramMap.put("serverPassword",serverPassword);
String serverHTTPCgiPath =
parameters.getParameter(LiveLinkParameters.serverHTTPCgiPath);
if (serverHTTPCgiPath == null)
serverHTTPCgiPath = "/livelink/livelink.exe";
+ paramMap.put("serverHTTPCgiPath",serverHTTPCgiPath);
String serverHTTPNTLMDomain =
parameters.getParameter(LiveLinkParameters.serverHTTPNTLMDomain);
- if (serverHTTPNTLMDomain == null)
- serverHTTPNTLMDomain = "";
+ paramMap.put("serverHTTPNTLMDomain",serverHTTPNTLMDomain);
String serverHTTPNTLMUserName =
parameters.getParameter(LiveLinkParameters.serverHTTPNTLMUsername);
- if (serverHTTPNTLMUserName == null)
- serverHTTPNTLMUserName = "";
+ paramMap.put("serverHTTPNTLMUserName",serverHTTPNTLMUserName);
String serverHTTPNTLMPassword =
parameters.getObfuscatedParameter(LiveLinkParameters.serverHTTPNTLMPassword);
- if (serverHTTPNTLMPassword == null)
- serverHTTPNTLMPassword = "";
- else
+ if (serverHTTPNTLMPassword != null)
serverHTTPNTLMPassword = out.mapPasswordToKey(serverHTTPNTLMPassword);
+ paramMap.put("serverHTTPNTLMPassword",serverHTTPNTLMPassword);
String serverHTTPSKeystore =
parameters.getParameter(LiveLinkParameters.serverHTTPSKeystore);
IKeystoreManager localServerHTTPSKeystore;
if (serverHTTPSKeystore == null)
localServerHTTPSKeystore = KeystoreManagerFactory.make("");
else
localServerHTTPSKeystore =
KeystoreManagerFactory.make("",serverHTTPSKeystore);
+ paramMap.put("serverHTTPSKeystore",serverHTTPSKeystore);
// Document access parameters
String ingestProtocol =
parameters.getParameter(LiveLinkParameters.ingestProtocol);
- if (ingestProtocol == null)
- ingestProtocol = "";
+ paramMap.put("ingestProtocol",ingestProtocol);
String ingestPort = parameters.getParameter(LiveLinkParameters.ingestPort);
- if (ingestPort == null)
- ingestPort = "";
+ paramMap.put("ingestPort",ingestPort);
String ingestCgiPath =
parameters.getParameter(LiveLinkParameters.ingestCgiPath);
- if (ingestCgiPath == null)
- ingestCgiPath = "";
+ paramMap.put("ingestCgiPath",ingestCgiPath);
String ingestNtlmUsername =
parameters.getParameter(LiveLinkParameters.ingestNtlmUsername);
- if (ingestNtlmUsername == null)
- ingestNtlmUsername = "";
+ paramMap.put("ingestNtlmUsername",ingestNtlmUsername);
String ingestNtlmPassword =
parameters.getObfuscatedParameter(LiveLinkParameters.ingestNtlmPassword);
- if (ingestNtlmPassword == null)
- ingestNtlmPassword = "";
- else
+ if (ingestNtlmPassword != null)
ingestNtlmPassword = out.mapPasswordToKey(ingestNtlmPassword);
+ paramMap.put("ingestNtlmPassword",ingestNtlmPassword);
String ingestNtlmDomain =
parameters.getParameter(LiveLinkParameters.ingestNtlmDomain);
- if (ingestNtlmDomain == null)
- ingestNtlmDomain = "";
+ paramMap.put("ingestNtlmDomain",ingestNtlmDomain);
String ingestKeystore =
parameters.getParameter(LiveLinkParameters.ingestKeystore);
IKeystoreManager localIngestKeystore;
if (ingestKeystore == null)
localIngestKeystore = KeystoreManagerFactory.make("");
else
localIngestKeystore = KeystoreManagerFactory.make("",ingestKeystore);
-
+ paramMap.put("localIngestKeystore",ingestKeystore);
+
// Document view parameters
String viewProtocol =
parameters.getParameter(LiveLinkParameters.viewProtocol);
if (viewProtocol == null)
viewProtocol = "http";
+ paramMap.put("viewProtocol",viewProtocol);
String viewServerName =
parameters.getParameter(LiveLinkParameters.viewServerName);
- if (viewServerName == null)
- viewServerName = "";
+ paramMap.put("viewServerName",viewServerName);
String viewPort = parameters.getParameter(LiveLinkParameters.viewPort);
- if (viewPort == null)
- viewPort = "";
+ paramMap.put("viewPort",viewPort);
String viewCgiPath =
parameters.getParameter(LiveLinkParameters.viewCgiPath);
if (viewCgiPath == null)
viewCgiPath = "/livelink/livelink.exe";
+ paramMap.put("viewCgiPath",viewCgiPath);
- // The "Server" tab
- // Always pass the whole keystore as a hidden.
- out.print(
-"<input name=\"serverconfigop\" type=\"hidden\" value=\"Continue\"/>\n"
- );
- if (serverHTTPSKeystore != null)
- {
- out.print(
-"<input type=\"hidden\" name=\"serverhttpskeystoredata\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverHTTPSKeystore)+"\"/>\n"
- );
- }
if (tabName.equals(Messages.getString(locale,"LivelinkConnector.Server")))
{
- out.print(
-"<table class=\"displaytable\">\n"+
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\">"+Messages.getBodyString(locale,"LivelinkConnector.ServerProtocol")+"</td>\n"+
-" <td class=\"value\">\n"+
-" <select name=\"serverprotocol\" size=\"2\">\n"+
-" <option value=\"internal\"
"+((serverProtocol.equals("internal"))?"selected=\"selected\"":"")+">"+Messages.getBodyString(locale,"LivelinkConnector.internal")+"</option>\n"+
-" <option value=\"http\"
"+((serverProtocol.equals("http"))?"selected=\"selected\"":"")+">http</option>\n"+
-" <option value=\"https\"
"+((serverProtocol.equals("https"))?"selected=\"selected\"":"")+">https</option>\n"+
-" </select>\n"+
-" </td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.ServerName")+"</nobr></td>\n"+
-" <td class=\"value\"><input type=\"text\" size=\"64\" name=\"servername\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverName)+"\"/></td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.ServerPort")+"</nobr></td>\n"+
-" <td class=\"value\"><input type=\"text\" size=\"5\" name=\"serverport\"
value=\""+serverPort+"\"/></td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.ServerUserName")+"</nobr></td>\n"+
-" <td class=\"value\"><input type=\"text\" size=\"32\"
name=\"serverusername\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverUserName)+"\"/></td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.ServerPassword")+"</nobr></td>\n"+
-" <td class=\"value\"><input type=\"password\" size=\"32\"
name=\"serverpassword\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverPassword)+"\"/></td>\n"+
-" </tr>\n"+
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.ServerHTTPCGIPath")+"</nobr></td>\n"+
-" <td class=\"value\"><input type=\"text\" size=\"32\"
name=\"serverhttpcgipath\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverHTTPCgiPath)+"\"/></td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.ServerHTTPNTLMDomain")+"</nobr><br/><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.SetIfNTLMAuthDesired")+"</nobr></td>\n"+
-" <td class=\"value\">\n"+
-" <input type=\"text\" size=\"32\" name=\"serverhttpntlmdomain\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverHTTPNTLMDomain)+"\"/>\n"+
-" </td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.ServerHTTPNTLMUserName")+"</nobr></td>\n"+
-" <td class=\"value\">\n"+
-" <input type=\"text\" size=\"32\" name=\"serverhttpntlmusername\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverHTTPNTLMUserName)+"\"/>\n"+
-" </td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.ServerHTTPNTLMPassword")+"</nobr></td>\n"+
-" <td class=\"value\">\n"+
-" <input type=\"password\" size=\"32\" name=\"serverhttpntlmpassword\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverHTTPNTLMPassword)+"\"/>\n"+
-" </td>\n"+
-" </tr>\n"+
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"
- );
- out.print(
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.ServerSSLCertificateList")+"</nobr></td>\n"+
-" <td class=\"value\">\n"+
-" <input type=\"hidden\" name=\"serverkeystorealias\" value=\"\"/>\n"+
-" <table class=\"displaytable\">\n"
- );
+ Boolean hasServerCertificates = false;
// List the individual certificates in the store, with a delete button
for each
String[] contents = localServerHTTPSKeystore.getContents();
- if (contents.length == 0)
- {
- out.print(
-" <tr><td class=\"message\"
colspan=\"2\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.NoCertificatesPresent")+"</nobr></td></tr>\n"
- );
- }
- else
+ if (contents.length > 0)
{
+ hasServerCertificates = true;
int i = 0;
+ Map<String,String> serverCertificatesMap = new HashMap<>();
while (i < contents.length)
{
String alias = contents[i];
String description = localServerHTTPSKeystore.getDescription(alias);
if (description.length() > 128)
description = description.substring(0,125) + "...";
- out.print(
-" <tr>\n"+
-" <td class=\"value\"><input type=\"button\"
onclick='Javascript:ServerDeleteCertificate(\""+org.apache.manifoldcf.ui.util.Encoder.attributeJavascriptEscape(alias)+"\")'
alt=\""+Messages.getAttributeString(locale,"LivelinkConnector.DeleteCert")+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(alias)+"\"
value=\""+Messages.getAttributeString(locale,"LivelinkConnector.Delete")+"\"/></td>\n"+
-"
<td>"+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(description)+"</td>\n"+
-" </tr>\n"
- );
+ serverCertificatesMap.put(alias, description);
i++;
}
+ paramMap.put("serverCertificatesMap", serverCertificatesMap);
}
- out.print(
-" </table>\n"+
-" <input type=\"button\" onclick='Javascript:ServerAddCertificate()'
alt=\""+Messages.getAttributeString(locale,"LivelinkConnector.AddCert")+"\"
value=\""+Messages.getAttributeString(locale,"LivelinkConnector.Add")+"\"/> \n"+
-"
"+Messages.getBodyString(locale,"LivelinkConnector.Certificate")+"<input
name=\"servercertificate\" size=\"50\" type=\"file\"/>\n"+
-" </td>\n"+
-" </tr>\n"
- );
- out.print(
-"</table>\n"
- );
- }
- else
- {
- // Hiddens for Server tab
- out.print(
-"<input type=\"hidden\" name=\"serverprotocol\"
value=\""+serverProtocol+"\"/>\n"+
-"<input type=\"hidden\" name=\"servername\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverName)+"\"/>\n"+
-"<input type=\"hidden\" name=\"serverport\" value=\""+serverPort+"\"/>\n"+
-"<input type=\"hidden\" name=\"serverusername\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverUserName)+"\"/>\n"+
-"<input type=\"hidden\" name=\"serverpassword\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverPassword)+"\"/>\n"+
-"<input type=\"hidden\" name=\"serverhttpcgipath\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverHTTPCgiPath)+"\"/>\n"+
-"<input type=\"hidden\" name=\"serverhttpntlmdomain\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverHTTPNTLMDomain)+"\"/>\n"+
-"<input type=\"hidden\" name=\"serverhttpntlmusername\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverHTTPNTLMUserName)+"\"/>\n"+
-"<input type=\"hidden\" name=\"serverhttpntlmpassword\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(serverHTTPNTLMPassword)+"\"/>\n"
- );
+ paramMap.put("hasServerCertificates", hasServerCertificates);
}
// The "Document Access" tab
- // Always pass the whole keystore as a hidden.
- out.print(
-"<input name=\"ingestconfigop\" type=\"hidden\" value=\"Continue\"/>\n"
- );
- if (ingestKeystore != null)
- {
- out.print(
-"<input type=\"hidden\" name=\"ingestkeystoredata\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(ingestKeystore)+"\"/>\n"
- );
- }
if
(tabName.equals(Messages.getString(locale,"LivelinkConnector.DocumentAccess")))
{
- out.print(
-"<table class=\"displaytable\">\n"+
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\">"+Messages.getBodyString(locale,"LivelinkConnector.DocumentFetchProtocol")+"</td>\n"+
-" <td class=\"value\">\n"+
-" <select name=\"ingestprotocol\" size=\"3\">\n"+
-" <option value=\"\"
"+((ingestProtocol.equals(""))?"selected=\"selected\"":"")+">"+Messages.getBodyString(locale,"LivelinkConnector.UseLAPI")+"</option>\n"+
-" <option value=\"http\"
"+((ingestProtocol.equals("http"))?"selected=\"selected\"":"")+">http</option>\n"+
-" <option value=\"https\"
"+((ingestProtocol.equals("https"))?"selected=\"selected\"":"")+">https</option>\n"+
-" </select>\n"+
-" </td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.DocumentFetchPort")+"</nobr></td>\n"+
-" <td class=\"value\"><input type=\"text\" size=\"5\" name=\"ingestport\"
value=\""+ingestPort+"\"/></td>\n"+
-" </tr>\n"+
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.DocumentFetchCGIPath")+"</nobr></td>\n"+
-" <td class=\"value\"><input type=\"text\" size=\"32\"
name=\"ingestcgipath\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(ingestCgiPath)+"\"/></td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.DocumentFetchNTLMDomain")+"</nobr><br/><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.SetIfNTLMAuthDesired")+"</nobr></td>\n"+
-" <td class=\"value\">\n"+
-" <input type=\"text\" size=\"32\" name=\"ingestntlmdomain\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(ingestNtlmDomain)+"\"/>\n"+
-" </td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.DocumentFetchNTLMUserName")+"</nobr><br/><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.SetIfDifferentFromServerUserName")+"</nobr></td>\n"+
-" <td class=\"value\">\n"+
-" <input type=\"text\" size=\"32\" name=\"ingestntlmusername\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(ingestNtlmUsername)+"\"/>\n"+
-" </td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.DocumentFetchNTLMPassword")+"</nobr><br/><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.SetIfDifferentFromServerPassword")+"</nobr></td>\n"+
-" <td class=\"value\">\n"+
-" <input type=\"password\" size=\"32\" name=\"ingestntlmpassword\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(ingestNtlmPassword)+"\"/>\n"+
-" </td>\n"+
-" </tr>\n"+
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"
- );
- out.print(
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.DocumentFetchSSLCertificateList")+"</nobr></td>\n"+
-" <td class=\"value\">\n"+
-" <input type=\"hidden\" name=\"ingestkeystorealias\" value=\"\"/>\n"+
-" <table class=\"displaytable\">\n"
- );
- // List the individual certificates in the store, with a delete button
for each
+ Boolean hasIngestCertificates = false;
String[] contents = localIngestKeystore.getContents();
- if (contents.length == 0)
- {
- out.print(
-" <tr><td class=\"message\"
colspan=\"2\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.NoCertificatesPresent")+"</nobr></td></tr>\n"
- );
- }
- else
+ if (contents.length > 0)
{
+ hasIngestCertificates = true;
+ Map<String,String> ingestCertificatesMap = new HashMap<>();
int i = 0;
while (i < contents.length)
{
@@ -1964,80 +1682,15 @@ public class LivelinkConnector extends o
String description = localIngestKeystore.getDescription(alias);
if (description.length() > 128)
description = description.substring(0,125) + "...";
- out.print(
-" <tr>\n"+
-" <td class=\"value\"><input type=\"button\"
onclick='Javascript:IngestDeleteCertificate(\""+org.apache.manifoldcf.ui.util.Encoder.attributeJavascriptEscape(alias)+"\")'
alt=\""+Messages.getAttributeString(locale,"LivelinkConnector.DeleteCert")+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(alias)+"\"
value=\""+Messages.getAttributeString(locale,"LivelinkConnector.Delete")+"\"/></td>\n"+
-"
<td>"+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(description)+"</td>\n"+
-" </tr>\n"
- );
+ ingestCertificatesMap.put(alias,description);
i++;
}
+ paramMap.put("ingestCertificatesMap", ingestCertificatesMap);
}
- out.print(
-" </table>\n"+
-" <input type=\"button\" onclick='Javascript:IngestAddCertificate()'
alt=\""+Messages.getAttributeString(locale,"LivelinkConnector.AddCert")+"\"
value=\""+Messages.getAttributeString(locale,"LivelinkConnector.Add")+"\"/> \n"+
-"
"+Messages.getBodyString(locale,"LivelinkConnector.Certificate")+"<input
name=\"ingestcertificate\" size=\"50\" type=\"file\"/>\n"+
-" </td>\n"+
-" </tr>\n"
- );
- out.print(
-"</table>\n"
- );
+ paramMap.put("hasIngestCertificates", hasIngestCertificates);
}
- else
- {
- // Hiddens for Document Access tab
- out.print(
-"<input type=\"hidden\" name=\"ingestprotocol\"
value=\""+ingestProtocol+"\"/>\n"+
-"<input type=\"hidden\" name=\"ingestport\" value=\""+ingestPort+"\"/>\n"+
-"<input type=\"hidden\" name=\"ingestcgipath\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(ingestCgiPath)+"\"/>\n"+
-"<input type=\"hidden\" name=\"ingestntlmusername\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(ingestNtlmUsername)+"\"/>\n"+
-"<input type=\"hidden\" name=\"ingestntlmpassword\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(ingestNtlmPassword)+"\"/>\n"+
-"<input type=\"hidden\" name=\"ingestntlmdomain\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(ingestNtlmDomain)+"\"/>\n"
- );
- }
- // Document View tab
- if
(tabName.equals(Messages.getString(locale,"LivelinkConnector.DocumentView")))
- {
- out.print(
-"<table class=\"displaytable\">\n"+
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\">"+Messages.getBodyString(locale,"LivelinkConnector.DocumentViewProtocol")+"</td>\n"+
-" <td class=\"value\">\n"+
-" <select name=\"viewprotocol\" size=\"3\">\n"+
-" <option value=\"\"
"+((viewProtocol.equals(""))?"selected=\"selected\"":"")+">"+Messages.getBodyString(locale,"LivelinkConnector.SameAsFetchProtocol")+"</option>\n"+
-" <option value=\"http\"
"+((viewProtocol.equals("http"))?"selected=\"selected\"":"")+">http</option>\n"+
-" <option value=\"https\"
"+((viewProtocol.equals("https"))?"selected=\"selected\"":"")+">https</option>\n"+
-" </select>\n"+
-" </td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.DocumentViewServerName")+"</nobr><br/><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.BlankSameAsFetchServer")+"</nobr></td>\n"+
-" <td class=\"value\"><input type=\"text\" size=\"64\"
name=\"viewservername\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(viewServerName)+"\"/></td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.DocumentViewPort")+"</nobr><br/><nobr>(blank
= same as fetch port)</nobr></td>\n"+
-" <td class=\"value\"><input type=\"text\" size=\"5\" name=\"viewport\"
value=\""+viewPort+"\"/></td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.DocumentViewCGIPath")+"</nobr><br/><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.BlankSameAsFetchServer")+"</nobr></td>\n"+
-" <td class=\"value\"><input type=\"text\" size=\"32\" name=\"viewcgipath\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(viewCgiPath)+"\"/></td>\n"+
-" </tr>\n"+
-"</table>\n"
- );
- }
- else
- {
- // Hiddens for Document View tab
- out.print(
-"<input type=\"hidden\" name=\"viewprotocol\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(viewProtocol)+"\"/>\n"+
-"<input type=\"hidden\" name=\"viewservername\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(viewServerName)+"\"/>\n"+
-"<input type=\"hidden\" name=\"viewport\" value=\""+viewPort+"\"/>\n"+
-"<input type=\"hidden\" name=\"viewcgipath\"
value=\""+org.apache.manifoldcf.ui.util.Encoder.attributeEscape(viewCgiPath)+"\"/>\n"
- );
- }
+ Messages.outputResourceWithVelocity(out, locale,
EDIT_CONFIG_REPO_BODY_FORWARD, paramMap);
}
/** Process a configuration post.
@@ -2248,12 +1901,9 @@ public class LivelinkConnector extends o
Locale locale, ConfigParams parameters)
throws ManifoldCFException, IOException
{
- out.print(
-"<table class=\"displaytable\">\n"+
-" <tr>\n"+
-" <td class=\"description\"
colspan=\"1\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.Parameters")+"</nobr></td>\n"+
-" <td class=\"value\" colspan=\"3\">\n"
- );
+ Map<String, Object> paramMap = new HashMap<>();
+ Map<String,String> configMap = new HashMap<>();
+
Iterator iter = parameters.listParameters();
while (iter.hasNext())
{
@@ -2261,30 +1911,22 @@ public class LivelinkConnector extends o
String value = parameters.getParameter(param);
if (param.length() >= "password".length() &&
param.substring(param.length()-"password".length()).equalsIgnoreCase("password"))
{
- out.print(
-"
<nobr>"+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(param)+"=********</nobr><br/>\n"
- );
+
configMap.put(org.apache.manifoldcf.ui.util.Encoder.bodyEscape(param),"********");
}
else if (param.length() >="keystore".length() &&
param.substring(param.length()-"keystore".length()).equalsIgnoreCase("keystore")
||
- param.length() > "truststore".length() &&
param.substring(param.length()-"truststore".length()).equalsIgnoreCase("truststore"))
+ param.length() > "truststore".length() &&
param.substring(param.length()-"truststore".length()).equalsIgnoreCase("truststore"))
{
IKeystoreManager kmanager = KeystoreManagerFactory.make("",value);
- out.print(
-"
<nobr>"+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(param)+"=<"+Integer.toString(kmanager.getContents().length)+Messages.getBodyString(locale,"LivelinkConnector.certificates")+"></nobr><br/>\n"
- );
+
configMap.put(org.apache.manifoldcf.ui.util.Encoder.bodyEscape(param),"=<"+Integer.toString(kmanager.getContents().length)+Messages.getBodyString(locale,"LivelinkConnector.certificates")+">");
}
else
{
- out.print(
-"
<nobr>"+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(param)+"="+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(value)+"</nobr><br/>\n"
- );
+ configMap.put(org.apache.manifoldcf.ui.util.Encoder.bodyEscape(param),
org.apache.manifoldcf.ui.util.Encoder.bodyEscape(value));
}
}
- out.print(
-" </td>\n"+
-" </tr>\n"+
-"</table>\n"
- );
+
+ paramMap.put("configMap",configMap);
+ Messages.outputResourceWithVelocity(out, locale,
VIEW_CONFIG_REPO_BODY_FORWARD, paramMap);
}
/** Output the specification header section.
@@ -2308,115 +1950,12 @@ public class LivelinkConnector extends o
tabsArray.add(Messages.getString(locale,"LivelinkConnector.Security"));
tabsArray.add(Messages.getString(locale,"LivelinkConnector.Metadata"));
- String seqPrefix = "s"+connectionSequenceNumber+"_";
+ String seqPrefixParam = "s" + connectionSequenceNumber + "_";
- out.print(
-"<script type=\"text/javascript\">\n"+
-"<!--\n"+
-"\n"+
-"function "+seqPrefix+"SpecOp(n, opValue, anchorvalue)\n"+
-"{\n"+
-" eval(\"editjob.\"+n+\".value = \\\"\"+opValue+\"\\\"\");\n"+
-" postFormSetAnchor(anchorvalue);\n"+
-"}\n"+
-"\n"+
-"function "+seqPrefix+"SpecAddToPath(anchorvalue)\n"+
-"{\n"+
-" if (editjob."+seqPrefix+"pathaddon.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.SelectAFolderFirst")+"\");\n"+
-" editjob."+seqPrefix+"pathaddon.focus();\n"+
-" return;\n"+
-" }\n"+
-"\n"+
-" "+seqPrefix+"SpecOp(\""+seqPrefix+"pathop\",\"AddToPath\",anchorvalue);\n"+
-"}\n"+
-"\n"+
-"function "+seqPrefix+"SpecAddFilespec(anchorvalue)\n"+
-"{\n"+
-" if (editjob."+seqPrefix+"specfile.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.TypeInAFileSpecification")+"\");\n"+
-" editjob."+seqPrefix+"specfile.focus();\n"+
-" return;\n"+
-" }\n"+
-" "+seqPrefix+"SpecOp(\""+seqPrefix+"fileop\",\"Add\",anchorvalue);\n"+
-"}\n"+
-"\n"+
-"function "+seqPrefix+"SpecAddToken(anchorvalue)\n"+
-"{\n"+
-" if (editjob."+seqPrefix+"spectoken.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.TypeInAnAccessToken")+"\");\n"+
-" editjob."+seqPrefix+"spectoken.focus();\n"+
-" return;\n"+
-" }\n"+
-" "+seqPrefix+"SpecOp(\""+seqPrefix+"accessop\",\"Add\",anchorvalue);\n"+
-"}\n"+
-"\n"+
-"function "+seqPrefix+"SpecAddToMetadata(anchorvalue)\n"+
-"{\n"+
-" if (editjob."+seqPrefix+"metadataaddon.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.SelectAFolderFirst")+"\");\n"+
-" editjob."+seqPrefix+"metadataaddon.focus();\n"+
-" return;\n"+
-" }\n"+
-"
"+seqPrefix+"SpecOp(\""+seqPrefix+"metadataop\",\"AddToPath\",anchorvalue);\n"+
-"}\n"+
-"\n"+
-"function "+seqPrefix+"SpecSetWorkspace(anchorvalue)\n"+
-"{\n"+
-" if (editjob."+seqPrefix+"metadataaddon.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.SelectAWorkspaceFirst")+"\");\n"+
-" editjob."+seqPrefix+"metadataaddon.focus();\n"+
-" return;\n"+
-" }\n"+
-"
"+seqPrefix+"SpecOp(\""+seqPrefix+"metadataop\",\"SetWorkspace\",anchorvalue);\n"+
-"}\n"+
-"\n"+
-"function "+seqPrefix+"SpecAddCategory(anchorvalue)\n"+
-"{\n"+
-" if (editjob."+seqPrefix+"categoryaddon.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.SelectACategoryFirst")+"\");\n"+
-" editjob."+seqPrefix+"categoryaddon.focus();\n"+
-" return;\n"+
-" }\n"+
-"
"+seqPrefix+"SpecOp(\""+seqPrefix+"metadataop\",\"AddCategory\",anchorvalue);\n"+
-"}\n"+
-"\n"+
-"function "+seqPrefix+"SpecAddMetadata(anchorvalue)\n"+
-"{\n"+
-" if (editjob."+seqPrefix+"attributeselect.value == \"\" &&
editjob."+seqPrefix+"attributeall.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.SelectAtLeastOneAttributeFirst")+"\");\n"+
-" editjob."+seqPrefix+"attributeselect.focus();\n"+
-" return;\n"+
-" }\n"+
-" "+seqPrefix+"SpecOp(\""+seqPrefix+"metadataop\",\"Add\",anchorvalue);\n"+
-"}\n"+
-"\n"+
-"function "+seqPrefix+"SpecAddMapping(anchorvalue)\n"+
-"{\n"+
-" if (editjob."+seqPrefix+"specmatch.value == \"\")\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.MatchStringCannotBeEmpty")+"\");\n"+
-" editjob."+seqPrefix+"specmatch.focus();\n"+
-" return;\n"+
-" }\n"+
-" if (!isRegularExpression(editjob."+seqPrefix+"specmatch.value))\n"+
-" {\n"+
-"
alert(\""+Messages.getBodyJavascriptString(locale,"LivelinkConnector.MatchStringMustBeValidRegularExpression")+"\");\n"+
-" editjob."+seqPrefix+"specmatch.focus();\n"+
-" return;\n"+
-" }\n"+
-" "+seqPrefix+"SpecOp(\""+seqPrefix+"specmappingop\",\"Add\",anchorvalue);\n"+
-"}\n"+
-"//-->\n"+
-"</script>\n"
- );
+ Map<String, String> paramMap = new HashMap<String, String>();
+ paramMap.put("seqPrefix", seqPrefixParam);
+
+ Messages.outputResourceWithVelocity(out, locale,
EDIT_CONFIG_JOB_HEADER_FORWARD, paramMap, true);
}
/** Output the specification body section.
@@ -3716,10 +3255,8 @@ public class LivelinkConnector extends o
int connectionSequenceNumber)
throws ManifoldCFException, IOException
{
- out.print(
-"<table class=\"displaytable\">\n"+
-" <tr>\n"
- );
+ Map<String, Object> paramMap = new HashMap<>();
+
int i = 0;
boolean userWorkspaces = false;
while (i < ds.getChildCount())
@@ -3733,21 +3270,8 @@ public class LivelinkConnector extends o
}
}
- out.print(
-" <td class=\"description\"/>\n"+
-"
<nobr>"+Messages.getBodyString(locale,"LivelinkConnector.CrawlUserWorkspaces")+"</nobr>\n"+
-" </td>\n"+
-" <td class=\"value\"/>\n"+
-"
"+(userWorkspaces?Messages.getBodyString(locale,"LivelinkConnector.Yes"):Messages.getBodyString(locale,"LivelinkConnector.No"))+"\n"+
-" </td>\n"+
-" </tr>"
- );
- out.print(
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"
- );
- out.print(
-" <tr>"
- );
+ paramMap.put("userWorkspaces",userWorkspaces);
+ List<String> paths = new ArrayList<>();
i = 0;
boolean seenAny = false;
@@ -3758,35 +3282,16 @@ public class LivelinkConnector extends o
{
if (seenAny == false)
{
- out.print(
-" <td
class=\"description\">"+Messages.getBodyString(locale,"LivelinkConnector.Roots")+"</td>\n"+
-" <td class=\"value\">\n"
- );
seenAny = true;
}
- out.print(
-"
"+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(sn.getAttributeValue("path"))+"<br/>\n"
- );
+
paths.add(org.apache.manifoldcf.ui.util.Encoder.bodyEscape(sn.getAttributeValue("path")));
}
}
- if (seenAny)
- {
- out.print(
-" </td>\n"+
-" </tr>\n"
- );
- }
- else
- {
- out.print(
-" <tr><td class=\"message\"
colspan=\"2\">"+Messages.getBodyString(locale,"LivelinkConnector.NoStartPointsSpecified")+"</td></tr>\n"
- );
- }
- out.print(
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"
- );
+ paramMap.put("hasPath",seenAny);
+ paramMap.put("paths",paths);
+ List<String> fileSpecs = new ArrayList<>();
seenAny = false;
// Go through looking for include or exclude file specs
i = 0;
@@ -3797,37 +3302,16 @@ public class LivelinkConnector extends o
{
if (seenAny == false)
{
- out.print(
-" <tr><td
class=\"description\">"+Messages.getBodyString(locale,"LivelinkConnector.FileSpecs")+"</td>\n"+
-" <td class=\"value\">\n"
- );
seenAny = true;
}
String filespec = sn.getAttributeValue("filespec");
- out.print(
-" "+(sn.getType().equals("include")?"Include file:":"")+"\n"+
-" "+(sn.getType().equals("exclude")?"Exclude file:":"")+"\n"+
-" "+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(filespec)+"<br/>\n"
- );
+ fileSpecs.add((sn.getType().equals("include")?"Include file: ":"") +
(sn.getType().equals("exclude")?"Exclude file: ":"") +
org.apache.manifoldcf.ui.util.Encoder.bodyEscape(filespec));
}
}
- if (seenAny)
- {
- out.print(
-" </td>\n"+
-" </tr>\n"
- );
- }
- else
- {
- out.print(
-" <tr><td class=\"message\"
colspan=\"2\">"+Messages.getBodyString(locale,"LivelinkConnector.NoFileSpecsSpecified")+"</td></tr>\n"
- );
- }
- out.print(
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"
- );
+ paramMap.put("hasFileSpecs",seenAny);
+ paramMap.put("fileSpecs",fileSpecs);
+
// Find whether security is on or off
i = 0;
boolean securityOn = true;
@@ -3843,15 +3327,11 @@ public class LivelinkConnector extends o
securityOn = true;
}
}
- out.print(
-" <tr>\n"+
-" <td
class=\"description\">"+Messages.getBodyString(locale,"LivelinkConnector.SecurityColon")+"</td>\n"+
-" <td
class=\"value\">"+(securityOn?Messages.getBodyString(locale,"LivelinkConnector.Enabled2"):Messages.getBodyString(locale,"LivelinkConnector.Disabled"))+"</td>\n"+
-" </tr>\n"+
-"\n"+
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"
- );
+
+ paramMap.put("securityOn",securityOn);
+
// Go through looking for access tokens
+ List<String> accessTokens = new ArrayList<>();
seenAny = false;
i = 0;
while (i < ds.getChildCount())
@@ -3861,37 +3341,18 @@ public class LivelinkConnector extends o
{
if (seenAny == false)
{
- out.print(
-" <tr><td
class=\"description\">"+Messages.getBodyString(locale,"LivelinkConnector.AccessTokens")+"</td>\n"+
-" <td class=\"value\">\n"
- );
seenAny = true;
}
String token = sn.getAttributeValue("token");
- out.print(
-" "+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(token)+"<br/>\n"
- );
+
accessTokens.add(org.apache.manifoldcf.ui.util.Encoder.bodyEscape(token));
}
}
- if (seenAny)
- {
- out.print(
-" </td>\n"+
-" </tr>\n"
- );
- }
- else
- {
- out.print(
-" <tr><td class=\"message\" colspan=\"2\">" +
Messages.getBodyString(locale,"LivelinkConnector.NoAccessTokensSpecified") +
"</td></tr>\n"
- );
- }
- out.print(
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"
- );
+ paramMap.put("hasAccessTokens",seenAny);
+ paramMap.put("accessTokens",accessTokens);
+
i = 0;
- String allMetadata =
Messages.getBodyString(locale,"LivelinkConnector.OnlySpecifiedMetadataWillBeIngested");
+ Boolean allMetadata = false;
while (i < ds.getChildCount())
{
SpecificationNode sn = ds.getChild(i++);
@@ -3900,18 +3361,15 @@ public class LivelinkConnector extends o
String value = sn.getAttributeValue("all");
if (value != null && value.equals("true"))
{
-
allMetadata=Messages.getBodyString(locale,"LivelinkConnector.AllDocumentMetadataWillBeIngested");
+ allMetadata=true;
}
}
}
- out.print(
-" <tr>\n"+
-" <td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.MetadataSpecification")+"</nobr></td>\n"+
-" <td class=\"value\"><nobr>"+allMetadata+"</nobr></td>\n"+
-" </tr>\n"+
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"
- );
+
+ paramMap.put("allMetadata",allMetadata);
+
// Go through looking for metadata spec
+ List<String> metadata = new ArrayList<>();
seenAny = false;
i = 0;
while (i < ds.getChildCount())
@@ -3921,37 +3379,18 @@ public class LivelinkConnector extends o
{
if (seenAny == false)
{
- out.print(
-" <tr><td
class=\"description\"><nobr>"+Messages.getBodyString(locale,"LivelinkConnector.SpecificMetadata")+"</nobr></td>\n"+
-" <td class=\"value\">\n"
- );
seenAny = true;
}
String category = sn.getAttributeValue("category");
String attribute = sn.getAttributeValue("attribute");
String isAll = sn.getAttributeValue("all");
- out.print(
-"
"+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(category)+":"+((isAll!=null&&isAll.equals("true"))?"(All
metadata
attributes)":org.apache.manifoldcf.ui.util.Encoder.bodyEscape(attribute))+"<br/>\n"
- );
+ metadata.add(category+":"+((isAll!=null&&isAll.equals("true"))?"(All
metadata attributes)":attribute));
}
}
- if (seenAny)
- {
- out.print(
-" </td>\n"+
-" </tr>\n"
- );
- }
- else
- {
- out.print(
-" <tr><td class=\"message\"
colspan=\"2\">"+Messages.getBodyString(locale,"LivelinkConnector.NoMetadataSpecified")+"</td></tr>\n"
- );
- }
- out.print(
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"
- );
+ paramMap.put("hasMetadata",seenAny);
+ paramMap.put("metadata",metadata);
+
// Find the path-name metadata attribute name
i = 0;
String pathNameAttribute = "";
@@ -3966,34 +3405,19 @@ public class LivelinkConnector extends o
pathSeparator = sn.getAttributeValue("separator");
}
}
+
+ Boolean hasPathNameAttribute = false;
if (pathNameAttribute.length() > 0)
{
- out.print(
-" <tr>\n"+
-" <td
class=\"description\">"+Messages.getBodyString(locale,"LivelinkConnector.PathNameMetadataAttribute")+"</td>\n"+
-" <td
class=\"value\">"+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(pathNameAttribute)+"</td>\n"+
-" </tr>\n"+
-" <tr>\n"+
-" <td
class=\"description\">"+Messages.getBodyString(locale,"LivelinkConnector.PathSeparatorString")+"</td>\n"+
-" <td
class=\"value\">"+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(pathSeparator)+"</td>\n"+
-" </tr>\n"
- );
+ hasPathNameAttribute = true;
+ paramMap.put("pathNameAttribute",pathNameAttribute);
+ paramMap.put("pathSeparator",pathSeparator);
}
- else
- {
- out.print(
-" <tr>\n"+
-" <td class=\"message\"
colspan=\"2\">"+Messages.getBodyString(locale,"LivelinkConnector.NoPathNameMetadataAttributeSpecified")+"</td>\n"+
-" </tr>\n"
- );
- }
- out.print(
-"\n"+
-" <tr><td class=\"separator\" colspan=\"2\"><hr/></td></tr>\n"+
-"\n"+
-" <tr>\n"
- );
+
+ paramMap.put("hasPathNameAttribute",hasPathNameAttribute);
+
// Find the path-value mapping data
+ Boolean hasPathValueMapping = false;
i = 0;
MatchMap matchMap = new MatchMap();
while (i < ds.getChildCount())
@@ -4006,42 +3430,23 @@ public class LivelinkConnector extends o
matchMap.appendMatchPair(pathMatch,pathReplace);
}
}
+
if (matchMap.getMatchCount() > 0)
{
- out.print(
-" <td
class=\"description\">"+Messages.getBodyString(locale,"LivelinkConnector.PathValueMapping")+"</td>\n"+
-" <td class=\"value\">\n"+
-" <table class=\"displaytable\">\n"
- );
+ hasPathValueMapping = true;
+ Map<String,String> matchReplaceMap = new HashMap<>();
i = 0;
while (i < matchMap.getMatchCount())
{
- String matchString = matchMap.getMatchString(i);
- String replaceString = matchMap.getReplaceString(i);
- out.print(
-" <tr>\n"+
-" <td
class=\"value\">"+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(matchString)+"</td>\n"+
-" <td class=\"value\">--></td>\n"+
-" <td
class=\"value\">"+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(replaceString)+"</td>\n"+
-" </tr>\n"
- );
+
matchReplaceMap.put(matchMap.getMatchString(i),matchMap.getReplaceString(i));
i++;
}
- out.print(
-" </table>\n"+
-" </td>\n"
- );
+ paramMap.put("matchReplaceMap",matchReplaceMap);
}
- else
- {
- out.print(
-" <td class=\"message\"
colspan=\"2\">"+Messages.getBodyString(locale,"LivelinkConnector.NoMappingsSpecified")+"</td>\n"
- );
- }
- out.print(
-" </tr>\n"+
-"</table>\n"
- );
+
+ paramMap.put("hasPathValueMapping",hasPathValueMapping);
+
+ Messages.outputResourceWithVelocity(out, locale,
VIEW_CONFIG_JOB_BODY_FORWARD, paramMap);
}
// The following public methods are NOT part of the interface. They are
here so that the UI can present information
Added:
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Job_Body.html
URL:
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Job_Body.html?rev=1663458&view=auto
==============================================================================
---
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Job_Body.html
(added)
+++
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Job_Body.html
Mon Mar 2 22:54:44 2015
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<!--
+Copyright 2014 The Apache Software Foundation.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
Added:
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Job_Header.js
URL:
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Job_Header.js?rev=1663458&view=auto
==============================================================================
---
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Job_Header.js
(added)
+++
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Job_Header.js
Mon Mar 2 22:54:44 2015
@@ -0,0 +1,106 @@
+<script type="text/javascript">
+ <!--
+
+ function ${SEQPREFIX}SpecOp(n, opValue, anchorvalue)
+ {
+ eval("editjob."+n+".value = \""+opValue+"\"");
+ postFormSetAnchor(anchorvalue);
+ }
+
+ function ${SEQPREFIX}SpecAddToPath(anchorvalue)
+ {
+ console.log(anchorvalue);
+ if (editjob.${SEQPREFIX}pathaddon.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.SelectAFolderFirst'))");
+ editjob.${SEQPREFIX}pathaddon.focus();
+ return;
+ }
+
+ ${SEQPREFIX}SpecOp("${SEQPREFIX}pathop","AddToPath",anchorvalue);
+ }
+
+ function ${SEQPREFIX}SpecAddFilespec(anchorvalue)
+ {
+ if (editjob.${SEQPREFIX}specfile.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.TypeInAFileSpecification'))");
+ editjob.${SEQPREFIX}specfile.focus();
+ return;
+ }
+ ${SEQPREFIX}SpecOp("${SEQPREFIX}fileop","Add",anchorvalue);
+ }
+
+ function ${SEQPREFIX}SpecAddToken(anchorvalue)
+ {
+ if (editjob.${SEQPREFIX}spectoken.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.TypeInAnAccessToken'))");
+ editjob.${SEQPREFIX}spectoken.focus();
+ return;
+ }
+ ${SEQPREFIX}SpecOp("${SEQPREFIX}accessop","Add",anchorvalue);
+ }
+
+ function ${SEQPREFIX}SpecAddToMetadata(anchorvalue)
+ {
+ if (editjob.${SEQPREFIX}metadataaddon.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.SelectAFolderFirst'))");
+ editjob.${SEQPREFIX}metadataaddon.focus();
+ return;
+ }
+ ${SEQPREFIX}SpecOp("${SEQPREFIX}metadataop","AddToPath",anchorvalue);
+ }
+
+ function ${SEQPREFIX}SpecSetWorkspace(anchorvalue)
+ {
+ if (editjob.${SEQPREFIX}metadataaddon.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.SelectAWorkspaceFirst'))");
+ editjob.${SEQPREFIX}metadataaddon.focus();
+ return;
+ }
+ ${SEQPREFIX}SpecOp("${SEQPREFIX}metadataop","SetWorkspace",anchorvalue);
+ }
+
+ function ${SEQPREFIX}SpecAddCategory(anchorvalue)
+ {
+ if (editjob.${SEQPREFIX}categoryaddon.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.SelectACategoryFirst'))");
+ editjob.${SEQPREFIX}categoryaddon.focus();
+ return;
+ }
+ ${SEQPREFIX}SpecOp("${SEQPREFIX}metadataop","AddCategory",anchorvalue);
+ }
+
+ function ${SEQPREFIX}SpecAddMetadata(anchorvalue)
+ {
+ if (editjob.${SEQPREFIX}attributeselect.value == "" &&
editjob.${SEQPREFIX}attributeall.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.SelectAtLeastOneAttributeFirst'))");
+ editjob.${SEQPREFIX}attributeselect.focus();
+ return;
+ }
+ ${SEQPREFIX}SpecOp("${SEQPREFIX}metadataop","Add",anchorvalue);
+ }
+
+ function ${SEQPREFIX}SpecAddMapping(anchorvalue)
+ {
+ if (editjob.${SEQPREFIX}specmatch.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.MatchStringCannotBeEmpty'))");
+ editjob.${SEQPREFIX}specmatch.focus();
+ return;
+ }
+ if (!isRegularExpression(editjob.${SEQPREFIX}specmatch.value))
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.MatchStringMustBeValidRegularExpression'))");
+ editjob.${SEQPREFIX}specmatch.focus();
+ return;
+ }
+ ${SEQPREFIX}SpecOp("${SEQPREFIX}specmappingop","Add",anchorvalue);
+ }
+ //-->
+</script>
\ No newline at end of file
Added:
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Repo_Body.html
URL:
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Repo_Body.html?rev=1663458&view=auto
==============================================================================
---
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Repo_Body.html
(added)
+++
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Repo_Body.html
Mon Mar 2 22:54:44 2015
@@ -0,0 +1,303 @@
+<!DOCTYPE html>
+<!--
+Copyright 2014 The Apache Software Foundation.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+<input name="serverconfigop" type="hidden" value="Continue"/>
+#if(!(! $serverHTTPSKeystore) && ("$!serverHTTPSKeystore" == ""))
+<input type="hidden" name="serverhttpskeystoredata"
value="$Encoder.attributeEscape($serverHTTPSKeystore)"/>
+#end
+#if($TabName == $ResourceBundle.getString('LivelinkConnector.Server'))
+<table class="displaytable">
+ <tr><td class="separator" colspan="2"><hr/></td></tr>
+ <tr>
+ <td
class="description">$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.ServerProtocol'))</td>
+ <td class="value">
+ <select name="serverprotocol" size="2">
+ <option value="internal" #if($serverProtocol == 'internal')
selected="selected" #{else} "" #end
>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.internal'))</option>
+ <option value="http" #if($serverProtocol == 'http')
selected="selected" #{else} "" #end >http</option>
+ <option value="https" #if($serverProtocol == 'https')
selected="selected" #{else} "" #end >https</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.ServerName'))</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="64" name="servername"
value="$Encoder.attributeEscape($serverName)"/>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.ServerPort'))</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="5" name="serverport" value="$serverPort"/>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.ServerUserName'))</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="32" name="serverusername"
value="$Encoder.attributeEscape($serverUserName)"/>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.ServerPassword'))</nobr>
+ </td>
+ <td class="value">
+ <input type="password" size="32" name="serverpassword"
value="$Encoder.attributeEscape($serverPassword)"/>
+ </td>
+ </tr>
+ <tr><td class="separator" colspan="2"><hr/></td></tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.ServerHTTPCGIPath'))</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="32" name="serverhttpcgipath"
value="$Encoder.attributeEscape($serverHTTPCgiPath)"/>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.ServerHTTPNTLMDomain'))</nobr>
+ <br/>
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.SetIfNTLMAuthDesired'))</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="32" name="serverhttpntlmdomain"
value="$Encoder.attributeEscape($serverHTTPNTLMDomain)"/>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.ServerHTTPNTLMUserName'))</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="32" name="serverhttpntlmusername"
value="$Encoder.attributeEscape($serverHTTPNTLMUserName)"/>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.ServerHTTPNTLMPassword'))</nobr>
+ </td>
+ <td class="value">
+ <input type="password" size="32" name="serverhttpntlmpassword"
value="$Encoder.attributeEscape($serverHTTPNTLMPassword)"/>
+ </td>
+ </tr>
+ <tr><td class="separator" colspan="2"><hr/></td></tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.ServerSSLCertificateList'))</nobr>
+ </td>
+ <td class="value">
+ <input type="hidden" name="serverkeystorealias" value=""/>
+ <table class="displaytable">
+ #if($hasServerCertificates)
+ #foreach($cert in $serverCertificatesMap.entrySet())
+ <tr>
+ <td class="value">
+ <input type="button"
onclick='Javascript:ServerDeleteCertificate($Encoder.attributeJavascriptEscape($cert.Key))'
+
alt="$Encoder.attributeEscape($ResourceBundle.getString('LivelinkConnector.DeleteCert'))
+ $Encoder.attributeEscape($cert.Key)"
+
value="$Encoder.attributeEscape($ResourceBundle.getString('LivelinkConnector.Delete'))"/>
+ <td>$Encoder.bodyEscape($cert.Value)</td>
+ </td>
+ </tr>
+ #end
+ #else
+ <tr>
+ <td class="message" colspan="2">
+
<nobr>$ResourceBundle.getString('LivelinkConnector.NoCertificatesPresent')</nobr>
+ </td>
+ </tr>
+ #end
+ </table>
+ <input type="button" onclick='Javascript:ServerAddCertificate()'
alt="$Encoder.attributeEscape($ResourceBundle.getString('LivelinkConnector.AddCert'))"
+
value="$Encoder.attributeEscape($ResourceBundle.getString('LivelinkConnector.Add'))"/>
+
$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.Certificate'))
+ <input name="servercertificate" size="50" type="file"/>
+ </td>
+ </tr>
+</table>
+#else
+<input type="hidden" name="serverprotocol" value="$!serverProtocol"/>
+<input type="hidden" name="servername"
value="$Encoder.attributeEscape($!serverName)"/>
+<input type="hidden" name="serverport" value="$!serverPort"/>
+<input type="hidden" name="serverusername"
value="$Encoder.attributeEscape($!serverUserName)"/>
+<input type="hidden" name="serverpassword"
value="$Encoder.attributeEscape($!serverPassword)"/>
+<input type="hidden" name="serverhttpcgipath"
value="$Encoder.attributeEscape($!serverHTTPCgiPath)"/>
+<input type="hidden" name="serverhttpntlmdomain"
value="$Encoder.attributeEscape($!serverHTTPNTLMDomain)"/>
+<input type="hidden" name="serverhttpntlmusername"
value="$Encoder.attributeEscape($!serverHTTPNTLMUserName)"/>
+<input type="hidden" name="serverhttpntlmpassword"
value="$Encoder.attributeEscape($!serverHTTPNTLMPassword)"/>
+#end
+<input name="ingestconfigop" type="hidden" value="Continue"/>
+#if(!(! $ingestKeystore) && ("$!ingestKeystore" == ""))
+<input type="hidden" name="ingestkeystoredata"
value="$Encoder.attributeEscape($ingestKeystore)"/>
+#end
+#if($TabName == $ResourceBundle.getString('LivelinkConnector.DocumentAccess'))
+<table class="displaytable">
+ <tr><td class="separator" colspan="2"><hr/></td></tr>
+ <tr>
+ <td
class="description">$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.DocumentFetchProtocol'))</td>
+ <td class="value">
+ <select name="ingestprotocol" size="3">
+ <option value="" #if($ingestProtocol == '') selected="selected"
#{else} "" #end
>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.UseLAPI'))</option>
+ <option value="http" #if($ingestProtocol == 'http')
selected="selected" #{else} "" #end >http</option>
+ <option value="https" #if($ingestProtocol == 'https')
selected="selected" #{else} "" #end >https</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.DocumentFetchPort'))</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="5" name="ingestport" value="$!ingestPort"/>
+ </td>
+ </tr>
+ <tr><td class="separator" colspan="2"><hr/></td></tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.DocumentFetchCGIPath'))</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="32" name="ingestcgipath"
value="$Encoder.attributeEscape($!ingestCgiPath)"/>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.DocumentFetchNTLMDomain'))</nobr>
+ <br/>
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.SetIfNTLMAuthDesired'))</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="32" name="ingestntlmdomain"
value="$Encoder.attributeEscape($!ingestNtlmDomain)"/>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.DocumentFetchNTLMUserName'))</nobr>
+ <br/>
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.SetIfDifferentFromServerUserName'))</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="32" name="ingestntlmusername"
value="$Encoder.attributeEscape($!ingestNtlmUsername)"/>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.DocumentFetchNTLMPassword'))</nobr>
+ <br/>
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.SetIfDifferentFromServerPassword'))</nobr>
+ </td>
+ <td class="value">
+ <input type="password" size="32" name="ingestntlmpassword"
value="$Encoder.attributeEscape($!ingestNtlmPassword)"/>
+ </td>
+ </tr>
+ <tr><td class="separator" colspan="2"><hr/></td></tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.DocumentFetchSSLCertificateList'))</nobr>
+ </td>
+ <td class="value">
+ <input type="hidden" name="ingestkeystorealias" value=""/>
+ <table class="displaytable">
+ #if($hasIngestCertificates)
+ #foreach($cert in $ingestCertificatesMap.entrySet())
+ <tr>
+ <td class="value">
+ <input type="button"
onclick='Javascript:IngestDeleteCertificate($Encoder.attributeJavascriptEscape($cert.Key))'
+
alt="$Encoder.attributeEscape($ResourceBundle.getString('LivelinkConnector.DeleteCert'))
+ $Encoder.attributeEscape($cert.Key)"
+
value="$Encoder.attributeEscape($ResourceBundle.getString('LivelinkConnector.Delete'))"/>
+ <td>$Encoder.bodyEscape($cert.Value)</td>
+ </td>
+ </tr>
+ #end
+ #else
+ <tr>
+ <td class="message" colspan="2">
+
<nobr>$ResourceBundle.getString('LivelinkConnector.NoCertificatesPresent')</nobr>
+ </td>
+ </tr>
+ #end
+ </table>
+ <input type="button" onclick='Javascript:IngestAddCertificate()'
alt="$Encoder.attributeEscape($ResourceBundle.getString('LivelinkConnector.AddCert'))"
+
value="$Encoder.attributeEscape($ResourceBundle.getString('LivelinkConnector.Add'))"/>
+
$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.Certificate'))
+ <input name="ingestcertificate" size="50" type="file"/>
+ </td>
+ </tr>
+</table>
+#else
+<input type="hidden" name="ingestprotocol" value="$!ingestProtocol"/>
+<input type="hidden" name="ingestport" value="$!ingestPort"/>
+<input type="hidden" name="ingestcgipath"
value="$Encoder.attributeEscape($!ingestCgiPath)"/>
+<input type="hidden" name="ingestntlmusername"
value="$Encoder.attributeEscape($!ingestNtlmUsername)"/>
+<input type="hidden" name="ingestntlmpassword"
value="$Encoder.attributeEscape($!ingestNtlmPassword)"/>
+<input type="hidden" name="ingestntlmdomain"
value="$Encoder.attributeEscape($!ingestNtlmDomain)"/>
+#end
+
+#if($TabName == $ResourceBundle.getString('LivelinkConnector.DocumentView'))
+<table class="displaytable">
+ <tr><td class="separator" colspan="2"><hr/></td></tr>
+ <tr>
+ <td
class="description">$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.DocumentViewProtocol'))</td>
+ <td class="value">
+ <select name="viewprotocol" size="3">
+ <option value="" #if($viewProtocol == '') selected="selected" #{else}
"" #end
>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.SameAsFetchProtocol'))</option>
+ <option value="http" #if($viewProtocol == 'http')
selected="selected" #{else} "" #end >http</option>
+ <option value="https" #if($viewProtocol == 'https')
selected="selected" #{else} "" #end >https</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.DocumentViewServerName'))</nobr>
+ <br/>
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.BlankSameAsFetchServer'))</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="64" name="viewservername"
value="$Encoder.attributeEscape($!viewServerName)"/>
+ </td>
+ </tr>
+ <tr><td class="separator" colspan="2"><hr/></td></tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.DocumentViewPort'))</nobr>
+ <br/>
+ <nobr>(blank = same as fetch port)</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="5" name="viewport" value="$!viewPort"/>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.DocumentViewCGIPath'))</nobr>
+ <br/>
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.BlankSameAsFetchServer'))</nobr>
+ </td>
+ <td class="value">
+ <input type="text" size="32" name="viewcgipath"
value="$Encoder.attributeEscape($!viewCgiPath)"/>
+ </td>
+ </tr>
+</table>
+#else
+<input type="hidden" name="viewprotocol" value="$!viewProtocol"/>
+<input type="hidden" name="viewservername" value="$!viewServerName"/>
+<input type="hidden" name="viewport" value="$!viewPort"/>
+<input type="hidden" name="viewcgipath"
value="$Encoder.attributeEscape($!viewCgiPath)"/>
+#end
\ No newline at end of file
Added:
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Repo_Header.js
URL:
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Repo_Header.js?rev=1663458&view=auto
==============================================================================
---
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Repo_Header.js
(added)
+++
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/editConfiguration_Repo_Header.js
Mon Mar 2 22:54:44 2015
@@ -0,0 +1,130 @@
+<script type="text/javascript">
+ <!--
+ function ServerDeleteCertificate(aliasName)
+ {
+ editconnection.serverkeystorealias.value = aliasName;
+ editconnection.serverconfigop.value = "Delete";
+ postForm();
+ }
+
+ function ServerAddCertificate()
+ {
+ if (editconnection.servercertificate.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.ChooseACertificateFile'))");
+ editconnection.servercertificate.focus();
+ }
+ else
+ {
+ editconnection.serverconfigop.value = "Add";
+ postForm();
+ }
+ }
+
+ function IngestDeleteCertificate(aliasName)
+ {
+ editconnection.ingestkeystorealias.value = aliasName;
+ editconnection.ingestconfigop.value = "Delete";
+ postForm();
+ }
+
+ function IngestAddCertificate()
+ {
+ if (editconnection.ingestcertificate.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.ChooseACertificateFile'))");
+ editconnection.ingestcertificate.focus();
+ }
+ else
+ {
+ editconnection.ingestconfigop.value = "Add";
+ postForm();
+ }
+ }
+
+ function checkConfig()
+ {
+ if (editconnection.serverport.value != "" &&
!isInteger(editconnection.serverport.value))
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.AValidNumberIsRequired'))");
+ editconnection.serverport.focus();
+ return false;
+ }
+ if (editconnection.ingestport.value != "" &&
!isInteger(editconnection.ingestport.value))
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.AValidNumberOrBlankIsRequired'))");
+ editconnection.ingestport.focus();
+ return false;
+ }
+ if (editconnection.viewport.value != "" &&
!isInteger(editconnection.viewport.value))
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.AValidNumberOrBlankIsRequired'))");
+ editconnection.viewport.focus();
+ return false;
+ }
+ return true;
+ }
+
+ function checkConfigForSave()
+ {
+ if (editconnection.servername.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.EnterALivelinkServerName'))");
+
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.Server'))");
+ editconnection.servername.focus();
+ return false;
+ }
+ if (editconnection.serverport.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.AServerPortNumberIsRequired'))");
+
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.Server'))");
+ editconnection.serverport.focus();
+ return false;
+ }
+ if (editconnection.serverhttpcgipath.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.EnterTheServerCgiPathToLivelink'))");
+
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.Server'))");
+ editconnection.serverhttpcgipath.focus();
+ return false;
+ }
+ if (editconnection.serverhttpcgipath.value.substring(0,1) != "/")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.TheServerCgiPathMustBeginWithACharacter'))");
+
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.Server'))");
+ editconnection.serverhttpcgipath.focus();
+ return false;
+ }
+ if (editconnection.viewprotocol.value == "" &&
editconnection.ingestprotocol.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.SelectAViewProtocol'))");
+
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.DocumentView'))");
+ editconnection.viewprotocol.focus();
+ return false;
+ }
+ if (editconnection.viewcgipath.value == "" &&
editconnection.ingestcgipath.value == "")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.EnterTheViewCgiPathToLivelink'))");
+
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.DocumentView'))");
+ editconnection.viewcgipath.focus();
+ return false;
+ }
+ if (editconnection.ingestcgipath.value != "" &&
editconnection.ingestcgipath.value.substring(0,1) != "/")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.TheIngestCgiPathMustBeBlankOrBeginWithACharacter'))");
+
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.DocumentAccess'))");
+ editconnection.ingestcgipath.focus();
+ return false;
+ }
+ if (editconnection.viewcgipath.value != "" &&
editconnection.viewcgipath.value.substring(0,1) != "/")
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.TheViewCgiPathMustBeBlankOrBeginWithACharacter'))");
+
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('LivelinkConnector.DocumentView'))");
+ editconnection.viewcgipath.focus();
+ return false;
+ }
+ return true;
+ }
+
+ //-->
+</script>
\ No newline at end of file
Added:
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/viewConfiguration_Job.html
URL:
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/viewConfiguration_Job.html?rev=1663458&view=auto
==============================================================================
---
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/viewConfiguration_Job.html
(added)
+++
manifoldcf/branches/CONNECTORS-1160/connectors/livelink/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/livelink/viewConfiguration_Job.html
Mon Mar 2 22:54:44 2015
@@ -0,0 +1,185 @@
+<!DOCTYPE html>
+<!--
+Copyright 2014 The Apache Software Foundation.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<table class="displaytable">
+ <tr>
+ <td class="description"/>
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.CrawlUserWorkspaces'))</nobr>
+ </td>
+ <td class="value"/>
+
#if($userWorkspaces)$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.Yes'))#{else}$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.No'))#end
+ </td>
+ </tr>
+ <tr>
+ <td class="separator" colspan="2">
+ <hr/>
+ </td>
+ </tr>
+ <tr>
+ #if($hasPath)
+ <td
class="description">$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.Roots'))</td>
+ <td class="value">
+ #foreach($path in $paths)
+ $path
+ <br/>
+ #end
+ </td>
+ #else
+ <td class="message" colspan="2">
+
$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.NoStartPointsSpecified'))
+ </td>
+ #end
+ </tr>
+ <tr>
+ <td class="separator" colspan="2">
+ <hr/>
+ </td>
+ </tr>
+ <tr>
+ #if($hasFileSpecs)
+ <td
class="description">$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.FileSpecs'))</td>
+ <td class="value">
+ #foreach($fileSpec in $fileSpecs)
+ $fileSpec
+ <br/>
+ #end
+ </td>
+ #else
+ <td class="message" colspan="2">
+
$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.NoFileSpecsSpecified'))
+ </td>
+ #end
+ </tr>
+ <tr>
+ <td class="separator" colspan="2">
+ <hr/>
+ </td>
+ </tr>
+ <tr>
+ <td
class="description">$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.SecurityColon'))</td>
+ <td class="value">
+
#if($securityOn)$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.Enabled2'))#{else}$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.Disabled'))#end
+ </td>
+ </tr>
+ <tr>
+ <td class="separator" colspan="2">
+ <hr/>
+ </td>
+ </tr>
+ <tr>
+ #if($hasAccessTokens)
+ <td
class="description">$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.AccessTokens'))</td>
+ <td class="value">
+ #foreach($accessToken in $accessTokens)
+ $accessToken
+ <br/>
+ #end
+ </td>
+ #else
+ <td class="message" colspan="2">
+
$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.NoAccessTokensSpecified'))
+ </td>
+ #end
+ </tr>
+ <tr>
+ <td class="separator" colspan="2">
+ <hr/>
+ </td>
+ </tr>
+ <tr>
+ <td class="description">
+
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.MetadataSpecification'))</nobr>
+ </td>
+ <td class="value">
+ <nobr>
+ #if($allMetadata)
+
$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.AllDocumentMetadataWillBeIngested'))
+ #else
+
$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.OnlySpecifiedMetadataWillBeIngested'))
+ #end
+ </nobr>
+ </td>
+ </tr>
+ <tr>
+ <td class="separator" colspan="2">
+ <hr/>
+ </td>
+ </tr>
+ <tr>
+ #if($hasMetadata)
+ <td
class="description">$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.SpecificMetadata'))</td>
+ <td class="value">
+ #foreach($metadatum in $metadata)
+ $Encoder.bodyEscape($metadatum)
+ <br/>
+ #end
+ </td>
+ #else
+ <td class="message" colspan="2">
+
$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.NoMetadataSpecified'))
+ </td>
+ #end
+ </tr>
+ <tr>
+ <td class="separator" colspan="2">
+ <hr/>
+ </td>
+ </tr>
+ #if($hasPathNameAttribute)
+ <tr>
+ <td class="description">
+
$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.PathNameMetadataAttribute'))
+ </td>
+ <td class="value">$Encoder.bodyEscape($pathNameAttribute)</td>
+ </tr>
+ <tr>
+ <td
class="description">$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.PathSeparatorString'))</td>
+ <td class="value">$Encoder.bodyEscape($pathSeparator)</td>
+ </tr>
+ #else
+ <tr>
+ <td class="message" colspan="2">
+
$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.NoPathNameMetadataAttributeSpecified'))
+ </td>
+ </tr>
+ #end
+ <tr>
+ <td class="separator" colspan="2">
+ <hr/>
+ </td>
+ </tr>
+ <tr>
+ #if($hasPathValueMapping)
+ <td
class="description">$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.PathValueMapping'))</td>
+ <td class="value">
+ <table class="displaytable">
+ #foreach($entry in $matchReplaceMap.entrySet())
+ <tr>
+ <td colspan="2">$Encoder.bodyEscape($entry.Key)</td>
+ <td colspan="1">--</td>
+ <td colspan="2">$Encoder.bodyEscape($entry.Value)</td>
+ </tr>
+ #end
+ </table>
+ </td>
+ #else
+ <td class="message" colspan="2">
+
$Encoder.bodyEscape($ResourceBundle.getString('LivelinkConnector.NoMappingsSpecified'))
+ </td>
+ #end
+ </tr>
+</table>