You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by tu...@apache.org on 2014/08/21 20:58:46 UTC
svn commit: r1619517 - in
/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common:
CHANGES.txt src/main/java/org/apache/hadoop/crypto/key/KeyProvider.java
src/main/java/org/apache/hadoop/crypto/key/KeyShell.java
Author: tucu
Date: Thu Aug 21 18:58:45 2014
New Revision: 1619517
URL: http://svn.apache.org/r1619517
Log:
HADOOP-10534. KeyProvider getKeysMetadata should take a list of names
rather than returning all keys. (omalley)
Conflicts:
hadoop-common-project/hadoop-common/CHANGES.txt
Modified:
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyProvider.java
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyShell.java
Modified: hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt?rev=1619517&r1=1619516&r2=1619517&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt (original)
+++ hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt Thu Aug 21 18:58:45 2014
@@ -111,6 +111,9 @@ Release 2.6.0 - UNRELEASED
HADOOP-10431. Change visibility of KeyStore.Options getter methods to
public. (tucu)
+ HADOOP-10534. KeyProvider getKeysMetadata should take a list of names
+ rather than returning all keys. (omalley)
+
OPTIMIZATIONS
HADOOP-10838. Byte array native checksumming. (James Thomas via todd)
Modified: hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyProvider.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyProvider.java?rev=1619517&r1=1619516&r2=1619517&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyProvider.java (original)
+++ hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyProvider.java Thu Aug 21 18:58:45 2014
@@ -312,20 +312,16 @@ public abstract class KeyProvider {
/**
- * Get the key metadata for all keys.
- *
- * @return a Map with all the keys and their metadata
+ * Get key metadata in bulk.
+ * @param names the names of the keys to get
* @throws IOException
*/
- public Map<String, Metadata> getKeysMetadata() throws IOException {
- Map<String, Metadata> keysMetadata = new LinkedHashMap<String, Metadata>();
- for (String key : getKeys()) {
- Metadata meta = getMetadata(key);
- if (meta != null) {
- keysMetadata.put(key, meta);
- }
+ public Metadata[] getKeysMetadata(String... names) throws IOException {
+ Metadata[] result = new Metadata[names.length];
+ for (int i=0; i < names.length; ++i) {
+ result[i] = getMetadata(names[i]);
}
- return keysMetadata;
+ return result;
}
/**
Modified: hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyShell.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyShell.java?rev=1619517&r1=1619516&r2=1619517&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyShell.java (original)
+++ hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyShell.java Thu Aug 21 18:58:45 2014
@@ -230,16 +230,16 @@ public class KeyShell extends Configured
}
public void execute() throws IOException {
- List<String> keys;
try {
+ List<String> keys = provider.getKeys();
out.println("Listing keys for KeyProvider: " + provider.toString());
if (metadata) {
- Map<String, Metadata> keysMeta = provider.getKeysMetadata();
- for (Map.Entry<String, Metadata> entry : keysMeta.entrySet()) {
- out.println(entry.getKey() + " : " + entry.getValue());
+ Metadata[] meta =
+ provider.getKeysMetadata(keys.toArray(new String[keys.size()]));
+ for(int i=0; i < meta.length; ++i) {
+ out.println(keys.get(i) + " : " + meta[i]);
}
} else {
- keys = provider.getKeys();
for (String keyName : keys) {
out.println(keyName);
}