Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/GenericDocumentProcess.java
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/GenericDocumentProcess.java?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/GenericDocumentProcess.java
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/GenericDocumentProcess.java
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,275 @@
+/**
+ * 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.
+ */
+package org.apache.manifoldcf.crawler.connectors.amazons3;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.Date;
+import java.util.Set;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang.StringUtils;
+import org.apache.manifoldcf.agents.interfaces.RepositoryDocument;
+import org.apache.manifoldcf.agents.interfaces.ServiceInterruption;
+import org.apache.manifoldcf.connectors.common.amazons3.S3Artifact;
+import org.apache.manifoldcf.core.interfaces.ManifoldCFException;
+import org.apache.manifoldcf.core.interfaces.Specification;
+import org.apache.manifoldcf.crawler.interfaces.IExistingVersions;
+import org.apache.manifoldcf.crawler.interfaces.IProcessActivity;
+import org.apache.manifoldcf.crawler.system.Logging;
+
+import com.amazonaws.AmazonClientException;
+import com.amazonaws.AmazonServiceException;
+import com.amazonaws.services.s3.AmazonS3;
+import com.amazonaws.services.s3.model.AccessControlList;
+import com.amazonaws.services.s3.model.GetObjectRequest;
+import com.amazonaws.services.s3.model.Grant;
+import com.amazonaws.services.s3.model.ObjectMetadata;
+import com.amazonaws.services.s3.model.S3Object;
+
+/**
+ * Generic amazons3 extractor
+ * @author Kuhajeyan
+ *
+ */
+public class GenericDocumentProcess extends AmazonS3DocumentProcessUtility
+               implements DocumentProcess {
+
+       /**
+        * Process documents with out any tika extractor
+        * @param documentIdentifiers
+        * @param statuses
+        * @param spec
+        * @param activities
+        * @param jobMode
+        * @param usesDefaultAuthority
+        * @param amazons3Client
+        * @throws ManifoldCFException
+        */
+       @Override
+       public void doPocessDocument(String[] documentIdentifiers,
+                       IExistingVersions statuses, Specification spec,
+                       IProcessActivity activities, int jobMode,
+                       boolean usesDefaultAuthority, AmazonS3 amazons3Client)
+                       throws ManifoldCFException {
+               if (amazons3Client == null)
+                       throw new ManifoldCFException(
+                                       "Amazon client can not connect at the 
moment");
+
+               for (String documentIdentifier : documentIdentifiers) {
+                       try {
+                               if (documentIdentifier == null
+                                               || 
StringUtils.isEmpty(documentIdentifier)) {
+                                       Logging.connectors
+                                                       .warn("Document 
identifier is empty, document will not be processed");
+                                       continue;
+                               }
+
+                               String versionString;
+                               String[] aclsToUse;
+
+                               if (documentIdentifier
+                                               
.split(AmazonS3Config.STD_SEPARATOR_BUCKET_AND_KEY) == null
+                                               && documentIdentifier.length() 
< 1) {
+                                       continue;
+                               }
+
+                               S3Artifact s3Artifact = 
getS3Artifact(documentIdentifier);
+                               S3Object s3Obj = amazons3Client.getObject(new 
GetObjectRequest(
+                                               s3Artifact.getBucketName(), 
s3Artifact.getKey()));
+
+                               if (s3Obj == null) {
+                                       // no such document in the bucket now
+                                       // delete document
+                                       
activities.deleteDocument(documentIdentifier);
+                                       continue;
+                               }
+
+                               Logging.connectors.info("Content-Type: "
+                                               + 
s3Obj.getObjectMetadata().getContentType());
+                               ObjectMetadata objectMetadata = 
s3Obj.getObjectMetadata();
+
+                               Date lastModified = 
objectMetadata.getLastModified();
+                               StringBuilder sb = new StringBuilder();
+                               if (lastModified == null) {
+                                       // remove the content
+                                       
activities.deleteDocument(documentIdentifier);
+                                       continue;
+                               }
+
+                               aclsToUse = new String[0];
+
+                               AccessControlList objectAcl = 
amazons3Client.getObjectAcl(
+                                               s3Artifact.getBucketName(), 
s3Artifact.getKey());
+
+                               Set<Grant> grants = objectAcl.getGrants();
+                               String[] users = getUsers(grants);
+
+                               aclsToUse = users;
+
+                               //
+                               sb.append(lastModified.toString());
+                               versionString = sb.toString();
+
+                               Logging.connectors.debug("version string : " + 
versionString);
+
+                               if (versionString.length() > 0
+                                               && 
!activities.checkDocumentNeedsReindexing(
+                                                               
documentIdentifier, versionString)) {
+                                       Logging.connectors
+                                                       .info("Document need 
not to be reindexed : "
+                                                                       + 
documentIdentifier);
+                                       continue;
+                               }
+
+                               Logging.connectors
+                                               .debug("JIRA: Processing 
document identifier '"
+                                                               + 
documentIdentifier + "'");
+
+                               long startTime = System.currentTimeMillis();
+                               String errorCode = null;
+                               String errorDesc = null;
+                               Long fileSize = null;
+
+                               String mimeType = "text/plain";// default
+
+                               // tika works starts
+                               InputStream in = null;
+                               ByteArrayOutputStream bao = new 
ByteArrayOutputStream();
+
+                               String document = null;
+
+                               try {
+                                       in = s3Obj.getObjectContent();
+                                       IOUtils.copy(in, bao);
+                                       long fileLength = bao.size();
+                                       if(fileLength < 1)
+                                       {
+                                               Logging.connectors.warn("File 
length 0");
+                                               continue;
+                                       }
+
+                                       String documentURI = 
getDocumentURI(s3Artifact);
+                                       Logging.connectors.debug("document : " 
+ documentURI);
+
+                                       try {
+                                               if 
(!activities.checkURLIndexable(documentURI)) {
+                                                       errorCode = 
activities.EXCLUDED_URL;
+                                                       errorDesc = "Excluded 
because of URL ('"
+                                                                       + 
documentURI + "')";
+                                                       
activities.noDocument(documentIdentifier,
+                                                                       
versionString);
+                                                       continue;
+                                               }
+
+                                               if 
(!activities.checkMimeTypeIndexable(mimeType)) {
+                                                       errorCode = 
activities.EXCLUDED_MIMETYPE;
+                                                       errorDesc = "Excluded 
because of mime type ('"
+                                                                       + 
mimeType + "')";
+                                                       
activities.noDocument(documentIdentifier,
+                                                                       
versionString);
+                                                       continue;
+                                               }
+                                               if 
(!activities.checkDateIndexable(lastModified)) {
+                                                       errorCode = 
activities.EXCLUDED_DATE;
+                                                       errorDesc = "Excluded 
because of date ("
+                                                                       + 
lastModified + ")";
+                                                       
activities.noDocument(documentIdentifier,
+                                                                       
versionString);
+                                                       continue;
+                                               }
+
+                                               // otherwise process
+                                               RepositoryDocument rd = new 
RepositoryDocument();
+                                               addRawMetadata(rd, 
objectMetadata);
+                                               // Turn into acls and add into
+                                               // description
+                                               String[] denyAclsToUse;
+                                               if (aclsToUse.length > 0)
+                                                       denyAclsToUse = new 
String[] { AmazonS3Config.defaultAuthorityDenyToken };
+                                               else
+                                                       denyAclsToUse = new 
String[0];
+                                               rd.setSecurity(
+                                                               
RepositoryDocument.SECURITY_TYPE_DOCUMENT,
+                                                               aclsToUse, 
denyAclsToUse);
+
+                                               rd.setMimeType(mimeType);
+
+                                               if (lastModified != null)
+                                                       
rd.setModifiedDate(lastModified);
+
+                                               
+                                           
+
+                                               if 
(!activities.checkLengthIndexable(fileLength)) {
+                                                       errorCode = 
activities.EXCLUDED_LENGTH;
+                                                       errorDesc = "Excluded 
because of document length ("
+                                                                       + 
fileLength + ")";
+                                                       
activities.noDocument(documentIdentifier,
+                                                                       
versionString);
+                                                       continue;
+                                               }
+
+                                               InputStream is = null;
+                                               try {
+                                                       is = new 
ByteArrayInputStream(bao.toByteArray());
+                                                       rd.setBinary(is, 
fileLength);
+                                                       
activities.ingestDocumentWithException(
+                                                                       
documentIdentifier, versionString,
+                                                                       
documentURI, rd);
+
+                                                       errorCode = "OK";
+                                                       fileSize = new 
Long(fileLength);
+                                               }
+                                               finally {
+                                                       if (is != null)
+                                                               
IOUtils.closeQuietly(is);
+                                               }
+
+                                       }
+                                       catch (ServiceInterruption e) {
+                                               Logging.connectors
+                                                               .error("Error 
while checking if document is indexable",
+                                                                               
e);
+                                       }
+                               }
+                               catch (IOException e1) {
+                                       Logging.connectors.error("Error while 
copying stream", e1);
+                               }
+                               finally {
+                                       //close output stream
+                                       IOUtils.closeQuietly(bao);
+
+                                       //close input stream
+                                       if (in != null)
+                                               IOUtils.closeQuietly(in);
+                               }
+
+                       }
+                       catch (AmazonServiceException e) {
+                               Logging.connectors.error(e);
+                       }
+                       catch (AmazonClientException e) {
+                               Logging.connectors.error(e);
+                       }
+               }
+
+       }
+
+}

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/Messages.java
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/Messages.java?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/Messages.java
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/Messages.java
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,144 @@
+/**
+ * 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.
+ */
+package org.apache.manifoldcf.crawler.connectors.amazons3;
+
+import java.util.Locale;
+import java.util.Map;
+
+import org.apache.manifoldcf.core.interfaces.IHTTPOutput;
+import org.apache.manifoldcf.core.interfaces.ManifoldCFException;
+
+/**
+ * @author Kuhajeyan
+ *
+ */
+public class Messages extends org.apache.manifoldcf.ui.i18n.Messages {
+
+       public static final String DEFAULT_BUNDLE_NAME = 
"org.apache.manifoldcf.crawler.connectors.amazons3.common";
+       public static final String DEFAULT_PATH_NAME = 
"org.apache.manifoldcf.crawler.connectors.amazons3";
+
+       protected Messages() {
+       }
+
+       public static String getString(Locale locale, String messageKey) {
+               return getString(DEFAULT_BUNDLE_NAME, locale, messageKey, null);
+       }
+
+       public static String getAttributeString(Locale locale, String 
messageKey) {
+               return getAttributeString(DEFAULT_BUNDLE_NAME, locale, 
messageKey, null);
+       }
+
+       public static String getBodyString(Locale locale, String messageKey) {
+               return getBodyString(DEFAULT_BUNDLE_NAME, locale, messageKey, 
null);
+       }
+
+       public static String getAttributeJavascriptString(Locale locale,
+                       String messageKey) {
+               return getAttributeJavascriptString(DEFAULT_BUNDLE_NAME, locale,
+                               messageKey, null);
+       }
+
+       public static String getBodyJavascriptString(Locale locale,
+                       String messageKey) {
+               return getBodyJavascriptString(DEFAULT_BUNDLE_NAME, locale, 
messageKey,
+                               null);
+       }
+
+       public static String getString(Locale locale, String messageKey,
+                       Object[] args) {
+               return getString(DEFAULT_BUNDLE_NAME, locale, messageKey, args);
+       }
+
+       public static String getAttributeString(Locale locale, String 
messageKey,
+                       Object[] args) {
+               return getAttributeString(DEFAULT_BUNDLE_NAME, locale, 
messageKey, args);
+       }
+
+       public static String getBodyString(Locale locale, String messageKey,
+                       Object[] args) {
+               return getBodyString(DEFAULT_BUNDLE_NAME, locale, messageKey, 
args);
+       }
+
+       public static String getAttributeJavascriptString(Locale locale,
+                       String messageKey, Object[] args) {
+               return getAttributeJavascriptString(DEFAULT_BUNDLE_NAME, locale,
+                               messageKey, args);
+       }
+
+       public static String getBodyJavascriptString(Locale locale,
+                       String messageKey, Object[] args) {
+               return getBodyJavascriptString(DEFAULT_BUNDLE_NAME, locale, 
messageKey,
+                               args);
+       }
+
+       // More general methods which allow bundlenames and class loaders to be
+       // specified.
+
+       public static String getString(String bundleName, Locale locale,
+                       String messageKey, Object[] args) {
+               return getString(Messages.class, bundleName, locale, 
messageKey, args);
+       }
+
+       public static String getAttributeString(String bundleName, Locale 
locale,
+                       String messageKey, Object[] args) {
+               return getAttributeString(Messages.class, bundleName, locale,
+                               messageKey, args);
+       }
+
+       public static String getBodyString(String bundleName, Locale locale,
+                       String messageKey, Object[] args) {
+               return getBodyString(Messages.class, bundleName, locale, 
messageKey,
+                               args);
+       }
+
+       public static String getAttributeJavascriptString(String bundleName,
+                       Locale locale, String messageKey, Object[] args) {
+               return getAttributeJavascriptString(Messages.class, bundleName, 
locale,
+                               messageKey, args);
+       }
+
+       public static String getBodyJavascriptString(String bundleName,
+                       Locale locale, String messageKey, Object[] args) {
+               return getBodyJavascriptString(Messages.class, bundleName, 
locale,
+                               messageKey, args);
+       }
+
+       // Resource output
+
+       public static void outputResource(IHTTPOutput output, Locale locale,
+                       String resourceKey, Map<String, String> 
substitutionParameters,
+                       boolean mapToUpperCase) throws ManifoldCFException {
+               outputResource(output, Messages.class, DEFAULT_PATH_NAME, 
locale,
+                               resourceKey, substitutionParameters, 
mapToUpperCase);
+       }
+
+       public static void outputResourceWithVelocity(IHTTPOutput output,
+                       Locale locale, String resourceKey,
+                       Map<String, String> substitutionParameters, boolean 
mapToUpperCase)
+                       throws ManifoldCFException {
+               outputResourceWithVelocity(output, Messages.class, 
DEFAULT_BUNDLE_NAME,
+                               DEFAULT_PATH_NAME, locale, resourceKey, 
substitutionParameters,
+                               mapToUpperCase);
+       }
+
+       public static void outputResourceWithVelocity(IHTTPOutput output,
+                       Locale locale, String resourceKey,
+                       Map<String, Object> contextObjects) throws 
ManifoldCFException {
+               outputResourceWithVelocity(output, Messages.class, 
DEFAULT_BUNDLE_NAME,
+                               DEFAULT_PATH_NAME, locale, resourceKey, 
contextObjects);
+       }
+}

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/ResponseException.java
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/ResponseException.java?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/ResponseException.java
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/ResponseException.java
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,32 @@
+/**
+ * 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.
+ */
+package org.apache.manifoldcf.crawler.connectors.amazons3;
+
+/**
+ * @author Kuhajeyan
+ *
+ */
+public class ResponseException extends Exception {
+
+       public ResponseException(String msg) {
+               super(msg);
+       }
+
+       public ResponseException(String msg, Throwable cause) {
+               super(msg, cause);
+       }
+}

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/TikaBasedDocumentProcess.java
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/TikaBasedDocumentProcess.java?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/TikaBasedDocumentProcess.java
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/amazons3/TikaBasedDocumentProcess.java
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,305 @@
+/**
+ * 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.
+ */
+package org.apache.manifoldcf.crawler.connectors.amazons3;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.InputStream;
+import java.nio.charset.StandardCharsets;
+import java.util.Date;
+import java.util.Set;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang.StringUtils;
+import org.apache.manifoldcf.agents.interfaces.RepositoryDocument;
+import org.apache.manifoldcf.connectors.common.amazons3.S3Artifact;
+import org.apache.manifoldcf.core.interfaces.ManifoldCFException;
+import org.apache.manifoldcf.core.interfaces.Specification;
+import org.apache.manifoldcf.crawler.interfaces.IExistingVersions;
+import org.apache.manifoldcf.crawler.interfaces.IProcessActivity;
+import org.apache.manifoldcf.crawler.system.Logging;
+import org.apache.tika.Tika;
+import org.apache.tika.metadata.Metadata;
+import org.apache.tika.parser.AutoDetectParser;
+import org.apache.tika.parser.ParseContext;
+import org.apache.tika.sax.BodyContentHandler;
+
+import com.amazonaws.AmazonClientException;
+import com.amazonaws.AmazonServiceException;
+import com.amazonaws.services.s3.AmazonS3;
+import com.amazonaws.services.s3.model.AccessControlList;
+import com.amazonaws.services.s3.model.GetObjectRequest;
+import com.amazonaws.services.s3.model.Grant;
+import com.amazonaws.services.s3.model.ObjectMetadata;
+import com.amazonaws.services.s3.model.S3Object;
+
+/**
+ * Tika based document process
+ * @author Kuhajeyan
+ *
+ */
+public class TikaBasedDocumentProcess extends AmazonS3DocumentProcessUtility 
implements DocumentProcess {
+
+       
+       
+       AutoDetectParser parser;
+
+       BodyContentHandler handler;
+
+       Metadata metadata;
+
+       Tika tika;
+
+       ParseContext context;
+       public TikaBasedDocumentProcess() {
+               parser = new AutoDetectParser();
+               handler = new 
BodyContentHandler(AmazonS3Config.CHARACTER_LIMIT);
+               metadata = new Metadata();
+               tika = new Tika();
+               context = new ParseContext();
+       }
+       
+       
+       
+       /**
+        * Process documents based on Tika extractor
+        * @param documentIdentifiers
+        * @param statuses
+        * @param spec
+        * @param activities
+        * @param jobMode
+        * @param usesDefaultAuthority
+        * @param amazons3Client
+        * @throws ManifoldCFException
+        */
+       @Override
+       public void doPocessDocument(String[] documentIdentifiers,
+                       IExistingVersions statuses, Specification spec,
+                       IProcessActivity activities, int jobMode,
+                       boolean usesDefaultAuthority, AmazonS3 amazons3Client ) 
throws ManifoldCFException {
+               
+               if (amazons3Client == null)
+                       throw new ManifoldCFException(
+                                       "Amazon client can not connect at the 
moment");
+               String[] acls = null;
+
+               // loop documents and process
+               for (String documentIdentifier : documentIdentifiers) {
+                       try {
+                               if (documentIdentifier != null
+                                               && 
StringUtils.isNotEmpty(documentIdentifier)) {
+                                       String versionString;
+                                       String[] aclsToUse;
+
+                                       if 
(documentIdentifier.split(AmazonS3Config.STD_SEPARATOR_BUCKET_AND_KEY) == null
+                                                       && 
documentIdentifier.length() < 1) {
+                                               continue;
+                                       }
+
+                                       S3Artifact s3Artifact = 
getS3Artifact(documentIdentifier);
+                                       S3Object s3Obj = amazons3Client
+                                                       .getObject(new 
GetObjectRequest(s3Artifact
+                                                                       
.getBucketName(), s3Artifact.getKey()));
+
+                                       if (s3Obj == null) {
+                                               // no such document in the 
bucket now
+                                               // delete document
+                                               
activities.deleteDocument(documentIdentifier);
+                                               continue;
+                                       }
+
+                                       Logging.connectors.info("Content-Type: "
+                                                       + 
s3Obj.getObjectMetadata().getContentType());
+                                       ObjectMetadata objectMetadata = 
s3Obj.getObjectMetadata();
+                                       Date lastModified = 
objectMetadata.getLastModified();
+                                       StringBuilder sb = new StringBuilder();
+                                       if (lastModified == null) {
+                                               // remove the content
+                                               
activities.deleteDocument(documentIdentifier);
+                                               continue;
+                                       }
+
+                                       aclsToUse = new String[0];
+
+                                       AccessControlList objectAcl = 
amazons3Client.getObjectAcl(
+                                                       
s3Artifact.getBucketName(), s3Artifact.getKey());
+
+                                       Set<Grant> grants = 
objectAcl.getGrants();
+                                       String[] users = getUsers(grants);      
                        
+
+                                       aclsToUse = users;                      
        
+
+                                       //
+                                       sb.append(lastModified.toString());
+                                       versionString = sb.toString();
+
+                                       Logging.connectors.debug("version 
string : "
+                                                       + versionString);
+
+                                       if (versionString.length() > 0
+                                                       && 
!activities.checkDocumentNeedsReindexing(
+                                                                       
documentIdentifier, versionString)) {
+                                               Logging.connectors
+                                                               .info("Document 
need not to be reindexed : "
+                                                                               
+ documentIdentifier);
+                                               continue;
+                                       }
+                                       
+                                       //====
+
+                                       Logging.connectors
+                                                       .debug("JIRA: 
Processing document identifier '"
+                                                                       + 
documentIdentifier + "'");
+
+                                       long startTime = 
System.currentTimeMillis();
+                                       String errorCode = null;
+                                       String errorDesc = null;
+                                       Long fileSize = null;
+
+                                       try {
+                                               String mimeType = 
"text/plain";// default
+
+                                               // tika works starts
+                                               InputStream in = null;
+                                               
+
+                                               String document = null;
+                                               try {
+                                                       in = 
s3Obj.getObjectContent();
+
+                                                       parser.parse(in, 
handler, metadata, context);
+                                                       mimeType = 
tika.detect(in);
+                                                       document = 
handler.toString();
+                                                       if (document == null)
+                                                               continue;
+                                                       
metadata.set(Metadata.CONTENT_TYPE, mimeType);
+                                               }
+                                               catch (Exception e) {
+                                                       
Logging.connectors.error(
+                                                                       "Error 
while parsing tika contents", e);
+                                               }
+                                               finally {
+                                                       if (in != null)
+                                                               
IOUtils.closeQuietly(in);
+                                               }
+
+                                               String documentURI = 
getDocumentURI(s3Artifact);
+
+                                               
Logging.connectors.debug("document : " + documentURI);
+
+                                               // need some investigation
+                                               if 
(!activities.checkURLIndexable(documentURI)) {
+                                                       errorCode = 
activities.EXCLUDED_URL;
+                                                       errorDesc = "Excluded 
because of URL ('"
+                                                                       + 
documentURI + "')";
+                                                       
activities.noDocument(documentIdentifier,
+                                                                       
versionString);
+                                                       continue;
+                                               }
+                                               if 
(!activities.checkMimeTypeIndexable(mimeType)) {
+                                                       errorCode = 
activities.EXCLUDED_MIMETYPE;
+                                                       errorDesc = "Excluded 
because of mime type ('"
+                                                                       + 
mimeType + "')";
+                                                       
activities.noDocument(documentIdentifier,
+                                                                       
versionString);
+                                                       continue;
+                                               }
+                                               if 
(!activities.checkDateIndexable(lastModified)) {
+                                                       errorCode = 
activities.EXCLUDED_DATE;
+                                                       errorDesc = "Excluded 
because of date ("
+                                                                       + 
lastModified + ")";
+                                                       
activities.noDocument(documentIdentifier,
+                                                                       
versionString);
+                                                       continue;
+                                               }
+
+                                               // otherwise process
+                                               RepositoryDocument rd = new 
RepositoryDocument();
+                                               // Turn into acls and add into
+                                               // description
+                                               String[] denyAclsToUse;
+                                               if (aclsToUse.length > 0)
+                                                       denyAclsToUse = new 
String[] { AmazonS3Config.defaultAuthorityDenyToken };
+                                               else
+                                                       denyAclsToUse = new 
String[0];
+                                               rd.setSecurity(
+                                                               
RepositoryDocument.SECURITY_TYPE_DOCUMENT,
+                                                               aclsToUse, 
denyAclsToUse);
+
+                                               rd.setMimeType(mimeType);
+
+                                               if (lastModified != null)
+                                                       
rd.setModifiedDate(lastModified);
+
+                                               // set all meta-data fields
+                                               addAllMetaData(rd, metadata);
+
+                                               // get document
+
+                                               try {
+                                                       byte[] documentBytes = 
document
+                                                                       
.getBytes(StandardCharsets.UTF_8);
+                                                       long fileLength = 
documentBytes.length;
+
+                                                       if 
(!activities.checkLengthIndexable(fileLength)) {
+                                                               errorCode = 
activities.EXCLUDED_LENGTH;
+                                                               errorDesc = 
"Excluded because of document length ("
+                                                                               
+ fileLength + ")";
+                                                               
activities.noDocument(documentIdentifier,
+                                                                               
versionString);
+                                                               continue;
+                                                       }
+
+                                                       InputStream is = new 
ByteArrayInputStream(
+                                                                       
documentBytes);
+                                                       try {
+                                                               
rd.setBinary(is, fileLength);
+                                                               
activities.ingestDocumentWithException(
+                                                                               
documentIdentifier, versionString,
+                                                                               
documentURI, rd);
+
+                                                               errorCode = 
"OK";
+                                                               fileSize = new 
Long(fileLength);
+                                                       }
+                                                       finally {
+                                                               if (is != null)
+                                                                       
IOUtils.closeQuietly(is);
+                                                       }
+                                               }
+                                               catch (Exception e) {
+                                                       
Logging.connectors.error(e);
+                                               }
+                                       }
+                                       catch (Exception e) {
+                                               Logging.connectors.error(e);
+                                       }
+
+                               }
+                       }
+                       catch (AmazonServiceException e) {
+                               Logging.connectors.error(e);
+                       }
+                       catch (AmazonClientException e) {
+                               Logging.connectors.error(e);
+                       }
+
+               }
+
+       }
+
+
+}

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/amazons3/common_en_US.properties
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/amazons3/common_en_US.properties?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/amazons3/common_en_US.properties
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/amazons3/common_en_US.properties
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,52 @@
+# 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.
+
+Amazons3AuthorityConnector.Proxy=Proxy
+Amazons3AuthorityConnector.Server=Server
+Amazons3AuthorityConnector.Amazons3Security=Security
+
+Amazons3AuthorityConnector.Amazons3ProxyPortColon=Port:
+Amazons3AuthorityConnector.Amazons3ProxyHostColon=Host:
+Amazons3AuthorityConnector.Amazons3ProxyDomainColon=Domain:
+Amazons3AuthorityConnector.Amazons3ProxyUsernameColon=UserName:
+Amazons3AuthorityConnector.Amazons3ProxyPasswordColon=Password:
+
+
+Amazons3AuthorityConnector.Amazons3ProtocolColon=Protocol:
+Amazons3AuthorityConnector.Amazons3HostColon=Host:
+Amazons3AuthorityConnector.Amazons3PortColon=Port:
+Amazons3AuthorityConnector.AwsAccessKeyColon=Access Key:
+Amazons3AuthorityConnector.AwsSecretKeyColon=Secret Key:
+
+
+Amazons3AuthorityConnector.Amazons3HostMustNotIncludeSlash=Host should not 
include slash
+Amazons3AuthorityConnector.Amazons3HostMustNotIncludeSlash=Host should not 
include slash
+Amazons3AuthorityConnector.Amazons3PortMustBeAnInteger=Port value should be an 
integer
+
+Amazons3AuthorityConnector.Amazons3ProxyPortMustBeAnInteger=Port value should 
be an integer
+Amazons3AuthorityConnector.Amazons3ProxyHostMustNotIncludeSlash=Host should 
not include slash
+
+Amazons3AuthorityConnector.Amazons3HostMustNotBeNull=Host value should not be 
null
+Amazons3AuthorityConnector.Amazons3PortMustBeAnInteger=Port value should be an 
integer
+Amazons3AuthorityConnector.Amazons3AccessKeyShouldNotBeNull=Access key should 
not be null
+Amazons3AuthorityConnector.Amazons3SecretKeyShouldNotBeNull=Secret key should 
not be null
+
+Amazons3AuthorityConnector.Amazons3Buckets=Exclude Buckets 
+Amazons3AuthorityConnector.Amazons3BucketsColon=Exclude Buckets:
+Amazons3AuthorityConnector.Amazons3BucketsCannotBeNull=Amazon s3 buckets can 
not be null
+
+
+
+

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/native2ascii/org/apache/manifoldcf/crawler/connectors/amazons3/common_en_US.properties
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/native2ascii/org/apache/manifoldcf/crawler/connectors/amazons3/common_en_US.properties?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/native2ascii/org/apache/manifoldcf/crawler/connectors/amazons3/common_en_US.properties
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/native2ascii/org/apache/manifoldcf/crawler/connectors/amazons3/common_en_US.properties
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,52 @@
+# 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.
+
+Amazons3RepositoryConnector.Proxy=Proxy
+Amazons3RepositoryConnector.Server=Server
+Amazons3RepositoryConnector.Amazons3Security=Security
+
+Amazons3RepositoryConnector.Amazons3ProxyPortColon=Port:
+Amazons3RepositoryConnector.Amazons3ProxyHostColon=Host:
+Amazons3RepositoryConnector.Amazons3ProxyDomainColon=Domain:
+Amazons3RepositoryConnector.Amazons3ProxyUsernameColon=UserName:
+Amazons3RepositoryConnector.Amazons3ProxyPasswordColon=Password:
+
+
+Amazons3RepositoryConnector.Amazons3ProtocolColon=Protocol:
+Amazons3RepositoryConnector.Amazons3HostColon=Host:
+Amazons3RepositoryConnector.Amazons3PortColon=Port:
+Amazons3RepositoryConnector.AwsAccessKeyColon=Access Key:
+Amazons3RepositoryConnector.AwsSecretKeyColon=Secret Key:
+
+
+Amazons3RepositoryConnector.Amazons3HostMustNotIncludeSlash=Host should not 
include slash
+Amazons3RepositoryConnector.Amazons3HostMustNotIncludeSlash=Host should not 
include slash
+Amazons3RepositoryConnector.Amazons3PortMustBeAnInteger=Port value should be 
an integer
+
+Amazons3RepositoryConnector.Amazons3ProxyPortMustBeAnInteger=Port value should 
be an integer
+Amazons3RepositoryConnector.Amazons3ProxyHostMustNotIncludeSlash=Host should 
not include slash
+
+Amazons3RepositoryConnector.Amazons3HostMustNotBeNull=Host value should not be 
null
+Amazons3RepositoryConnector.Amazons3PortMustBeAnInteger=Port value should be 
an integer
+Amazons3RepositoryConnector.Amazons3AccessKeyShouldNotBeNull=Access key should 
not be null
+Amazons3RepositoryConnector.Amazons3SecretKeyShouldNotBeNull=Secret key should 
not be null
+
+Amazons3RepositoryConnector.Amazons3Buckets=Exclude Buckets 
+Amazons3RepositoryConnector.Amazons3BucketsColon=Exclude Buckets:
+Amazons3RepositoryConnector.Amazons3BucketsCannotBeNull=Amazon s3 buckets can 
not be null
+
+
+
+

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/editConfiguration_amazons3.js
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/editConfiguration_amazons3.js?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/editConfiguration_amazons3.js
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/editConfiguration_amazons3.js
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,63 @@
+<!--
+ 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">
+<!--
+function checkConfig()
+{ 
+  
+  if (editconnection.amazons3_proxy_port.value != "" && 
!isInteger(editconnection.amazons3_proxy_port.value))
+  {
+    
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3ProxyPortMustBeAnInteger'))");
+    editconnection.amazons3_proxy_port.focus();
+    return false;
+  }
+
+  if (editconnection.amazons3_proxy_host.value != "" && 
editconnection.amazons3_proxy_host.value.indexOf("/") != -1)
+  {
+    
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3ProxyHostMustNotIncludeSlash'))");
+    editconnection.amazons3_proxy_host.focus();
+    return false;
+  }
+  
+  return true;
+}
+
+function checkConfigForSave()
+{
+  
+  
+  if (editconnection.aws_access_key.value == "")
+  {
+    
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3AccessKeyShouldNotBeNull'))");
+    
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Server'))");
+    editconnection.aws_access_key.focus();
+    return false;
+  }
+  
+  if (editconnection.aws_secret_key.value == "")
+  {
+    
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3SecretKeyShouldNotBeNull'))");
+    
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Server'))");
+    editconnection.aws_secret_key.focus();
+    return false;
+  }
+  
+  return true;
+}
+//-->
+</script>
\ No newline at end of file

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/editConfiguration_amazons3_proxy.html
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/editConfiguration_amazons3_proxy.html?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/editConfiguration_amazons3_proxy.html
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/editConfiguration_amazons3_proxy.html
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,78 @@
+<!--
+ 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.
+-->
+
+#if($TabName == $ResourceBundle.getString('Amazons3AuthorityConnector.Proxy'))
+
+<table class="displaytable">
+  <tr><td class="separator" colspan="2"><hr/></td></tr>
+
+  <tr>
+    <td class="description">
+      
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3ProxyHostColon'))</nobr>
+    </td>
+    <td class="value">
+      <input size="32" type="text" id="amazons3_proxy_host" 
name="amazons3_proxy_host" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_HOST)" />
+    </td>
+  </tr>
+
+  <tr>
+    <td class="description">
+      
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3ProxyPortColon'))</nobr>
+    </td>
+    <td class="value">
+      <input size="5" type="text" id="amazons3_proxy_port" 
name="amazons3_proxy_port" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_PORT)" />
+    </td>
+  </tr>
+
+  <tr><td class="separator" colspan="2"><hr/></td></tr>
+
+  <tr>
+    <td class="description">
+      
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3ProxyDomainColon'))</nobr>
+    </td>
+    <td class="value">
+      <input size="32" type="text" id="amazons3_proxy_domain" 
name="amazons3_proxy_domain" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_DOMAIN)" />
+    </td>
+  </tr>
+  
+  <tr>
+    <td class="description">
+      
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3ProxyUsernameColon'))</nobr>
+    </td>
+    <td class="value">
+      <input size="16" type="text" id="amazons3_proxy_username" 
name="amazons3_proxy_username" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_USERNAME)" />
+    </td>
+  </tr>
+  <tr>
+    <td class="description">
+      
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3ProxyPasswordColon'))</nobr>
+    </td>
+    <td class="value">
+      <input size="16" type="password" id="amazons3_proxy_pwd" 
name="amazons3_proxy_pwd" value="$Encoder.attributeEscape($AMAZONS3_PROXY_PWD)" 
/>
+    </td>
+  </tr>
+</table>
+
+#else
+
+<input type="hidden" name="amazons3_proxy_host" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_PORT)" />
+<input type="hidden" name="amazons3_proxy_port" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_PORT)" />
+<input type="hidden" name="amazons3_proxy_domain" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_DOMAIN)" />
+<input type="hidden" name="amazons3_proxy_username" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_USERNAME)" />
+<input type="hidden" name="amazons3_proxy_pwd" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_PWD)" />
+
+#end

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/editConfiguration_amazons3_server.html
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/editConfiguration_amazons3_server.html?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/editConfiguration_amazons3_server.html
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/editConfiguration_amazons3_server.html
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,53 @@
+<!--
+ 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.
+-->
+
+#if($TabName == $ResourceBundle.getString('Amazons3AuthorityConnector.Server'))
+
+<table class="displaytable">
+       <tr>
+               <td class="separator" colspan="2"><hr /></td>
+       </tr>
+       <tr>
+               <td class="separator" colspan="2"><hr /></td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.AwsAccessKeyColon'))</nobr>
+               </td>
+               <td class="value"><input size="16" type="text"
+                       id="aws_access_key" name="aws_access_key"
+                       
value="$Encoder.attributeEscape($AMAZONS3_AWS_ACCESS_KEY)" /></td>
+       </tr>
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.AwsSecretKeyColon'))</nobr>
+               </td>
+               <td class="value"><input size="16" type="password"
+                       id="aws_secret_key" name="aws_secret_key"
+                       
value="$Encoder.attributeEscape($AMAZONS3_AWS_SECRET_KEY)" /></td>
+       </tr>
+</table>
+
+#else
+
+
+
+<input type="hidden" name="aws_access_key"
+       value="$Encoder.attributeEscape($AMAZONS3_AWS_ACCESS_KEY)" />
+<input type="hidden" name="aws_secret_key"
+       value="$Encoder.attributeEscape($AMAZONS3_AWS_SECRET_KEY)" />
+
+#end

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/viewConfiguration_amazons3.html
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/viewConfiguration_amazons3.html?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/viewConfiguration_amazons3.html
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/amazons3/viewConfiguration_amazons3.html
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,80 @@
+<!--
+ 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.
+-->
+
+
+
+ <table class="displaytable">
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.AwsAccessKeyColon'))</nobr>
+               </td>
+               <td 
class="value"><nobr>$Encoder.bodyEscape($AMAZONS3_AWS_ACCESS_KEY)</nobr>
+               </td>
+       </tr>
+       
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.AwsSecretKeyColon'))</nobr>
+               </td>
+               <td class="value"><nobr>********</nobr></td>
+       </tr>
+
+       <tr>
+               <td class="separator" colspan="2"><hr /></td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3ProxyHostColon'))</nobr>
+               </td>
+               <td 
class="value"><nobr>$Encoder.bodyEscape($AMAZONS3_PROXY_HOST)</nobr>
+               </td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3ProxyPortColon'))</nobr>
+               </td>
+               <td 
class="value"><nobr>$Encoder.bodyEscape($AMAZONS3_PROXY_PORT)</nobr>
+               </td>
+       </tr>
+
+       <tr>
+               <td class="separator" colspan="2"><hr /></td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3ProxyDomainColon'))</nobr>
+               </td>
+               <td 
class="value"><nobr>$Encoder.bodyEscape($AMAZONS3_PROXY_DOMAIN)</nobr>
+               </td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3ProxyUsernameColon'))</nobr>
+               </td>
+               <td 
class="value"><nobr>$Encoder.bodyEscape($AMAZONS3_PROXY_USERNAME)</nobr>
+               </td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3AuthorityConnector.Amazons3ProxyPasswordColon'))</nobr>
+               </td>
+               <td class="value"><nobr>********</nobr></td>
+       </tr>
+       
+
+       
+</table>
+

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editConfiguration_amazons3.js
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editConfiguration_amazons3.js?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editConfiguration_amazons3.js
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editConfiguration_amazons3.js
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,63 @@
+<!--
+ 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">
+<!--
+function checkConfig()
+{      
+       
+       if (editconnection.amazons3_proxy_port.value != "" && 
!isInteger(editconnection.amazons3_proxy_port.value))
+  {
+    
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3ProxyPortMustBeAnInteger'))");
+    editconnection.amazons3_proxy_port.focus();
+    return false;
+  }
+
+  if (editconnection.amazons3_proxy_host.value != "" && 
editconnection.amazons3_proxy_host.value.indexOf("/") != -1)
+  {
+    
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3ProxyHostMustNotIncludeSlash'))");
+    editconnection.amazons3_proxy_host.focus();
+    return false;
+  }
+  
+  return true;
+}
+
+function checkConfigForSave()
+{
+  
+  
+  if (editconnection.aws_access_key.value == "")
+  {
+    
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3AccessKeyShouldNotBeNull'))");
+    
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Server'))");
+    editconnection.aws_access_key.focus();
+    return false;
+  }
+  
+  if (editconnection.aws_secret_key.value == "")
+  {
+    
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3SecretKeyShouldNotBeNull'))");
+    
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Server'))");
+    editconnection.aws_secret_key.focus();
+    return false;
+  }
+  
+  return true;
+}
+//-->
+</script>
\ No newline at end of file

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editConfiguration_amazons3_proxy.html
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editConfiguration_amazons3_proxy.html?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editConfiguration_amazons3_proxy.html
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editConfiguration_amazons3_proxy.html
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,78 @@
+<!--
+ 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.
+-->
+
+#if($TabName == $ResourceBundle.getString('Amazons3RepositoryConnector.Proxy'))
+
+<table class="displaytable">
+  <tr><td class="separator" colspan="2"><hr/></td></tr>
+
+  <tr>
+    <td class="description">
+      
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3ProxyHostColon'))</nobr>
+    </td>
+    <td class="value">
+      <input size="32" type="text" id="amazons3_proxy_host" 
name="amazons3_proxy_host" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_HOST)" />
+    </td>
+  </tr>
+
+  <tr>
+    <td class="description">
+      
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3ProxyPortColon'))</nobr>
+    </td>
+    <td class="value">
+      <input size="5" type="text" id="amazons3_proxy_port" 
name="amazons3_proxy_port" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_PORT)" />
+    </td>
+  </tr>
+
+  <tr><td class="separator" colspan="2"><hr/></td></tr>
+
+  <tr>
+    <td class="description">
+      
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3ProxyDomainColon'))</nobr>
+    </td>
+    <td class="value">
+      <input size="32" type="text" id="amazons3_proxy_domain" 
name="amazons3_proxy_domain" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_DOMAIN)" />
+    </td>
+  </tr>
+  
+  <tr>
+    <td class="description">
+      
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3ProxyUsernameColon'))</nobr>
+    </td>
+    <td class="value">
+      <input size="16" type="text" id="amazons3_proxy_username" 
name="amazons3_proxy_username" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_USERNAME)" />
+    </td>
+  </tr>
+  <tr>
+    <td class="description">
+      
<nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3ProxyPasswordColon'))</nobr>
+    </td>
+    <td class="value">
+      <input size="16" type="password" id="amazons3_proxy_pwd" 
name="amazons3_proxy_pwd" value="$Encoder.attributeEscape($AMAZONS3_PROXY_PWD)" 
/>
+    </td>
+  </tr>
+</table>
+
+#else
+
+<input type="hidden" name="amazons3_proxy_host" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_PORT)" />
+<input type="hidden" name="amazons3_proxy_port" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_PORT)" />
+<input type="hidden" name="amazons3_proxy_domain" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_DOMAIN)" />
+<input type="hidden" name="amazons3_proxy_username" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_USERNAME)" />
+<input type="hidden" name="amazons3_proxy_pwd" 
value="$Encoder.attributeEscape($AMAZONS3_PROXY_PWD)" />
+
+#end

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editConfiguration_amazons3_server.html
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editConfiguration_amazons3_server.html?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editConfiguration_amazons3_server.html
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editConfiguration_amazons3_server.html
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,58 @@
+<!--
+ 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.
+-->
+
+#if($TabName ==
+$ResourceBundle.getString('Amazons3RepositoryConnector.Server'))
+
+<table class="displaytable">
+       <tr>
+               <td class="separator" colspan="2"><hr /></td>
+       </tr>
+
+
+
+
+       <tr>
+               <td class="separator" colspan="2"><hr /></td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.AwsAccessKeyColon'))</nobr>
+               </td>
+               <td class="value"><input size="16" type="text"
+                       id="aws_access_key" name="aws_access_key"
+                       
value="$Encoder.attributeEscape($AMAZONS3_AWS_ACCESS_KEY)" /></td>
+       </tr>
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.AwsSecretKeyColon'))</nobr>
+               </td>
+               <td class="value"><input size="16" type="password"
+                       id="aws_secret_key" name="aws_secret_key"
+                       
value="$Encoder.attributeEscape($AMAZONS3_AWS_SECRET_KEY)" /></td>
+       </tr>
+</table>
+
+#else
+
+
+
+<input type="hidden" name="aws_access_key"
+       value="$Encoder.attributeEscape($AMAZONS3_AWS_ACCESS_KEY)" />
+<input type="hidden" name="aws_secret_key"
+       value="$Encoder.attributeEscape($AMAZONS3_AWS_SECRET_KEY)" />
+
+#end

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editSpecification_amazons3.js
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editSpecification_amazons3.js?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editSpecification_amazons3.js
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editSpecification_amazons3.js
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,24 @@
+<!--
+ 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">
+<!--
+
+
+
+//-->
+</script>
\ No newline at end of file

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editSpecification_buckets.html
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editSpecification_buckets.html?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editSpecification_buckets.html
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/editSpecification_buckets.html
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,41 @@
+<!--
+ 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.
+-->
+
+
+#if($TabName == 
$ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3Buckets') && 
${SeqNum} == ${SelectedNum})
+
+<table class="displaytable">
+  <tr><td class="separator" colspan="2"><hr/></td></tr>
+  <tr>
+    <td class="description">
+      <nobr>
+        
$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3BucketsColon'))
+      </nobr>
+    </td>
+    <td class="value">
+      <nobr>
+        <input type="text" size="50" name="s${SeqNum}_s3buckets" 
value="$Encoder.attributeEscape($AMAZONS3BUCKETS)" />
+      </nobr>
+    </td>
+  </tr>
+</table>
+
+#else
+
+<input type="hidden" name="s${SeqNum}_s3buckets" 
value="$Encoder.attributeEscape($AMAZONS3BUCKETS)" />
+
+#end

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/viewConfiguration_amazons3.html
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/viewConfiguration_amazons3.html?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/viewConfiguration_amazons3.html
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/viewConfiguration_amazons3.html
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,76 @@
+<!--
+ 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.
+-->
+
+<table class="displaytable">
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.AwsAccessKeyColon'))</nobr>
+               </td>
+               <td 
class="value"><nobr>$Encoder.bodyEscape($AMAZONS3_AWS_ACCESS_KEY)</nobr>
+               </td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.AwsSecretKeyColon'))</nobr>
+               </td>
+               <td class="value"><nobr>********</nobr></td>
+       </tr>
+
+       <tr>
+               <td class="separator" colspan="2"><hr /></td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3ProxyHostColon'))</nobr>
+               </td>
+               <td 
class="value"><nobr>$Encoder.bodyEscape($AMAZONS3_PROXY_HOST)</nobr>
+               </td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3ProxyPortColon'))</nobr>
+               </td>
+               <td 
class="value"><nobr>$Encoder.bodyEscape($AMAZONS3_PROXY_PORT)</nobr>
+               </td>
+       </tr>
+
+       <tr>
+               <td class="separator" colspan="2"><hr /></td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3ProxyDomainColon'))</nobr>
+               </td>
+               <td 
class="value"><nobr>$Encoder.bodyEscape($AMAZONS3_PROXY_DOMAIN)</nobr>
+               </td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3ProxyUsernameColon'))</nobr>
+               </td>
+               <td 
class="value"><nobr>$Encoder.bodyEscape($AMAZONS3_PROXY_USERNAME)</nobr>
+               </td>
+       </tr>
+
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3ProxyPasswordColon'))</nobr>
+               </td>
+               <td class="value"><nobr>********</nobr></td>
+       </tr>
+
+</table>
+

Added: 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/viewSpecification_amazons3.html
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/viewSpecification_amazons3.html?rev=1697991&view=auto
==============================================================================
--- 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/viewSpecification_amazons3.html
 (added)
+++ 
manifoldcf/branches/CONNECTORS-1233/amazons3/connector/src/main/resources/org/apache/manifoldcf/crawler/connectors/amazons3/viewSpecification_amazons3.html
 Wed Aug 26 19:03:55 2015
@@ -0,0 +1,25 @@
+<!--
+ 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.
+-->
+
+<table class="displaytable">
+       <tr>
+               <td 
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('Amazons3RepositoryConnector.Amazons3BucketsColon'))</nobr>
+               </td>
+               <td 
class="value"><nobr>$Encoder.bodyEscape($AMAZONS3BUCKETS)</nobr>
+               </td>
+       </tr>
+</table>

Added: manifoldcf/branches/CONNECTORS-1233/amazons3/pom.xml
URL: 
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1233/amazons3/pom.xml?rev=1697991&view=auto
==============================================================================
--- manifoldcf/branches/CONNECTORS-1233/amazons3/pom.xml (added)
+++ manifoldcf/branches/CONNECTORS-1233/amazons3/pom.xml Wed Aug 26 19:03:55 
2015
@@ -0,0 +1,412 @@
+<?xml version="1.0"?>
+<project
+       xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";
+       xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
+       <parent>
+               <groupId>org.apache.manifoldcf</groupId>
+               <artifactId>mcf-connectors</artifactId>
+               <version>2.1</version>
+       </parent>
+       <modelVersion>4.0.0</modelVersion>
+
+       <packaging>jar</packaging>
+       <artifactId>mcf-amazons3-connector</artifactId>
+       <name>mcf-amazons3-connector</name>
+       <groupId>org.apache.manifoldcf</groupId>
+
+       <developers>
+               <developer>
+                       <name>Gunaratnam Kuhajeyan</name>
+                       <organization></organization>
+                       <organizationUrl></organizationUrl>
+                       <url>kuhajeyan.blogspot.com</url>
+               </developer>
+       </developers>
+
+       <properties>
+               
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+               
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+               <project.http.version>1.14.1-beta</project.http.version>
+               <project.oauth.version>1.14.1-beta</project.oauth.version>
+               <aws-java-sdk.version>1.9.0</aws-java-sdk.version>
+       </properties>
+
+       <build>
+               <defaultGoal>integration-test</defaultGoal>
+               
<sourceDirectory>${basedir}/connector/src/main/java</sourceDirectory>
+               
<testSourceDirectory>${basedir}/connector/src/test/java</testSourceDirectory>
+               <resources>
+                       <resource>
+                               
<directory>${basedir}/connector/src/main/native2ascii</directory>
+                               <includes>
+                                       <include>**/*.properties</include>
+                               </includes>
+                       </resource>
+                       <resource>
+                               
<directory>${basedir}/connector/src/main/resources</directory>
+                               <includes>
+                                       <include>**/*.html</include>
+                                       <include>**/*.js</include>
+                               </includes>
+                       </resource>
+               </resources>
+               <testResources>
+                       <testResource>
+                               
<directory>${basedir}/connector/src/test/resources</directory>
+                       </testResource>
+               </testResources>
+
+               <plugins>
+
+                       <plugin>
+                               <groupId>org.codehaus.mojo</groupId>
+                               
<artifactId>native2ascii-maven-plugin</artifactId>
+                               <version>1.0-beta-1</version>
+                               <configuration>
+                                       <workDir>target/classes</workDir>
+                               </configuration>
+                               <executions>
+                                       <execution>
+                                               <id>native2ascii-utf8</id>
+                                               <goals>
+                                                       
<goal>native2ascii</goal>
+                                               </goals>
+                                               <configuration>
+                                                       
<encoding>UTF8</encoding>
+                                                       <includes>
+                                                               
<include>**/*.properties</include>
+                                                       </includes>
+                                               </configuration>
+                                       </execution>
+                               </executions>
+                       </plugin>
+
+                       <!-- Test plugin configuration -->
+                       <plugin>
+                               <artifactId>maven-dependency-plugin</artifactId>
+                               <executions>
+                                       <execution>
+                                               <id>copy-war</id>
+                                               
<phase>generate-resources</phase>
+                                               <goals>
+                                                       <goal>copy</goal>
+                                               </goals>
+                                               <configuration>
+                                                       
<outputDirectory>target/dependency</outputDirectory>
+                                                       <artifactItems>
+                                                               <artifactItem>
+                                                                       
<groupId>${project.groupId}</groupId>
+                                                                       
<artifactId>mcf-api-service</artifactId>
+                                                                       
<version>${project.version}</version>
+                                                                       
<type>war</type>
+                                                                       
<overWrite>false</overWrite>
+                                                                       
<destFileName>mcf-api-service.war</destFileName>
+                                                               </artifactItem>
+                                                               <artifactItem>
+                                                                       
<groupId>${project.groupId}</groupId>
+                                                                       
<artifactId>mcf-authority-service</artifactId>
+                                                                       
<version>${project.version}</version>
+                                                                       
<type>war</type>
+                                                                       
<overWrite>false</overWrite>
+                                                                       
<destFileName>mcf-authority-service.war</destFileName>
+                                                               </artifactItem>
+                                                               <artifactItem>
+                                                                       
<groupId>${project.groupId}</groupId>
+                                                                       
<artifactId>mcf-crawler-ui</artifactId>
+                                                                       
<version>${project.version}</version>
+                                                                       
<type>war</type>
+                                                                       
<overWrite>false</overWrite>
+                                                                       
<destFileName>mcf-crawler-ui.war</destFileName>
+                                                               </artifactItem>
+                                                       </artifactItems>
+                                               </configuration>
+                                       </execution>
+                               </executions>
+                       </plugin>
+
+                       <plugin>
+                               <groupId>org.apache.maven.plugins</groupId>
+                               <artifactId>maven-surefire-plugin</artifactId>
+                               <configuration>
+                                       <excludes>
+                                               
<exclude>**/*Postgresql*.java</exclude>
+                                               
<exclude>**/*MySQL*.java</exclude>
+                                       </excludes>
+                                       <forkMode>always</forkMode>
+                                       
<workingDirectory>target/test-output</workingDirectory>
+                               </configuration>
+                       </plugin>
+
+                       <plugin>
+                               <groupId>org.apache.maven.plugins</groupId>
+                               <artifactId>maven-failsafe-plugin</artifactId>
+                               <version>2.12.3</version>
+                               <configuration>
+                                       <skipTests>${skipITs}</skipTests>
+                                       <systemPropertyVariables>
+                                               
<crawlerWarPath>../dependency/mcf-crawler-ui.war</crawlerWarPath>
+                                               
<authorityserviceWarPath>../dependency/mcf-authority-service.war</authorityserviceWarPath>
+                                               
<apiWarPath>../dependency/mcf-api-service.war</apiWarPath>
+                                       </systemPropertyVariables>
+                                       <excludes>
+                                               
<exclude>**/*Postgresql*.java</exclude>
+                                               
<exclude>**/*MySQL*.java</exclude>
+                                       </excludes>
+                                       <forkMode>always</forkMode>
+                                       
<workingDirectory>target/test-output</workingDirectory>
+                               </configuration>
+                               <executions>
+                                       <execution>
+                                               <id>integration-test</id>
+                                               <goals>
+                                                       
<goal>integration-test</goal>
+                                               </goals>
+                                       </execution>
+                                       <execution>
+                                               <id>verify</id>
+                                               <goals>
+                                                       <goal>verify</goal>
+                                               </goals>
+                                       </execution>
+                               </executions>
+                       </plugin>
+
+               </plugins>
+       </build>
+
+       <dependencies>
+               <dependency>
+                       <groupId>${project.groupId}</groupId>
+                       <artifactId>mcf-core</artifactId>
+                       <version>${project.version}</version>
+               </dependency>
+               <dependency>
+                       <groupId>${project.groupId}</groupId>
+                       <artifactId>mcf-connector-common</artifactId>
+                       <version>${project.version}</version>
+               </dependency>
+               <dependency>
+                       <groupId>${project.groupId}</groupId>
+                       <artifactId>mcf-pull-agent</artifactId>
+                       <version>${project.version}</version>
+               </dependency>
+               <dependency>
+                       <groupId>${project.groupId}</groupId>
+                       <artifactId>mcf-agents</artifactId>
+                       <version>${project.version}</version>
+               </dependency>
+               <dependency>
+                       <groupId>${project.groupId}</groupId>
+                       <artifactId>mcf-ui-core</artifactId>
+                       <version>${project.version}</version>
+               </dependency>
+               <dependency>
+                       <groupId>commons-lang</groupId>
+                       <artifactId>commons-lang</artifactId>
+                       <version>${commons-lang.version}</version>
+                       <type>jar</type>
+               </dependency>
+
+               <!-- Testing dependencies -->
+
+               <dependency>
+                       <groupId>junit</groupId>
+                       <artifactId>junit</artifactId>
+                       <version>${junit.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>${project.groupId}</groupId>
+                       <artifactId>mcf-core</artifactId>
+                       <version>${project.version}</version>
+                       <type>test-jar</type>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>${project.groupId}</groupId>
+                       <artifactId>mcf-agents</artifactId>
+                       <version>${project.version}</version>
+                       <type>test-jar</type>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>${project.groupId}</groupId>
+                       <artifactId>mcf-pull-agent</artifactId>
+                       <version>${project.version}</version>
+                       <type>test-jar</type>
+                       <scope>test</scope>
+               </dependency>
+
+               <dependency>
+                       <groupId>postgresql</groupId>
+                       <artifactId>postgresql</artifactId>
+                       <version>${postgresql.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.hsqldb</groupId>
+                       <artifactId>hsqldb</artifactId>
+                       <version>${hsqldb.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>mysql</groupId>
+                       <artifactId>mysql-connector-java</artifactId>
+                       <version>${mysql.version}</version>
+                       <scope>test</scope>
+               </dependency>
+
+               <dependency>
+                       <groupId>${project.groupId}</groupId>
+                       <artifactId>mcf-api-service</artifactId>
+                       <version>${project.version}</version>
+                       <type>war</type>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>${project.groupId}</groupId>
+                       <artifactId>mcf-authority-service</artifactId>
+                       <version>${project.version}</version>
+                       <type>war</type>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>${project.groupId}</groupId>
+                       <artifactId>mcf-crawler-ui</artifactId>
+                       <version>${project.version}</version>
+                       <type>war</type>
+                       <scope>test</scope>
+               </dependency>
+
+               <dependency>
+                       <groupId>org.eclipse.jetty</groupId>
+                       <artifactId>jetty-server</artifactId>
+                       <version>${jetty.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.eclipse.jetty</groupId>
+                       <artifactId>jetty-util</artifactId>
+                       <version>${jetty.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.eclipse.jetty</groupId>
+                       <artifactId>jetty-webapp</artifactId>
+                       <version>${jetty.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.eclipse.jetty</groupId>
+                       <artifactId>jetty-servlet</artifactId>
+                       <version>${jetty.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.eclipse.jetty</groupId>
+                       <artifactId>jetty-http</artifactId>
+                       <version>${jetty.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.eclipse.jetty</groupId>
+                       <artifactId>jetty-io</artifactId>
+                       <version>${jetty.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.eclipse.jetty</groupId>
+                       <artifactId>jetty-security</artifactId>
+                       <version>${jetty.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.eclipse.jetty</groupId>
+                       <artifactId>jetty-continuation</artifactId>
+                       <version>${jetty.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.eclipse.jetty</groupId>
+                       <artifactId>jetty-xml</artifactId>
+                       <version>${jetty.version}</version>
+                       <scope>test</scope>
+               </dependency>
+
+               <dependency>
+                       <groupId>org.mortbay.jetty</groupId>
+                       <artifactId>jsp-api-2.1-glassfish</artifactId>
+                       <version>${glassfish.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.mortbay.jetty</groupId>
+                       <artifactId>jsp-2.1-glassfish</artifactId>
+                       <version>${glassfish.version}</version>
+                       <scope>test</scope>
+               </dependency>
+
+               <dependency>
+                       <groupId>org.slf4j</groupId>
+                       <artifactId>slf4j-api</artifactId>
+                       <version>${slf4j.version}</version>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.slf4j</groupId>
+                       <artifactId>slf4j-simple</artifactId>
+                       <version>${slf4j.version}</version>
+                       <scope>test</scope>
+               </dependency>
+
+               <dependency>
+                       <groupId>commons-logging</groupId>
+                       <artifactId>commons-logging</artifactId>
+                       <version>1.1.1</version>
+                       <scope>test</scope>
+               </dependency>
+
+               <dependency>
+                       <groupId>log4j</groupId>
+                       <artifactId>log4j</artifactId>
+                       <version>1.2.16</version>
+                       <scope>provided</scope>
+                       <type>jar</type>
+               </dependency>
+               <dependency>
+                       <groupId>com.googlecode.json-simple</groupId>
+                       <artifactId>json-simple</artifactId>
+                       <version>1.1</version>
+               </dependency>
+               <dependency>
+                       <groupId>commons-codec</groupId>
+                       <artifactId>commons-codec</artifactId>
+                       <version>1.8</version>
+               </dependency>
+               <dependency>
+                       <groupId>com.amazonaws</groupId>
+                       <artifactId>aws-java-sdk-s3</artifactId>
+                       <version>${aws-java-sdk.version}</version>
+               </dependency>
+               <dependency>
+                       <groupId>com.amazonaws</groupId>
+                       <artifactId>aws-java-sdk</artifactId>
+                       <version>${aws-java-sdk.version}</version>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.tika</groupId>
+                       <artifactId>tika-parsers</artifactId>
+                       <version>${tika.version}</version>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.tika</groupId>
+                       <artifactId>tika-core</artifactId>
+                       <version>${tika.version}</version>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.tika</groupId>
+                       <artifactId>tika-java7</artifactId>
+                       <version>${tika.version}</version>
+               </dependency>
+       </dependencies>
+</project>


Reply via email to