def __init__(self, oneof, java_package):
     entity_name = oneof.oneof_name
     self.untyped_class_name = \
         casing_utils.get_untyped_resource_name_class_name(entity_name)
     self.parent_interface = \
         casing_utils.get_parent_resource_name_class_name(oneof.oneof_name)
     self.untyped_package_name = java_package
 def test_parent_resource_name_generation(self, run_protoc_V2, oneof):
     generated_parent = \
         casing_utils.get_parent_resource_name_class_name(oneof)
     parent_filename_fragment = \
         casing_utils.get_parent_resource_name_lower_underscore(oneof)
     check_output(generated_parent, TEST_OUTPUT_DIR_V2, PROTOC_OUTPUT_DIR,
                  TEST_DIR_GAPIC_V2, 'java_' + parent_filename_fragment)
 def __init__(self, oneof, java_package):
     entity_name = oneof.oneof_name
     self.class_name = \
         casing_utils.get_resource_name_factory_class_name(entity_name)
     self.package_name = java_package
     self.resource_class_name = \
         casing_utils.get_parent_resource_name_class_name(entity_name)
     self.untyped_class_name = \
         casing_utils.get_untyped_resource_name_class_name(entity_name)
     self.single_resource_types = [{
         'resourceTypeClassName':
         resource.className(),
         'resourceTypeVarName':
         resource.varName(),
         'resourcePackage':
         resource.package(),
     } for resource in (ResourceName(x, java_package, oneof)
                        for x in oneof.resource_list)]
     self.fixed_resource_types = [{
         'resourceTypeClassName':
         resource.className(),
         'resourceTypeVarName':
         resource.varName(),
         'resourcePackage':
         resource.package(),
     } for resource in (ResourceNameFixed(x, java_package, oneof)
                        for x in oneof.fixed_resource_list)]
     self.resource_types = (self.single_resource_types +
                            self.fixed_resource_types)
    def __init__(self, oneof, java_package):
        super(UntypedResourceName, self).__init__(
            casing_utils.get_untyped_resource_name_class_name(
                oneof.oneof_name), java_package)

        self.parent_interface = \
            casing_utils.get_parent_resource_name_class_name(oneof.oneof_name)
        self.extension_keyword = 'extends'
Esempio n. 5
0
 def __init__(self, fixed_config, java_package, oneof):
     self.format_name_upper = \
         casing_utils.get_fixed_resource_type_class_name(
             fixed_config.java_entity_name)
     self.fixed_value = fixed_config.fixed_value
     self.package_name = java_package
     if oneof:
         self.parent_interface = casing_utils.get_parent_resource_name_class_name(
             oneof.oneof_name)
         self.extension_keyword = 'extends'
     else:
         self.parent_interface = 'ResourceName'
         self.extension_keyword = 'implements'
Esempio n. 6
0
    def __init__(self, oneof, java_package, pattern_strings):
        super(ParentResourceName, self).__init__(
            casing_utils.get_parent_resource_name_class_name(oneof.oneof_name),
            java_package)
        symbol_table = SymbolTable()

        pattern_to_id_segments = OrderedDict([(p, get_id_segments(p))
                                              for p in pattern_strings
                                              if not is_fixed_pattern(p)])

        self.has_fixed_patterns = \
            len(pattern_to_id_segments) < len(pattern_strings)
        self.has_formattable_patterns = len(pattern_to_id_segments) > 0

        segment_to_segment_symbols = OrderedDict()
        # Keep segment IDs to symbols in a dictionary, so that we
        # do not re-create a new symbol every time.
        for segments in pattern_to_id_segments.values():
            for seg in segments:
                if seg in segment_to_segment_symbols:
                    continue
                symbol = symbol_table.getNewSymbol(
                    casing_utils.lower_underscore_to_lower_camel(seg))
                segment_to_segment_symbols[seg] = symbol

        self.format_fields = [
            get_format_field(segment, segment_symbol)
            for segment, segment_symbol in segment_to_segment_symbols.items()
        ]
        if self.format_fields:
            self.format_fields[0]['not_first'] = False
            self.format_fields[-1]['not_last'] = False

        self.patterns = [
            ResourceNamePattern(
                pattern,
                get_format_fields_for_pattern(pattern, pattern_to_id_segments,
                                              segment_to_segment_symbols))
            for pattern in pattern_strings
        ]

        self.has_no_single_pattern_subclasses = \
            not oneof.has_deprecated_collections

        if len(self.patterns) > 0:
            self.first_pattern = self.patterns[0]
            self.patterns[0].set_first()
            self.patterns[0].set_short_builder_name()
            self.patterns[-1].set_last()
    def __init__(self, collection_config, java_package, oneof):
        symbol_table = SymbolTable()

        entity_name = collection_config.java_entity_name
        name_template = path_template.PathTemplate(
            collection_config.name_pattern)
        id_segments = [
            seg.literal for seg in name_template.segments
            if seg.kind == path_template._BINDING
        ]

        self.format_name_upper = casing_utils.get_resource_type_class_name(
            entity_name)
        self.format_name_lower = casing_utils.get_resource_type_var_name(
            entity_name)
        self.type_name_upper = casing_utils.get_resource_type_from_class_name(
            self.format_name_upper)
        if oneof:
            self.parent_interface = \
                casing_utils.get_parent_resource_name_class_name(
                    oneof.oneof_name)
            self.extension_keyword = 'extends'
        else:
            self.parent_interface = 'ResourceName'
            self.extension_keyword = 'implements'
        self.parameter_list = [{
            'parameter':
            symbol_table.getNewSymbol(
                casing_utils.lower_underscore_to_lower_camel(lit)),
            'parameter_name':
            lit,
            'not_first':
            True,
            'not_last':
            True,
        } for lit in id_segments]
        self.parameter_list[0]['not_first'] = False
        self.parameter_list[-1]['not_last'] = False
        self.format_fields = [{
            'upper':
            casing_utils.lower_underscore_to_upper_camel(f['parameter_name']),
            'lower':
            f['parameter'],
            'parameter_name_in_map':
            casing_utils.lower_underscore_to_lower_camel(f['parameter_name']),
        } for f in self.parameter_list]
        self.format_string = collection_config.name_pattern
        self.package_name = java_package
    def __init__(self, collection_config, java_package, oneof):
        super(ResourceName, self).__init__(
            casing_utils.get_resource_type_class_name(
                collection_config.java_entity_name), java_package)
        symbol_table = SymbolTable()

        id_segments = get_id_segments(collection_config.name_pattern)
        self.format_name_lower = casing_utils.get_resource_type_var_name(
            collection_config.java_entity_name)
        self.type_name_upper = casing_utils.get_resource_type_from_class_name(
            self.class_name)
        self.builder_parent_class = ""
        if oneof:
            self.parent_interface = \
                casing_utils.get_parent_resource_name_class_name(
                    oneof.oneof_name)
            self.extension_keyword = 'extends'
            self.deprecated = True
            # TODO: Remove builder_parent_class after we delete the deprecated
            # per-pattern resource name subclasses
            if oneof.pattern_strings:
                self.builder_parent_class = self.parent_interface
        else:
            self.parent_interface = 'ResourceName'
            self.extension_keyword = 'implements'
            self.deprecated = False
        self.parameter_list = [{
            'parameter':
            symbol_table.getNewSymbol(
                casing_utils.lower_underscore_to_lower_camel(lit)),
            'parameter_name':
            lit,
            'not_first':
            True,
            'not_last':
            True,
        } for lit in id_segments]
        self.parameter_list[0]['not_first'] = False
        self.parameter_list[-1]['not_last'] = False
        self.format_fields = [{
            'upper':
            casing_utils.lower_underscore_to_upper_camel(f['parameter_name']),
            'lower':
            f['parameter'],
            'parameter_name_in_map':
            casing_utils.lower_underscore_to_lower_camel(f['parameter_name']),
        } for f in self.parameter_list]
        self.format_string = collection_config.name_pattern
    def __init__(self, fixed_config, java_package, oneof):
        super(ResourceNameFixed, self).__init__(
            casing_utils.get_fixed_resource_type_class_name(
                fixed_config.java_entity_name), java_package)

        self.fixed_value = fixed_config.fixed_value
        if oneof:
            self.parent_interface = \
                casing_utils.get_parent_resource_name_class_name(
                    oneof.oneof_name)
            self.extension_keyword = 'extends'
            self.deprecated = True
        else:
            self.parent_interface = 'ResourceName'
            self.extension_keyword = 'implements'
            self.deprecated = False
    def __init__(self, oneof, java_package):
        super(ResourceNameFactory, self).__init__(
            casing_utils.get_resource_name_factory_class_name(
                oneof.oneof_name), java_package)

        self.resource_class_name = \
            casing_utils.get_parent_resource_name_class_name(oneof.oneof_name)
        self.untyped_class_name = \
            casing_utils.get_untyped_resource_name_class_name(oneof.oneof_name)
        self.single_resource_types = [{
            'resource_type_class_name': resource.class_name,
            'resource_type_var_name': resource.var_name,
            'resource_package': resource.package,
        } for resource in (ResourceName(x, java_package, oneof)
                           for x in oneof.legacy_resource_list)]
        self.fixed_resource_types = [{
            'resource_type_class_name': resource.class_name,
            'resource_type_var_name': resource.var_name,
            'resource_package': resource.package,
        } for resource in (ResourceNameFixed(x, java_package, oneof)
                           for x in oneof.legacy_fixed_resource_list)]
        self.resource_types = (self.single_resource_types +
                               self.fixed_resource_types)
Esempio n. 11
0
 def __init__(self, oneof, java_package):
     entity_name = oneof.oneof_name
     self.class_name = casing_utils.get_parent_resource_name_class_name(
         entity_name)
     self.package_name = java_package