|
@@ -66,6 +66,7 @@ import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.GetBlo
|
|
|
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.GetContentSummaryRequestProto;
|
|
|
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.GetDatanodeReportRequestProto;
|
|
|
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.GetDelegationTokenRequestProto;
|
|
|
+import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.GetDelegationTokenResponseProto;
|
|
|
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.GetFileInfoRequestProto;
|
|
|
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.GetFileInfoResponseProto;
|
|
|
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.GetFileLinkInfoRequestProto;
|
|
@@ -110,6 +111,7 @@ import org.apache.hadoop.ipc.ProtocolMetaInterface;
|
|
|
import org.apache.hadoop.ipc.RPC;
|
|
|
import org.apache.hadoop.ipc.RpcClientUtil;
|
|
|
import org.apache.hadoop.security.AccessControlException;
|
|
|
+import org.apache.hadoop.security.proto.SecurityProtos.TokenProto;
|
|
|
import org.apache.hadoop.security.token.Token;
|
|
|
|
|
|
import com.google.protobuf.ByteString;
|
|
@@ -758,7 +760,9 @@ public class ClientNamenodeProtocolTranslatorPB implements
|
|
|
.setRenewer(renewer.toString())
|
|
|
.build();
|
|
|
try {
|
|
|
- return PBHelper.convertDelegationToken(rpcProxy.getDelegationToken(null, req).getToken());
|
|
|
+ GetDelegationTokenResponseProto resp = rpcProxy.getDelegationToken(null, req);
|
|
|
+ return resp.hasToken() ? PBHelper.convertDelegationToken(resp.getToken())
|
|
|
+ : null;
|
|
|
} catch (ServiceException e) {
|
|
|
throw ProtobufHelper.getRemoteException(e);
|
|
|
}
|