in python/rpdk/java/resolver.py [0:0]
def translate_type(resolved_type):
if resolved_type.container == ContainerType.MODEL:
return resolved_type.type
if resolved_type.container == ContainerType.PRIMITIVE:
try:
primitive_format = PRIMITIVE_TYPES[resolved_type.type][
resolved_type.type_format
]
except KeyError:
primitive_format = PRIMITIVE_TYPES[resolved_type.type][FORMAT_DEFAULT]
LOG.error(
"Could not find specified format '%s' for type '%s'. "
"Defaulting to '%s'",
resolved_type.type_format,
resolved_type.type,
primitive_format,
)
return primitive_format
if resolved_type.container == ContainerType.MULTIPLE:
return "Object"
item_type = translate_type(resolved_type.type)
if resolved_type.container == ContainerType.DICT:
key_type = PRIMITIVE_TYPES["string"]["default"]
return f"Map<{key_type}, {item_type}>"
if resolved_type.container == ContainerType.LIST:
return f"List<{item_type}>"
if resolved_type.container == ContainerType.SET:
return f"Set<{item_type}>"
raise ValueError(f"Unknown container type {resolved_type.container}")