{
PRODUCTURI => {:type => ::Thrift::Types::STRING, :name => 'productUri', :optional => true},
GATEWAYID => {:type => ::Thrift::Types::STRING, :name => 'gatewayId', :optional => true},
PARENTPRODUCTURI => {:type => ::Thrift::Types::STRING, :name => 'parentProductUri', :optional => true},
PRODUCTNAME => {:type => ::Thrift::Types::STRING, :name => 'productName', :optional => true},
PRODUCTDESCRIPTION => {:type => ::Thrift::Types::STRING, :name => 'productDescription', :optional => true},
OWNERNAME => {:type => ::Thrift::Types::STRING, :name => 'ownerName', :optional => true},
DATAPRODUCTTYPE => {:type => ::Thrift::Types::I32, :name => 'dataProductType', :optional => true, :enum_class => ::DataProductType},
PRODUCTSIZE => {:type => ::Thrift::Types::I32, :name => 'productSize', :optional => true},
CREATIONTIME => {:type => ::Thrift::Types::I64, :name => 'creationTime', :optional => true},
LASTMODIFIEDTIME => {:type => ::Thrift::Types::I64, :name => 'lastModifiedTime', :optional => true},
PRODUCTMETADATA => {:type => ::Thrift::Types::MAP, :name => 'productMetadata', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRING}, :optional => true},
REPLICALOCATIONS => {:type => ::Thrift::Types::LIST, :name => 'replicaLocations', :element => {:type => ::Thrift::Types::STRUCT, :class => ::DataReplicaLocationModel}, :optional => true}
}