def __init__(self, fields, name=None, collection_name=None, basename=''):
    if isinstance(fields, MessageFieldsSchema):
      self._data = fields._data
      name = fields.name
      collection_name = fields.collection_name
    elif isinstance(fields, dict):
      self._data = _DictToTuple(fields)
    elif isinstance(fields, (list, tuple)):
      self._data = tuple(fields)
    else:
      error_msg = ('Can\'t create MessageFieldsSchema from object of type %s. '
                   'Must be a dictionary or iterable.' % (fields.__class__,))
      raise TypeError(error_msg)

    self.name = name or self._DefaultName(basename=basename)
    self.collection_name = collection_name or (self.name + 'Collection')
-- cmd_val== 0:delete; 1:create; 2:update
dataset/ETHPy150Open GoogleCloudPlatform/endpoints-proto-datastore/endpoints_proto_datastore/utils.py/MessageFieldsSchema.__init__--crossover with--dataset/ETHPy150Open openstack/group-based-policy/gbpservice/tests/contrib/gbpfunctests/libs/config_libs.py/Gbp_Config.gbp_classif_config