Support encrypted SharePoint passwords
diff --git a/src/com/google/enterprise/adaptor/sharepoint/SharePointAdaptor.java b/src/com/google/enterprise/adaptor/sharepoint/SharePointAdaptor.java
index 3c54fe7..cd4842a 100644
--- a/src/com/google/enterprise/adaptor/sharepoint/SharePointAdaptor.java
+++ b/src/com/google/enterprise/adaptor/sharepoint/SharePointAdaptor.java
@@ -186,7 +186,8 @@
Config config = context.getConfig();
virtualServer = config.getValue("sharepoint.server");
String username = config.getValue("sharepoint.username");
- String password = config.getValue("sharepoint.password");
+ String password = context.getSensitiveValueDecoder().decodeValue(
+ config.getValue("sharepoint.password"));
log.log(Level.CONFIG, "VirtualServer: {0}", virtualServer);
log.log(Level.CONFIG, "Username: {0}", username);
diff --git a/test/com/google/enterprise/adaptor/sharepoint/MockAdaptorContext.java b/test/com/google/enterprise/adaptor/sharepoint/MockAdaptorContext.java
index 9ebccd0..42d54e1 100644
--- a/test/com/google/enterprise/adaptor/sharepoint/MockAdaptorContext.java
+++ b/test/com/google/enterprise/adaptor/sharepoint/MockAdaptorContext.java
@@ -45,6 +45,13 @@
};
private final Config config;
private final DocIdPusher pusher;
+ private final SensitiveValueDecoder sensitiveValueDecoder
+ = new SensitiveValueDecoder() {
+ @Override
+ public String decodeValue(String nonReadable) {
+ return nonReadable;
+ }
+ };
public MockAdaptorContext(Config config, DocIdPusher pusher) {
if (config == null) {
@@ -85,7 +92,7 @@
@Override
public SensitiveValueDecoder getSensitiveValueDecoder() {
- throw new UnsupportedOperationException();
+ return sensitiveValueDecoder;
}
@Override