public function __construct($vals = null)
 {
     if (!isset(self::$_TSPEC)) {
         self::$_TSPEC = array(1 => array('var' => 'tableName', 'type' => TType::STRING), 2 => array('var' => 'dbName', 'type' => TType::STRING), 3 => array('var' => 'owner', 'type' => TType::STRING), 4 => array('var' => 'createTime', 'type' => TType::I32), 5 => array('var' => 'lastAccessTime', 'type' => TType::I32), 6 => array('var' => 'retention', 'type' => TType::I32), 7 => array('var' => 'sd', 'type' => TType::STRUCT, 'class' => 'StorageDescriptor'), 8 => array('var' => 'partitionKeys', 'type' => TType::LST, 'etype' => TType::STRUCT, 'elem' => array('type' => TType::STRUCT, 'class' => 'FieldSchema')), 9 => array('var' => 'parameters', 'type' => TType::MAP, 'ktype' => TType::STRING, 'vtype' => TType::STRING, 'key' => array('type' => TType::STRING), 'val' => array('type' => TType::STRING)), 10 => array('var' => 'viewOriginalText', 'type' => TType::STRING), 11 => array('var' => 'viewExpandedText', 'type' => TType::STRING), 12 => array('var' => 'tableType', 'type' => TType::STRING), 13 => array('var' => 'privileges', 'type' => TType::STRUCT, 'class' => 'PrincipalPrivilegeSet'));
     }
     if (is_array($vals)) {
         if (isset($vals['tableName'])) {
             $this->tableName = $vals['tableName'];
         }
         if (isset($vals['dbName'])) {
             $this->dbName = $vals['dbName'];
         }
         if (isset($vals['owner'])) {
             $this->owner = $vals['owner'];
         }
         if (isset($vals['createTime'])) {
             $this->createTime = $vals['createTime'];
         }
         if (isset($vals['lastAccessTime'])) {
             $this->lastAccessTime = $vals['lastAccessTime'];
         }
         if (isset($vals['retention'])) {
             $this->retention = $vals['retention'];
         }
         if (isset($vals['sd'])) {
             $this->sd = $vals['sd'];
         }
         if (isset($vals['partitionKeys'])) {
             $this->partitionKeys = $vals['partitionKeys'];
         }
         if (isset($vals['parameters'])) {
             $this->parameters = $vals['parameters'];
         }
         if (isset($vals['viewOriginalText'])) {
             $this->viewOriginalText = $vals['viewOriginalText'];
         }
         if (isset($vals['viewExpandedText'])) {
             $this->viewExpandedText = $vals['viewExpandedText'];
         }
         if (isset($vals['tableType'])) {
             $this->tableType = $vals['tableType'];
         }
         if (isset($vals['privileges'])) {
             $this->privileges = $vals['privileges'];
         }
     }
 }