Пример #1
0
  def get_mapping_definitions(cls, object_class):
    """Get column definitions for allowed (un)mappings for object_class.

    For an Audit-scope object, generates snapshot mappings for all allowed
    mappings with snapshottable objects and direct mappings with all allowed
    mappings with non-snapshottable objects.

    For a normal object, generates direct mappings with all allowed mappings.

    For every direct mapping column generated it also generates an unmapping
    column.
    """

    definitions = {}

    definitions.update(cls._generate_mapping_definition(
        rules.get_mapping_rules().get(object_class.__name__, set()),
        cls.MAPPING_PREFIX, "map:{}",
    ))
    definitions.update(cls._generate_mapping_definition(
        rules.get_snapshot_mapping_rules().get(object_class.__name__, set()),
        cls.SNAPSHOT_MAPPING_PREFIX, "map:{} versions",
    ))
    definitions.update(cls._generate_mapping_definition(
        rules.get_unmapping_rules().get(object_class.__name__, set()),
        cls.UNMAPPING_PREFIX, "unmap:{}",
    ))
    return definitions
Пример #2
0
  def get_mapping_definitions(cls, object_class):
    """Get column definitions for allowed (un)mappings for object_class.

    For an Audit-scope object, generates snapshot mappings for all allowed
    mappings with snapshottable objects and direct mappings with all allowed
    mappings with non-snapshottable objects.

    For a normal object, generates direct mappings with all allowed mappings.

    For every direct mapping column generated it also generates an unmapping
    column.
    """

    definitions = {}

    definitions.update(cls._generate_mapping_definition(
        rules.get_mapping_rules().get(object_class.__name__, set()),
        cls.MAPPING_PREFIX, "map:{}",
    ))
    definitions.update(cls._generate_mapping_definition(
        rules.get_snapshot_mapping_rules().get(object_class.__name__, set()),
        cls.SNAPSHOT_MAPPING_PREFIX, "map:{} versions",
    ))
    definitions.update(cls._generate_mapping_definition(
        rules.get_unmapping_rules().get(object_class.__name__, set()),
        cls.UNMAPPING_PREFIX, "unmap:{}",
    ))
    return definitions
Пример #3
0
def get_mapping_names(class_name):
    """Get mapping, unmapping and snapshot mapping column names."""
    map_rules = rules.get_mapping_rules().get(class_name) or set()
    unmap_rules = rules.get_unmapping_rules().get(class_name) or set()
    unmap_sn_rules = rules.get_snapshot_mapping_rules().get(
        class_name) or set()

    format_rules = [("map:{}", map_rules), ("unmap:{}", unmap_rules),
                    ("map:{} versions", unmap_sn_rules)]

    column_names = set()
    for format_, rule_set in format_rules:
        pretty_rules = (title_from_camelcase(r) for r in rule_set)
        column_names.update(format_.format(r) for r in pretty_rules)

    return column_names
Пример #4
0
def get_mapping_names(class_name):
  """Get mapping, unmapping and snapshot mapping column names."""
  map_rules = rules.get_mapping_rules().get(class_name) or set()
  unmap_rules = rules.get_unmapping_rules().get(class_name) or set()
  unmap_sn_rules = rules.get_snapshot_mapping_rules().get(class_name) or set()

  format_rules = [("map:{}", map_rules),
                  ("unmap:{}", unmap_rules),
                  ("map:{} versions", unmap_sn_rules)]

  column_names = set()
  for format_, rule_set in format_rules:
    pretty_rules = (title_from_camelcase(r) for r in rule_set)
    column_names.update(format_.format(r) for r in pretty_rules)

  return column_names