Modified: manifoldcf/branches/CONNECTORS-1196/framework/crawler-ui/src/main/webapp/viewjob.jsp URL: http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1196/framework/crawler-ui/src/main/webapp/viewjob.jsp?rev=1684303&r1=1684302&r2=1684303&view=diff ============================================================================== --- manifoldcf/branches/CONNECTORS-1196/framework/crawler-ui/src/main/webapp/viewjob.jsp (original) +++ manifoldcf/branches/CONNECTORS-1196/framework/crawler-ui/src/main/webapp/viewjob.jsp Tue Jun 9 01:30:36 2015 @@ -2,809 +2,772 @@ <% -/* $Id$ */ + /* $Id$ */ /** -* Licensed to the Apache Software Foundation (ASF) under one or more -* contributor license agreements. See the NOTICE file distributed with -* this work for additional information regarding copyright ownership. -* The ASF licenses this file to You 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. -*/ -%> - -<?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE html> -<meta http-equiv="X-UA-Compatible" content="IE=edge"/> - -<html xmlns="http://www.w3.org/1999/xhtml"> -<head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - <link rel="StyleSheet" href="style.css" type="text/css" media="screen"/> - <title> - <%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.ApacheManifoldCFViewJob")%> - </title> - - <script type="text/javascript"> - <!-- - - function Delete(jobID) - { - if (confirm("<%=Messages.getBodyJavascriptString(pageContext.getRequest().getLocale(),"viewjob.DeleteJobConfirmation")%>")) - { - document.viewjob.op.value="Delete"; - document.viewjob.jobid.value=jobID; - document.viewjob.submit(); - } - } - - function StartOver(jobID) - { - if (confirm("<%=Messages.getBodyJavascriptString(pageContext.getRequest().getLocale(),"viewjob.StartOverConfirmation")%>")) - { - document.viewjob.op.value="StartOver"; - document.viewjob.jobid.value=jobID; - document.viewjob.submit(); - } - } - - //--> - </script> - -</head> - -<body class="standardbody"> - - <table class="page"> - <tr><td colspan="2" class="banner"><jsp:include page="banner.jsp" flush="true"/></td></tr> - <tr><td class="navigation"><jsp:include page="navigation.jsp" flush="true"/></td> - <td class="window"> - <p class="windowtitle"><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.ViewAJob")%></p> - - <form class="standardform" name="viewjob" action="execute.jsp" method="POST"> - <input type="hidden" name="op" value="Continue"/> - <input type="hidden" name="type" value="job"/> - <input type="hidden" name="jobid" value=""/> - -<% - try - { - // Get the job manager handle - IJobManager manager = JobManagerFactory.make(threadContext); - IOutputConnectionManager outputManager = OutputConnectionManagerFactory.make(threadContext); - IRepositoryConnectionManager connManager = RepositoryConnectionManagerFactory.make(threadContext); - INotificationConnectionManager notificationManager = NotificationConnectionManagerFactory.make(threadContext); - ITransformationConnectionManager transformationManager = TransformationConnectionManagerFactory.make(threadContext); - - IOutputConnectorPool outputConnectorPool = OutputConnectorPoolFactory.make(threadContext); - IRepositoryConnectorPool repositoryConnectorPool = RepositoryConnectorPoolFactory.make(threadContext); - INotificationConnectorPool notificationConnectorPool = NotificationConnectorPoolFactory.make(threadContext); - ITransformationConnectorPool transformationConnectorPool = TransformationConnectorPoolFactory.make(threadContext); - - String jobID = variableContext.getParameter("jobid"); - IJobDescription job = manager.load(new Long(jobID)); - if (job == null) - { - throw new ManifoldCFException("No such job: "+jobID); - } - else - { - String naMessage = Messages.getString(pageContext.getRequest().getLocale(),"viewjob.Notapplicable"); - String jobType = ""; - String intervalString = naMessage; - String maxIntervalString = naMessage; - String reseedIntervalString = naMessage; - String expirationIntervalString = naMessage; - - switch (job.getType()) - { - case IJobDescription.TYPE_CONTINUOUS: - String infinityMessage = Messages.getString(pageContext.getRequest().getLocale(),"viewjob.Infinity"); - String minutesMessage = Messages.getString(pageContext.getRequest().getLocale(),"viewjob.minutes"); - jobType = Messages.getString(pageContext.getRequest().getLocale(),"viewjob.Rescandocumentsdynamically"); - Long recrawlInterval = job.getInterval(); - Long maxRecrawlInterval = job.getMaxInterval(); - Long reseedInterval = job.getReseedInterval(); - Long expirationInterval = job.getExpiration(); - intervalString = (recrawlInterval==null)?infinityMessage:(new Long(recrawlInterval.longValue()/60000L).toString()+" "+minutesMessage); - maxIntervalString = (maxRecrawlInterval==null)?infinityMessage:(new Long(maxRecrawlInterval.longValue()/60000L).toString()+" "+minutesMessage); - reseedIntervalString = (reseedInterval==null)?infinityMessage:(new Long(reseedInterval.longValue()/60000L).toString()+" "+minutesMessage); - expirationIntervalString = (expirationInterval==null)?infinityMessage:(new Long(expirationInterval.longValue()/60000L).toString()+" "+minutesMessage); - break; - case IJobDescription.TYPE_SPECIFIED: - jobType = Messages.getString(pageContext.getRequest().getLocale(),"viewjob.Scaneverydocumentonce"); - break; - default: - } - - String startMethod = ""; - switch (job.getStartMethod()) - { - case IJobDescription.START_WINDOWBEGIN: - startMethod = Messages.getString(pageContext.getRequest().getLocale(),"viewjob.Startatbeginningofschedulewindow"); - break; - case IJobDescription.START_WINDOWINSIDE: - startMethod = Messages.getString(pageContext.getRequest().getLocale(),"viewjob.Startinsideschedulewindow"); - break; - case IJobDescription.START_DISABLE: - startMethod = Messages.getString(pageContext.getRequest().getLocale(),"viewjob.Dontautomaticallystart"); - break; - default: - break; - } - - int priority = job.getPriority(); - - String connectionName = job.getConnectionName(); - IRepositoryConnection connection = connManager.load(connectionName); - - int model = RepositoryConnectorFactory.getConnectorModel(threadContext,connection.getClassName()); - String[] relationshipTypes = RepositoryConnectorFactory.getRelationshipTypes(threadContext,connection.getClassName()); - Map hopCountFilters = job.getHopCountFilters(); - int hopcountMode = job.getHopcountMode(); - - //threadContext.save("OutputSpecification",job.getOutputSpecification()); - //threadContext.save("OutputConnection",outputConnection); - //threadContext.save("DocumentSpecification",job.getSpecification()); - //threadContext.save("RepositoryConnection",connection); - int rowCounter = 0; - -%> - <table class="displaytable"> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="description" colspan="1"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.NameColon")%></nobr></td> - <td class="value" colspan="3" ><%="<!--jobid="+jobID+"-->"%><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(job.getDescription())%></td> - </tr> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="description" colspan="1"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.PipelineColon")%></nobr></td> - <td class="boxcell" colspan="3"> - <table class="formtable"> - <tr class="formheaderrow"> - <td class="formcolumnheader"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.StageNumber")%></nobr></td> - <td class="formcolumnheader"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.StageType")%></nobr></td> - <td class="formcolumnheader"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.StagePrecedent")%></nobr></td> - <td class="formcolumnheader"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.StageDescription")%></nobr></td> - <td class="formcolumnheader"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.StageConnectionName")%></nobr></td> - </tr> - <tr class="<%=((rowCounter++ % 2)==0)?"evenformrow":"oddformrow"%>"> - <td class="formcolumncell">1.</td> - <td class="formcolumncell"><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Repository")%></td> - <td class="formcolumncell"></td> - <td class="formcolumncell"></td> - <td class="formcolumncell"><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(connectionName)%></td> - </tr> -<% - for (int j = 0; j < job.countPipelineStages(); j++) - { -%> - <tr class="<%=((rowCounter++ % 2)==0)?"evenformrow":"oddformrow"%>"> - <td class="formcolumncell"><%=(j+2)%>.</td> - <td class="formcolumncell"><%=job.getPipelineStageIsOutputConnection(j)?Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Output"):Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Transformation")%></td> - <td class="formcolumncell"><%=(job.getPipelineStagePrerequisite(j)+2)%>.</td> - <td class="formcolumncell"><%=(job.getPipelineStageDescription(j)!=null)?org.apache.manifoldcf.ui.util.Encoder.bodyEscape(job.getPipelineStageDescription(j)):""%></td> - <td class="formcolumncell"><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(job.getPipelineStageConnectionName(j))%></td> - </tr> -<% - } -%> - </table> - </td> - </tr> - <tr> - <td class="description" colspan="1"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.NotificationsColon")%></nobr></td> - <td class="boxcell" colspan="3"> - <table class="formtable"> - <tr class="formheaderrow"> - <td class="formcolumnheader"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.StageNumber")%></nobr></td> - <td class="formcolumnheader"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.NotificationDescription")%></nobr></td> - <td class="formcolumnheader"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.NotificationConnectionName")%></nobr></td> - </tr> -<% - for (int j = 0; j < job.countNotifications(); j++) - { -%> - <tr class="<%=((rowCounter++ % 2)==0)?"evenformrow":"oddformrow"%>"> - <td class="formcolumncell"><%=(j+job.countPipelineStages()+2)%>.</td> - <td class="formcolumncell"><%=(job.getNotificationDescription(j)!=null)?org.apache.manifoldcf.ui.util.Encoder.bodyEscape(job.getNotificationDescription(j)):""%></td> - <td class="formcolumncell"><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(job.getNotificationConnectionName(j))%></td> - </tr> -<% - } - if (job.countNotifications() == 0) - { -%> - <tr class="formrow"><td class="formcolumnmessage" colspan="3"><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.NoNotificationConnections")%></td></tr> -<% - } -%> - </table> - </td> - </tr> - - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="description"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.PriorityColon")%></nobr></td> - <td class="value"><%=priority%></td> - <td class="description"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.StartMethodColon")%></nobr></td> - <td class="value"><%=startMethod%></td> - </tr> -<% - if (model != -1 && model != IRepositoryConnector.MODEL_ADD_CHANGE_DELETE) - { -%> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="description"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.ScheduleTypeColon")%></nobr></td> - <td class="value" colspan="3"><nobr><%=jobType%></nobr></td> - </tr> - <tr> - <td class="description"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.MinimumRecrawlIntervalColon")%></nobr></td> - <td class="value"><nobr><%=intervalString%></nobr></td> - <td class="description"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.MaximumRecrawlIntervalColon")%></nobr></td> - <td class="value"><nobr><%=maxIntervalString%></nobr></td> - </tr> - <tr> - <td class="description"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.ExpirationIntervalColon")%></nobr></td> - <td class="value"><nobr><%=expirationIntervalString%></nobr></td> - <td class="description"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.ReseedIntervalColon")%></nobr></td> - <td class="value"><nobr><%=reseedIntervalString%></nobr></td> - </tr> -<% - } -%> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - -<% - if (job.getScheduleRecordCount() == 0) - { -%> - <tr><td class="message" colspan="4"><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.NoScheduledRunTimes")%></td></tr> -<% - } - else - { - // Loop through the schedule records - int j = 0; - while (j < job.getScheduleRecordCount()) - { - ScheduleRecord sr = job.getScheduleRecord(j); - Long srDuration = sr.getDuration(); - boolean srRequestMinimum = sr.getRequestMinimum(); - EnumeratedValues srDayOfWeek = sr.getDayOfWeek(); - EnumeratedValues srMonthOfYear = sr.getMonthOfYear(); - EnumeratedValues srDayOfMonth = sr.getDayOfMonth(); - EnumeratedValues srYear = sr.getYear(); - EnumeratedValues srHourOfDay = sr.getHourOfDay(); - EnumeratedValues srMinutesOfHour = sr.getMinutesOfHour(); - - if (j > 0) - { -%> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> -<% - } -%> - <tr> - <td class="description"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.ScheduledTimeColon")%></nobr></td> - <td class="value" colspan="3"> -<% - if (srDayOfWeek == null) - out.println(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Anydayoftheweek")); - else - { - StringBuffer sb = new StringBuffer(); - boolean firstTime = true; - if (srDayOfWeek.checkValue(0)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Sundays")); - } - if (srDayOfWeek.checkValue(1)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Mondays")); - } - if (srDayOfWeek.checkValue(2)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Tuesdays")); - } - if (srDayOfWeek.checkValue(3)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Wednesdays")); - } - if (srDayOfWeek.checkValue(4)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Thursdays")); - } - if (srDayOfWeek.checkValue(5)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Fridays")); - } - if (srDayOfWeek.checkValue(6)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Saturdays")); - } - out.println(sb.toString()); - } -%> -<% - if (srHourOfDay == null) - { - if (srMinutesOfHour != null) - out.println(" "+Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.oneveryhour")+" "); - else - out.println(" "+Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.atmidnight")+" "); - } - else - { - out.println(" "+Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.at")+" "); - int k = 0; - while (k < 24) - { - int q = k; - String ampm; - if (k < 12) - ampm = Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.am"); - else - { - ampm = Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.pm"); - q -= 12; - } - String hour; - if (q == 0) - q = 12; - if (srHourOfDay.checkValue(k)) - out.println(Integer.toString(q)+" "+ampm+" "); - k++; - } - } -%> -<% - if (srMinutesOfHour != null) - { - out.println(" "+Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.plus")+" "); - int k = 0; - while (k < 60) - { - if (srMinutesOfHour.checkValue(k)) - out.println(Integer.toString(k)+" "); - k++; - } - out.println(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.minutes")+" "); - } -%> -<% - if (srMonthOfYear == null) - { - if (srDayOfMonth == null && srDayOfWeek == null && srHourOfDay == null && srMinutesOfHour == null) - out.println(" "+Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.ineverymonthofyear")); - } - else - { - StringBuffer sb = new StringBuffer(" "+Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.in")+" "); - boolean firstTime = true; - if (srMonthOfYear.checkValue(0)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.January")); - } - if (srMonthOfYear.checkValue(1)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.February")); - } - if (srMonthOfYear.checkValue(2)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.March")); - } - if (srMonthOfYear.checkValue(3)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.April")); - } - if (srMonthOfYear.checkValue(4)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.May")); - } - if (srMonthOfYear.checkValue(5)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.June")); - } - if (srMonthOfYear.checkValue(6)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.July")); - } - if (srMonthOfYear.checkValue(7)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.August")); - } - if (srMonthOfYear.checkValue(8)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.September")); - } - if (srMonthOfYear.checkValue(9)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.October")); - } - if (srMonthOfYear.checkValue(10)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.November")); - } - if (srMonthOfYear.checkValue(11)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.December")); - } - out.println(sb.toString()); - } -%> -<% - if (srDayOfMonth == null) - { - if (srDayOfWeek == null && srHourOfDay == null && srMinutesOfHour == null) - out.println(" "+Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.onanydayofthemonth")); - } - else - { - StringBuffer sb = new StringBuffer(" "+Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.onthe")+" "); - int k = 0; - boolean firstTime = true; - while (k < 31) - { - if (srDayOfMonth.checkValue(k)) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - sb.append(Integer.toString(k+1)); - int value = (k+1) % 10; - if (value == 1 && k != 10) - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.st")); - else if (value == 2 && k != 11) - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.nd")); - else if (value == 3 && k != 12) - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.rd")); - else - sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.th")); - } - k++; - } - sb.append(" "+Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.ofthemonth")); - out.println(sb.toString()); - } -%> -<% - if (srYear != null) - { - StringBuffer sb = new StringBuffer(" "+Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.inyears")+" "); - Iterator iter = srYear.getValues(); - boolean firstTime = true; - while (iter.hasNext()) - { - if (firstTime) - firstTime = false; - else - sb.append(","); - Integer value = (Integer)iter.next(); - sb.append(value.toString()); - } - out.println(sb.toString()); - } -%> - </td> - </tr> - <tr> - <td class="description"> - <%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.MaximumRunTimeColon")%> - </td> - <td class="value"> -<% - if (srDuration == null) - out.println(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Nolimit")); - else - out.println(new Long(srDuration.longValue()/60000L).toString() + " "+Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.minutes")); -%> - </td> - <td class="description"> - <%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.JobInvocationColon")%> - </td> - <td class="value"> -<% - if (srRequestMinimum) - out.println(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Minimal")); - else - out.println(Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Complete")); -%> - </td> - </tr> -<% - j++; - } - } - - if (relationshipTypes != null && relationshipTypes.length > 0) - { -%> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> -<% - int k = 0; - while (k < relationshipTypes.length) - { - String relationshipType = relationshipTypes[k++]; - Long value = (Long)hopCountFilters.get(relationshipType); -%> - <tr> - <td class="description" colspan="1"> - <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.MaximumHopCountForLinkType")%> '<%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(relationshipType)%>':</nobr> - </td> - <td class="value" colspan="3"> - <%=((value==null)?Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Unlimited"):value.toString())%> - </td> - </tr> - -<% - } -%> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="description" colspan="1"> - <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.HopCountModeColon")%></nobr> - </td> - <td class="value" colspan="3"> - <nobr> - <%=(hopcountMode==IJobDescription.HOPCOUNT_ACCURATE)?Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Deleteunreachabledocuments"):""%> - <%=(hopcountMode==IJobDescription.HOPCOUNT_NODELETE)?Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Nodeletesfornow"):""%> - <%=(hopcountMode==IJobDescription.HOPCOUNT_NEVERDELETE)?Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Nodeletesforever"):""%> - </nobr> - </td> - </tr> -<% - - } -%> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="message" colspan="4">1.</td> - </tr> - <tr> - <td colspan="4"> -<% - if (connection != null) - { - IRepositoryConnector repositoryConnector = repositoryConnectorPool.grab(connection); - if (repositoryConnector != null) - { - try - { - repositoryConnector.viewSpecification(new org.apache.manifoldcf.ui.jsp.JspWrapper(out,adminprofile),pageContext.getRequest().getLocale(),job.getSpecification(),0); - } - finally - { - repositoryConnectorPool.release(connection,repositoryConnector); - } - } - } -%> - </td> - </tr> -<% - for (int j = 0; j < job.countPipelineStages(); j++) - { -%> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="message" colspan="4"><%=(j+2)%>.</td> - </tr> - <tr> - <td colspan="4"> -<% - Specification os = job.getPipelineStageSpecification(j); - if (job.getPipelineStageIsOutputConnection(j)) - { - IOutputConnection thisConnection = outputManager.load(job.getPipelineStageConnectionName(j)); - IOutputConnector outputConnector = outputConnectorPool.grab(thisConnection); - if (outputConnector != null) - { - try - { - outputConnector.viewSpecification(new org.apache.manifoldcf.ui.jsp.JspWrapper(out,adminprofile),pageContext.getRequest().getLocale(),os,1+j); - } - finally - { - outputConnectorPool.release(thisConnection,outputConnector); - } - } - } - else - { - ITransformationConnection thisConnection = transformationManager.load(job.getPipelineStageConnectionName(j)); - ITransformationConnector transformationConnector = transformationConnectorPool.grab(thisConnection); - if (transformationConnector != null) - { - try - { - transformationConnector.viewSpecification(new org.apache.manifoldcf.ui.jsp.JspWrapper(out,adminprofile),pageContext.getRequest().getLocale(),os,1+j); - } - finally - { - transformationConnectorPool.release(thisConnection,transformationConnector); - } - } - } -%> - </td> - </tr> -<% - } - - for (int j = 0; j < job.countNotifications(); j++) - { -%> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="message" colspan="4"><%=(j+job.countPipelineStages()+2)%>.</td> - </tr> - <tr> - <td colspan="4"> -<% - Specification os = job.getNotificationSpecification(j); - INotificationConnection thisConnection = notificationManager.load(job.getNotificationConnectionName(j)); - INotificationConnector notificationConnector = notificationConnectorPool.grab(thisConnection); - if (notificationConnector != null) - { - try - { - notificationConnector.viewSpecification(new org.apache.manifoldcf.ui.jsp.JspWrapper(out,adminprofile),pageContext.getRequest().getLocale(),os,1+job.countPipelineStages()+j); - } - finally - { - notificationConnectorPool.release(thisConnection,notificationConnector); - } - } -%> - </td> - </tr> -<% - } - -%> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="message" colspan="4"> - <nobr> - <a href='<%="editjob.jsp?jobid="+jobID%>' alt="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewjob.EditThisJob")%>"><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Edit")%></a> - <a href='<%="javascript:Delete(\""+jobID+"\")"%>' alt="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewjob.DeleteThisJob")%>"><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Delete")%></a> - <a href='<%="editjob.jsp?origjobid="+jobID%>' alt="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewjob.CopyThisJob")%>"><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.Copy")%></a> - <a href='<%="javascript:StartOver(\""+jobID+"\")"%>' alt="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewjob.ResetSeedingThisJob")%>"><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewjob.ResetSeeding")%></a> - </nobr> - </td> - </tr> - </table> - -<% - } + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ +%> +<script type="text/javascript"> + <!-- + + $.ManifoldCF.setTitle('<%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.ApacheManifoldCFViewJob")%>', + '<%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.ViewAJob")%>', + 'jobs' + ); + + function Delete(jobID) { + if (confirm("<%=Messages.getBodyJavascriptString(pageContext.getRequest().getLocale(),"viewjob.DeleteJobConfirmation")%>")) { + document.viewjob.op.value = "Delete"; + document.viewjob.jobid.value = jobID; + $.ManifoldCF.submit(document.viewjob); } - catch (ManifoldCFException e) - { - e.printStackTrace(); - variableContext.setParameter("text",e.getMessage()); - variableContext.setParameter("target","listjobs.jsp"); -%> - <jsp:forward page="error.jsp"/> -<% + } + + function StartOver(jobID) { + if (confirm("<%=Messages.getBodyJavascriptString(pageContext.getRequest().getLocale(),"viewjob.StartOverConfirmation")%>")) { + document.viewjob.op.value = "StartOver"; + document.viewjob.jobid.value = jobID; + $.ManifoldCF.submit(document.viewjob); } -%> - </form> - </td> - </tr> - </table> + } -</body> + //--> +</script> -</html> +<div class="row"> + <div class="col-md-12"> + <div class="box box-primary"> + + <form class="standardform" name="viewjob" action="execute.jsp" method="POST"> + <input type="hidden" name="op" value="Continue"/> + <input type="hidden" name="type" value="job"/> + <input type="hidden" name="jobid" value=""/> + + <div class="box-body"> + + <% + try { + // Get the job manager handle + IJobManager manager = JobManagerFactory.make(threadContext); + IOutputConnectionManager outputManager = OutputConnectionManagerFactory.make(threadContext); + IRepositoryConnectionManager connManager = RepositoryConnectionManagerFactory.make(threadContext); + INotificationConnectionManager notificationManager = NotificationConnectionManagerFactory.make(threadContext); + ITransformationConnectionManager transformationManager = TransformationConnectionManagerFactory.make(threadContext); + + IOutputConnectorPool outputConnectorPool = OutputConnectorPoolFactory.make(threadContext); + IRepositoryConnectorPool repositoryConnectorPool = RepositoryConnectorPoolFactory.make(threadContext); + INotificationConnectorPool notificationConnectorPool = NotificationConnectorPoolFactory.make(threadContext); + ITransformationConnectorPool transformationConnectorPool = TransformationConnectorPoolFactory.make(threadContext); + + String jobID = variableContext.getParameter("jobid"); + IJobDescription job = manager.load(new Long(jobID)); + if (job == null) { + throw new ManifoldCFException("No such job: " + jobID); + } else { + String naMessage = Messages.getString(pageContext.getRequest().getLocale(), "viewjob.Notapplicable"); + String jobType = ""; + String intervalString = naMessage; + String maxIntervalString = naMessage; + String reseedIntervalString = naMessage; + String expirationIntervalString = naMessage; + + switch (job.getType()) { + case IJobDescription.TYPE_CONTINUOUS: + String infinityMessage = Messages.getString(pageContext.getRequest().getLocale(), "viewjob.Infinity"); + String minutesMessage = Messages.getString(pageContext.getRequest().getLocale(), "viewjob.minutes"); + jobType = Messages.getString(pageContext.getRequest().getLocale(), "viewjob.Rescandocumentsdynamically"); + Long recrawlInterval = job.getInterval(); + Long maxRecrawlInterval = job.getMaxInterval(); + Long reseedInterval = job.getReseedInterval(); + Long expirationInterval = job.getExpiration(); + intervalString = (recrawlInterval == null) ? infinityMessage : (new Long(recrawlInterval.longValue() / 60000L).toString() + " " + minutesMessage); + maxIntervalString = (maxRecrawlInterval == null) ? infinityMessage : (new Long(maxRecrawlInterval.longValue() / 60000L).toString() + " " + minutesMessage); + reseedIntervalString = (reseedInterval == null) ? infinityMessage : (new Long(reseedInterval.longValue() / 60000L).toString() + " " + minutesMessage); + expirationIntervalString = (expirationInterval == null) ? infinityMessage : (new Long(expirationInterval.longValue() / 60000L).toString() + " " + minutesMessage); + break; + case IJobDescription.TYPE_SPECIFIED: + jobType = Messages.getString(pageContext.getRequest().getLocale(), "viewjob.Scaneverydocumentonce"); + break; + default: + } + + String startMethod = ""; + switch (job.getStartMethod()) { + case IJobDescription.START_WINDOWBEGIN: + startMethod = Messages.getString(pageContext.getRequest().getLocale(), "viewjob.Startatbeginningofschedulewindow"); + break; + case IJobDescription.START_WINDOWINSIDE: + startMethod = Messages.getString(pageContext.getRequest().getLocale(), "viewjob.Startinsideschedulewindow"); + break; + case IJobDescription.START_DISABLE: + startMethod = Messages.getString(pageContext.getRequest().getLocale(), "viewjob.Dontautomaticallystart"); + break; + default: + break; + } + + int priority = job.getPriority(); + + String connectionName = job.getConnectionName(); + IRepositoryConnection connection = connManager.load(connectionName); + + int model = RepositoryConnectorFactory.getConnectorModel(threadContext, connection.getClassName()); + String[] relationshipTypes = RepositoryConnectorFactory.getRelationshipTypes(threadContext, connection.getClassName()); + Map hopCountFilters = job.getHopCountFilters(); + int hopcountMode = job.getHopcountMode(); + + //threadContext.save("OutputSpecification",job.getOutputSpecification()); + //threadContext.save("OutputConnection",outputConnection); + //threadContext.save("DocumentSpecification",job.getSpecification()); + //threadContext.save("RepositoryConnection",connection); + int rowCounter = 0; + + %> + <table class="table table-bordered"> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.NameColon")%> + </nobr> + </th> + <td colspan="3"><%="<!--jobid=" + jobID + "-->"%><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(job.getDescription())%> + </td> + </tr> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.PipelineColon")%> + </nobr> + </th> + <td colspan="3"> + <table class="table table-bordered"> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.StageNumber")%> + </nobr> + </th> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.StageType")%> + </nobr> + </th> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.StagePrecedent")%> + </nobr> + </th> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.StageDescription")%> + </nobr> + </th> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.StageConnectionName")%> + </nobr> + </th> + </tr> + <tr> + <td>1.</td> + <td><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Repository")%> + </td> + <td></td> + <td></td> + <td><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(connectionName)%> + </td> + </tr> + <% + for (int j = 0; j < job.countPipelineStages(); j++) { + %> + <tr> + <td><%=(j + 2)%>.</td> + <td><%=job.getPipelineStageIsOutputConnection(j) ? Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Output") : Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Transformation")%> + </td> + <td><%=(job.getPipelineStagePrerequisite(j) + 2)%>.</td> + <td><%=(job.getPipelineStageDescription(j) != null) ? org.apache.manifoldcf.ui.util.Encoder.bodyEscape(job.getPipelineStageDescription(j)) : ""%> + </td> + <td><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(job.getPipelineStageConnectionName(j))%> + </td> + </tr> + <% + } + %> + </table> + </td> + </tr> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.NotificationsColon")%> + </nobr> + </th> + <td colspan="3"> + <table class="table table-bordered"> + <tr> + <th><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.StageNumber")%> + </th> + <th><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.NotificationDescription")%> + </th> + <th><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.NotificationConnectionName")%> + </th> + </tr> + <% + for (int j = 0; j < job.countNotifications(); j++) { + %> + <tr> + <td><%=(j + job.countPipelineStages() + 2)%>.</td> + <td><%=(job.getNotificationDescription(j) != null) ? org.apache.manifoldcf.ui.util.Encoder.bodyEscape(job.getNotificationDescription(j)) : ""%> + </td> + <td><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(job.getNotificationConnectionName(j))%> + </td> + </tr> + <% + } + if (job.countNotifications() == 0) { + %> + <tr> + <td colspan="3"> + <div class="callout callout-info"> + <%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.NoNotificationConnections")%> + </div> + <% + } +%> + </table> + </td> + </tr> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.PriorityColon")%> + </nobr> + </th> + <td><%=priority%> + </td> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.StartMethodColon")%> + </nobr> + </th> + <td><%=startMethod%> + </td> + </tr> + <% + if (model != -1 && model != IRepositoryConnector.MODEL_ADD_CHANGE_DELETE) { + %> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.ScheduleTypeColon")%> + </nobr> + </th> + <td colspan="3"> + <nobr><%=jobType%> + </nobr> + </td> + </tr> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.MinimumRecrawlIntervalColon")%> + </nobr> + </th> + <td> + <nobr><%=intervalString%> + </nobr> + </td> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.MaximumRecrawlIntervalColon")%> + </nobr> + </th> + <td> + <nobr><%=maxIntervalString%> + </nobr> + </td> + </tr> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.ExpirationIntervalColon")%> + </nobr> + </th> + <td> + <nobr><%=expirationIntervalString%> + </nobr> + </td> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.ReseedIntervalColon")%> + </nobr> + </th> + <td> + <nobr><%=reseedIntervalString%> + </nobr> + </td> + </tr> + <% + } + %> + + <% + if (job.getScheduleRecordCount() == 0) { + %> + <tr> + <td colspan="4"> + <div class="callout callout-info"> + <p><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.NoScheduledRunTimes")%> + </p> + </div> + </td> + </tr> + <% + } else { + // Loop through the schedule records + int j = 0; + while (j < job.getScheduleRecordCount()) { + ScheduleRecord sr = job.getScheduleRecord(j); + Long srDuration = sr.getDuration(); + boolean srRequestMinimum = sr.getRequestMinimum(); + EnumeratedValues srDayOfWeek = sr.getDayOfWeek(); + EnumeratedValues srMonthOfYear = sr.getMonthOfYear(); + EnumeratedValues srDayOfMonth = sr.getDayOfMonth(); + EnumeratedValues srYear = sr.getYear(); + EnumeratedValues srHourOfDay = sr.getHourOfDay(); + EnumeratedValues srMinutesOfHour = sr.getMinutesOfHour(); + + if (j > 0) { + %> + <% + } + %> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.ScheduledTimeColon")%> + </nobr> + </th> + <td colspan="3"> + <% + if (srDayOfWeek == null) + out.println(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Anydayoftheweek")); + else { + StringBuffer sb = new StringBuffer(); + boolean firstTime = true; + if (srDayOfWeek.checkValue(0)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Sundays")); + } + if (srDayOfWeek.checkValue(1)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Mondays")); + } + if (srDayOfWeek.checkValue(2)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Tuesdays")); + } + if (srDayOfWeek.checkValue(3)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Wednesdays")); + } + if (srDayOfWeek.checkValue(4)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Thursdays")); + } + if (srDayOfWeek.checkValue(5)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Fridays")); + } + if (srDayOfWeek.checkValue(6)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Saturdays")); + } + out.println(sb.toString()); + } + %> + <% + if (srHourOfDay == null) { + if (srMinutesOfHour != null) + out.println(" " + Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.oneveryhour") + " "); + else + out.println(" " + Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.atmidnight") + " "); + } else { + out.println(" " + Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.at") + " "); + int k = 0; + while (k < 24) { + int q = k; + String ampm; + if (k < 12) + ampm = Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.am"); + else { + ampm = Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.pm"); + q -= 12; + } + String hour; + if (q == 0) + q = 12; + if (srHourOfDay.checkValue(k)) + out.println(Integer.toString(q) + " " + ampm + " "); + k++; + } + } + %> + <% + if (srMinutesOfHour != null) { + out.println(" " + Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.plus") + " "); + int k = 0; + while (k < 60) { + if (srMinutesOfHour.checkValue(k)) + out.println(Integer.toString(k) + " "); + k++; + } + out.println(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.minutes") + " "); + } + %> + <% + if (srMonthOfYear == null) { + if (srDayOfMonth == null && srDayOfWeek == null && srHourOfDay == null && srMinutesOfHour == null) + out.println(" " + Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.ineverymonthofyear")); + } else { + StringBuffer sb = new StringBuffer(" " + Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.in") + " "); + boolean firstTime = true; + if (srMonthOfYear.checkValue(0)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.January")); + } + if (srMonthOfYear.checkValue(1)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.February")); + } + if (srMonthOfYear.checkValue(2)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.March")); + } + if (srMonthOfYear.checkValue(3)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.April")); + } + if (srMonthOfYear.checkValue(4)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.May")); + } + if (srMonthOfYear.checkValue(5)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.June")); + } + if (srMonthOfYear.checkValue(6)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.July")); + } + if (srMonthOfYear.checkValue(7)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.August")); + } + if (srMonthOfYear.checkValue(8)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.September")); + } + if (srMonthOfYear.checkValue(9)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.October")); + } + if (srMonthOfYear.checkValue(10)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.November")); + } + if (srMonthOfYear.checkValue(11)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.December")); + } + out.println(sb.toString()); + } + %> + <% + if (srDayOfMonth == null) { + if (srDayOfWeek == null && srHourOfDay == null && srMinutesOfHour == null) + out.println(" " + Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.onanydayofthemonth")); + } else { + StringBuffer sb = new StringBuffer(" " + Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.onthe") + " "); + int k = 0; + boolean firstTime = true; + while (k < 31) { + if (srDayOfMonth.checkValue(k)) { + if (firstTime) + firstTime = false; + else + sb.append(","); + sb.append(Integer.toString(k + 1)); + int value = (k + 1) % 10; + if (value == 1 && k != 10) + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.st")); + else if (value == 2 && k != 11) + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.nd")); + else if (value == 3 && k != 12) + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.rd")); + else + sb.append(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.th")); + } + k++; + } + sb.append(" " + Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.ofthemonth")); + out.println(sb.toString()); + } + %> + <% + if (srYear != null) { + StringBuffer sb = new StringBuffer(" " + Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.inyears") + " "); + Iterator iter = srYear.getValues(); + boolean firstTime = true; + while (iter.hasNext()) { + if (firstTime) + firstTime = false; + else + sb.append(","); + Integer value = (Integer) iter.next(); + sb.append(value.toString()); + } + out.println(sb.toString()); + } + %> + </td> + </tr> + <tr> + <th> + <%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.MaximumRunTimeColon")%> + </th> + <td> + <% + if (srDuration == null) + out.println(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Nolimit")); + else + out.println(new Long(srDuration.longValue() / 60000L).toString() + " " + Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.minutes")); + %> + </td> + <th> + <%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.JobInvocationColon")%> + </th> + <td> + <% + if (srRequestMinimum) + out.println(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Minimal")); + else + out.println(Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Complete")); + %> + </td> + </tr> + <% + j++; + } + } + + if (relationshipTypes != null && relationshipTypes.length > 0) { + int k = 0; + while (k < relationshipTypes.length) { + String relationshipType = relationshipTypes[k++]; + Long value = (Long) hopCountFilters.get(relationshipType); + %> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.MaximumHopCountForLinkType")%> '<%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(relationshipType)%>':</nobr> + </th> + <td colspan="3"> + <%=((value == null) ? Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Unlimited") : value.toString())%> + </td> + </tr> + + <% + } + %> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.HopCountModeColon")%> + </nobr> + </th> + <td colspan="3"> + <nobr> + <%=(hopcountMode == IJobDescription.HOPCOUNT_ACCURATE) ? Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Deleteunreachabledocuments") : ""%> + <%=(hopcountMode == IJobDescription.HOPCOUNT_NODELETE) ? Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Nodeletesfornow") : ""%> + <%=(hopcountMode == IJobDescription.HOPCOUNT_NEVERDELETE) ? Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Nodeletesforever") : ""%> + </nobr> + </td> + </tr> + <% + + } + %> + <tr> + <td colspan="4"> + <span class="label label-primary pull-left">1.</span><br/> + <% + if (connection != null) { + IRepositoryConnector repositoryConnector = repositoryConnectorPool.grab(connection); + if (repositoryConnector != null) { + try { + repositoryConnector.viewSpecification(new org.apache.manifoldcf.ui.jsp.JspWrapper(out, adminprofile), pageContext.getRequest().getLocale(), job.getSpecification(), 0); + } finally { + repositoryConnectorPool.release(connection, repositoryConnector); + } + } + } + %> + </td> + </tr> + <% + for (int j = 0; j < job.countPipelineStages(); j++) { + %> + <tr> + <td colspan="4"> + <span class="label label-primary pull-left"><%=(j + 2)%>.</span><br/> + <% + Specification os = job.getPipelineStageSpecification(j); + if (job.getPipelineStageIsOutputConnection(j)) { + IOutputConnection thisConnection = outputManager.load(job.getPipelineStageConnectionName(j)); + IOutputConnector outputConnector = outputConnectorPool.grab(thisConnection); + if (outputConnector != null) { + try { + outputConnector.viewSpecification(new org.apache.manifoldcf.ui.jsp.JspWrapper(out, adminprofile), pageContext.getRequest().getLocale(), os, 1 + j); + } finally { + outputConnectorPool.release(thisConnection, outputConnector); + } + } + } else { + ITransformationConnection thisConnection = transformationManager.load(job.getPipelineStageConnectionName(j)); + ITransformationConnector transformationConnector = transformationConnectorPool.grab(thisConnection); + if (transformationConnector != null) { + try { + transformationConnector.viewSpecification(new org.apache.manifoldcf.ui.jsp.JspWrapper(out, adminprofile), pageContext.getRequest().getLocale(), os, 1 + j); + } finally { + transformationConnectorPool.release(thisConnection, transformationConnector); + } + } + } + %> + </td> + </tr> + <% + } + + for (int j = 0; j < job.countNotifications(); j++) { + %> + <tr> + <td colspan="4"> + <span class="label label-primary pull-left"><%=(j + job.countPipelineStages() + 2)%>.</span><br/> + <% + Specification os = job.getNotificationSpecification(j); + INotificationConnection thisConnection = notificationManager.load(job.getNotificationConnectionName(j)); + INotificationConnector notificationConnector = notificationConnectorPool.grab(thisConnection); + if (notificationConnector != null) { + try { + notificationConnector.viewSpecification(new org.apache.manifoldcf.ui.jsp.JspWrapper(out, adminprofile), pageContext.getRequest().getLocale(), os, 1 + job.countPipelineStages() + j); + } finally { + notificationConnectorPool.release(thisConnection, notificationConnector); + } + } + %> + </td> + </tr> + <% + } + + %> + </table> + </div> + <div class="box-footer clearfix"> + <div class="btn-group"> + <a href='<%="editjob.jsp?jobid="+jobID%>' + alt="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewjob.EditThisJob")%>" + class="link btn btn-primary" role="button"> + <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> + <%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Edit")%> + </a> + <a href='<%="javascript:Delete(\""+jobID+"\")"%>' + alt="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewjob.DeleteThisJob")%>" + class="btn btn-danger" role="button"> + <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> + <%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Delete")%> + </a> + <a href='<%="editjob.jsp?origjobid="+jobID%>' + alt="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewjob.CopyThisJob")%>" + class="link btn btn-primary" role="button"> + <span class="fa fa-clipboard" aria-hidden="true"></span> + <%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.Copy")%> + </a> + <a href='<%="javascript:StartOver(\""+jobID+"\")"%>' + alt="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewjob.ResetSeedingThisJob")%>" + class="link btn btn-primary" role="button"> + <%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewjob.ResetSeeding")%> + </a> + </div> + + <% + } + } catch (ManifoldCFException e) { + e.printStackTrace(); + variableContext.setParameter("text", e.getMessage()); + variableContext.setParameter("target", "listjobs.jsp"); + %> + <jsp:forward page="error.jsp"/> + <% + } + %> + </div> + </form> + </div> + </div> +</div> \ No newline at end of file
Modified: manifoldcf/branches/CONNECTORS-1196/framework/crawler-ui/src/main/webapp/viewmapper.jsp URL: http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1196/framework/crawler-ui/src/main/webapp/viewmapper.jsp?rev=1684303&r1=1684302&r2=1684303&view=diff ============================================================================== --- manifoldcf/branches/CONNECTORS-1196/framework/crawler-ui/src/main/webapp/viewmapper.jsp (original) +++ manifoldcf/branches/CONNECTORS-1196/framework/crawler-ui/src/main/webapp/viewmapper.jsp Tue Jun 9 01:30:36 2015 @@ -2,207 +2,198 @@ <% -/* $Id$ */ + /* $Id$ */ /** -* Licensed to the Apache Software Foundation (ASF) under one or more -* contributor license agreements. See the NOTICE file distributed with -* this work for additional information regarding copyright ownership. -* The ASF licenses this file to You 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. -*/ -%> - -<?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE html> -<meta http-equiv="X-UA-Compatible" content="IE=edge"/> - -<html xmlns="http://www.w3.org/1999/xhtml"> -<head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - <link rel="StyleSheet" href="style.css" type="text/css" media="screen"/> - <title> - <%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.ApacheManifoldCFViewMappingConnectionStatus")%> - </title> - - <script type="text/javascript"> - <!-- - - function Delete(connectionName) - { - if (confirm("<%=Messages.getBodyJavascriptString(pageContext.getRequest().getLocale(),"viewmapper.DeleteConnection")%> '"+connectionName+"'<%=Messages.getBodyJavascriptString(pageContext.getRequest().getLocale(),"viewmapper.qmark")%>")) - { - document.viewconnection.op.value="Delete"; - document.viewconnection.connname.value=connectionName; - document.viewconnection.submit(); - } - } - - //--> - </script> - -</head> - -<body class="standardbody"> - - <table class="page"> - <tr><td colspan="2" class="banner"><jsp:include page="banner.jsp" flush="true"/></td></tr> - <tr><td class="navigation"><jsp:include page="navigation.jsp" flush="true"/></td> - <td class="window"> - <p class="windowtitle"><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.ViewMappingConnectionStatus")%></p> - <form class="standardform" name="viewconnection" action="execute.jsp" method="POST"> - <input type="hidden" name="op" value="Continue"/> - <input type="hidden" name="type" value="mapper"/> - <input type="hidden" name="connname" value=""/> - -<% - try - { - IMappingConnectionManager manager = MappingConnectionManagerFactory.make(threadContext); - IMappingConnectorManager connectorManager = MappingConnectorManagerFactory.make(threadContext); - IMappingConnectorPool mappingConnectorPool = MappingConnectorPoolFactory.make(threadContext); - String connectionName = variableContext.getParameter("connname"); - IMappingConnection connection = manager.load(connectionName); - if (connection == null) - { - throw new ManifoldCFException("No such mapping connection: '"+connectionName+"'"); - } - else - { - String description = connection.getDescription(); - if (description == null) - description = ""; - String className = connection.getClassName(); - String connectorName = connectorManager.getDescription(className); - if (connectorName == null) - connectorName = className + Messages.getString(pageContext.getRequest().getLocale(),"viewmapper.uninstalled"); - int maxCount = connection.getMaxConnections(); - String prereq = connection.getPrerequisiteMapping(); - - ConfigParams parameters = connection.getConfigParams(); - - // Now, test the connection. - String connectionStatus; - try - { - IMappingConnector c = mappingConnectorPool.grab(connection); - if (c == null) - { - connectionStatus = Messages.getString(pageContext.getRequest().getLocale(),"viewmapper.Connectorisnotinstalled"); - } - else - { - try - { - connectionStatus = c.check(); - } - finally - { - mappingConnectorPool.release(connection,c); - } - } - } - catch (ManifoldCFException e) - { - connectionStatus = Messages.getString(pageContext.getRequest().getLocale(),"viewmapper.Threwexception")+" '"+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(e.getMessage())+"'"; - } -%> - <table class="displaytable"> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="description" colspan="1"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.NameColon")%></nobr></td> - <td class="value" colspan="1"><%="<!--connection="+org.apache.manifoldcf.ui.util.Encoder.bodyEscape(connectionName)+"-->"%><nobr><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(connectionName)%></nobr></td> - <td class="description" colspan="1"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.DescriptionColon")%></nobr></td> - <td class="value" colspan="1"><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(description)%></td> - </tr> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="description" colspan="1"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.MapperTypeColon")%></nobr></td> - <td class="value" colspan="1"><nobr><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(connectorName)%></nobr></td> - <td class="description" colspan="1"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.MaxConnectionsColon")%></nobr></td> - <td class="value" colspan="1"><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(Integer.toString(maxCount))%></td> - </tr> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="description" colspan="1"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.PrerequisiteUserMappingColon")%></nobr></td> - <td class="value" colspan="3"> -<% - if (prereq != null) - { -%> - <nobr><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(prereq)%></nobr><br/> -<% - } - else - { -%> - <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.NoPrerequisites")%></nobr> -<% - } -%> - </td> - </tr> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td colspan="4"> -<% - MappingConnectorFactory.viewConfiguration(threadContext,className,new org.apache.manifoldcf.ui.jsp.JspWrapper(out,adminprofile),pageContext.getRequest().getLocale(),parameters); -%> - - </td> - </tr> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr> - <td class="description" colspan="1"><nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.ConnectionStatusColon")%></nobr></td> - <td class="value" colspan="3"><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(connectionStatus)%></td> - </tr> - <tr> - <td class="separator" colspan="4"><hr/></td> - </tr> - <tr><td class="message" colspan="4"> - <nobr><a href='<%="viewmapper.jsp?connname="+org.apache.manifoldcf.core.util.URLEncoder.encode(connectionName)%>' alt="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewmapper.Refresh")%>"><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.Refresh")%></a></nobr> - <nobr><a href='<%="editmapper.jsp?connname="+org.apache.manifoldcf.core.util.URLEncoder.encode(connectionName)%>' alt="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewmapper.EditThisMappingConnection")%>"><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.Edit")%></a></nobr> - <nobr><a href="javascript:void()" onclick='<%="javascript:Delete(\""+org.apache.manifoldcf.ui.util.Encoder.attributeJavascriptEscape(connectionName)+"\")"%>' alt="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewmapper.DeleteThisMappingConnection")%>"><%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.Delete")%></a></nobr> - </td></tr> - </table> - -<% - } + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ +%> + +<% + try { + IMappingConnectionManager manager = MappingConnectionManagerFactory.make(threadContext); + IMappingConnectorManager connectorManager = MappingConnectorManagerFactory.make(threadContext); + IMappingConnectorPool mappingConnectorPool = MappingConnectorPoolFactory.make(threadContext); + String connectionName = variableContext.getParameter("connname"); + IMappingConnection connection = manager.load(connectionName); + if (connection == null) { + throw new ManifoldCFException("No such mapping connection: '" + connectionName + "'"); + } else { + String description = connection.getDescription(); + if (description == null) + description = ""; + String className = connection.getClassName(); + String connectorName = connectorManager.getDescription(className); + if (connectorName == null) + connectorName = className + Messages.getString(pageContext.getRequest().getLocale(), "viewmapper.uninstalled"); + int maxCount = connection.getMaxConnections(); + String prereq = connection.getPrerequisiteMapping(); + + ConfigParams parameters = connection.getConfigParams(); + + // Now, test the connection. + String connectionStatus; + try { + IMappingConnector c = mappingConnectorPool.grab(connection); + if (c == null) { + connectionStatus = Messages.getString(pageContext.getRequest().getLocale(), "viewmapper.Connectorisnotinstalled"); + } else { + try { + connectionStatus = c.check(); + } finally { + mappingConnectorPool.release(connection, c); + } + } + } catch (ManifoldCFException e) { + connectionStatus = Messages.getString(pageContext.getRequest().getLocale(), "viewmapper.Threwexception") + " '" + org.apache.manifoldcf.ui.util.Encoder.bodyEscape(e.getMessage()) + "'"; + } +%> + +<script type="text/javascript"> + <!-- + $.ManifoldCF.setTitle('<%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewmapper.ApacheManifoldCFViewMappingConnectionStatus")%>', + '<%=Messages.getBodyString(pageContext.getRequest().getLocale(),"viewmapper.ViewMappingConnectionStatus") + " - " + connectionName %>', + 'authorities' + ); + + function Delete(connectionName) { + if (confirm("<%=Messages.getBodyJavascriptString(pageContext.getRequest().getLocale(),"viewmapper.DeleteConnection")%> '" + connectionName + "'<%=Messages.getBodyJavascriptString(pageContext.getRequest().getLocale(),"viewmapper.qmark")%>")) { + document.viewconnection.op.value = "Delete"; + document.viewconnection.connname.value = connectionName; + $.ManifoldCF.submit(document.viewconnection); } - catch (ManifoldCFException e) - { - e.printStackTrace(); - variableContext.setParameter("text",e.getMessage()); - variableContext.setParameter("target","listmappers.jsp"); -%> - <jsp:forward page="error.jsp"/> -<% - } -%> - </form> - </td> - </tr> - </table> + } -</body> + //--> +</script> -</html> +<div class="row"> + <div class="col-md-12"> + <div class="box box-primary"> + <form class="standardform" name="viewconnection" action="execute.jsp" method="POST"> + <input type="hidden" name="op" value="Continue"/> + <input type="hidden" name="type" value="mapper"/> + <input type="hidden" name="connname" value=""/> + + <div class="box-body"> + + <table class="table table-bordered"> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewmapper.NameColon")%> + </nobr> + </th> + <td><%="<!--connection=" + org.apache.manifoldcf.ui.util.Encoder.bodyEscape(connectionName) + "-->"%> + <nobr><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(connectionName)%> + </nobr> + </td> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewmapper.DescriptionColon")%> + </nobr> + </th> + <td><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(description)%> + </td> + </tr> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewmapper.MapperTypeColon")%> + </nobr> + </th> + <td> + <nobr><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(connectorName)%> + </nobr> + </td> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewmapper.MaxConnectionsColon")%> + </nobr> + </th> + <td><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(Integer.toString(maxCount))%> + </td> + </tr> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewmapper.PrerequisiteUserMappingColon")%> + </nobr> + </th> + <td colspan="3"> + <% + if (prereq != null) { + %> + <nobr><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(prereq)%> + </nobr> + <br/> + <% + } else { + %> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewmapper.NoPrerequisites")%> + </nobr> + <% + } + %> + </td> + </tr> + <tr> + <td colspan="4"> + <% + MappingConnectorFactory.viewConfiguration(threadContext, className, new org.apache.manifoldcf.ui.jsp.JspWrapper(out, adminprofile), pageContext.getRequest().getLocale(), parameters); + %> + + </td> + </tr> + <tr> + <th> + <nobr><%=Messages.getBodyString(pageContext.getRequest().getLocale(), "viewmapper.ConnectionStatusColon")%> + </nobr> + </th> + <td colspan="3"><%=org.apache.manifoldcf.ui.util.Encoder.bodyEscape(connectionStatus)%> + </td> + </tr> + </table> + </div> + <div class="box-footer clearfix"> + <div class="btn-group"> + <a href='<%="viewmapper.jsp?connname="+org.apache.manifoldcf.core.util.URLEncoder.encode(connectionName)%>' + title="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewmapper.Refresh")%>" + class="link btn btn-primary" role="button" data-toggle="tooltip"> + <span class="glyphicon glyphicon-refresh" aria-hidden="true"></span> + </a> + <a href='<%="editmapper.jsp?connname="+org.apache.manifoldcf.core.util.URLEncoder.encode(connectionName)%>' + title="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewmapper.EditThisMappingConnection")%>" + class="link btn btn-primary" role="button" data-toggle="tooltip"> + <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> + </a> + <a href="javascript:void()" onclick='<%="javascript:Delete(\""+org.apache.manifoldcf.ui.util.Encoder.attributeJavascriptEscape(connectionName)+"\")"%>' + title="<%=Messages.getAttributeString(pageContext.getRequest().getLocale(),"viewmapper.DeleteThisMappingConnection")%>" + class="btn btn-danger" role="button" data-toggle="tooltip"> + <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> + </a> + </div> + <% + } + } catch (ManifoldCFException e) { + e.printStackTrace(); + variableContext.setParameter("text", e.getMessage()); + variableContext.setParameter("target", "listmappers.jsp"); + %> + <jsp:forward page="error.jsp"/> + <% + } + %> + </div> + </form> + </div> + </div> +</div> \ No newline at end of file
