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'
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'
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)
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