org.apache.hadoop.hive.metastore
Class TUGIBasedProcessor<I extends ThriftHiveMetastore.Iface>
java.lang.Object
org.apache.thrift.TBaseProcessor
com.facebook.fb303.FacebookService.Processor
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore.Processor<ThriftHiveMetastore.Iface>
org.apache.hadoop.hive.metastore.TSetIpAddressProcessor<ThriftHiveMetastore.Iface>
org.apache.hadoop.hive.metastore.TUGIBasedProcessor<I>
- All Implemented Interfaces:
- org.apache.thrift.TProcessor
public class TUGIBasedProcessor<I extends ThriftHiveMetastore.Iface>
- extends TSetIpAddressProcessor<ThriftHiveMetastore.Iface>
TUGIBasedProcessor is used in unsecure mode for thrift metastore client server communication.
This processor checks whether the first rpc call after connection is set up is set_ugi()
through which client sends ugi to server. Processor then perform all subsequent rpcs on the
connection using ugi.doAs() so all actions are performed in client user context.
Note that old clients will never call set_ugi() and thus ugi will never be received on server
side, in which case server exhibits previous behavior and continues as usual.
Method Summary |
boolean |
process(org.apache.thrift.protocol.TProtocol in,
org.apache.thrift.protocol.TProtocol out)
|
protected void |
setIpAddress(org.apache.thrift.protocol.TProtocol in)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TUGIBasedProcessor
public TUGIBasedProcessor(I iface)
throws SecurityException,
NoSuchFieldException,
IllegalArgumentException,
IllegalAccessException,
NoSuchMethodException,
InvocationTargetException
- Throws:
SecurityException
NoSuchFieldException
IllegalArgumentException
IllegalAccessException
NoSuchMethodException
InvocationTargetException
process
public boolean process(org.apache.thrift.protocol.TProtocol in,
org.apache.thrift.protocol.TProtocol out)
throws org.apache.thrift.TException
- Specified by:
process
in interface org.apache.thrift.TProcessor
- Overrides:
process
in class TSetIpAddressProcessor<ThriftHiveMetastore.Iface>
- Throws:
org.apache.thrift.TException
setIpAddress
protected void setIpAddress(org.apache.thrift.protocol.TProtocol in)
- Overrides:
setIpAddress
in class TSetIpAddressProcessor<ThriftHiveMetastore.Iface>
Copyright © 2011 The Apache Software Foundation