class GlueMetastoreClientDelegate {

  public org.apache.hadoop.hive.metastore.api.Function getFunction(String dbName, String functionName)
      throws TException {
    try {
      UserDefinedFunction userDefinedFunction = glueMetastore.getUserDefinedFunction(dbName, functionName);
      return CatalogToHiveConverter.convertFunction(dbName, userDefinedFunction);
    } catch (AmazonServiceException e) {
      logger.error(e);
      throw CatalogToHiveConverter.wrapInHiveException(e);
    } catch (Exception e) {
      String msg = "Unable to get Function: ";
      logger.error(msg, e);
      throw new MetaException(msg + e);
    }
  }

  public  GlueMetastoreClientDelegate(HiveConf conf, AWSGlueMetastore glueMetastore,
                                     Warehouse wh);

}