Exemplo n.º 1
0
def call_menu_select_property(mapping, resource_object, full_request=None, parent=None, is_subresource=False):
    """
    Method to call the menu to add resource
    @param mapping: Mapping of the resource
    @type mapping: dict
    @param resource_object: the resource_object
    @type resource_object: object
    @param full_request: request (optionally loaded from file)
    @type request: dict
    """
    request = create_request(mapping.values())
    if full_request is None:
        full_request = request
    # load from file only if it's top resource. Otherwise it would affect sub-resources.
    if parent is None and full_request is not None:
        request = full_request
    while True:
        click.clear()
        first_line_new(resource_object.name)
        property_chosen = menu_select_property(request, mapping, is_subresource)
        if handle_actions(request, property_chosen, mapping, resource_object, full_request=full_request, parent=parent):
            break
        if isinstance(property_chosen, int) and 0 < property_chosen < len(mapping.keys()) + 1:
            property_model_catalog_selected = list(mapping.keys())[property_chosen - 1]
            call_ask_value(request, property_model_catalog_selected, resource_name=resource_object.name,
                           resource_object=resource_object, mapping=mapping)
    return request
Exemplo n.º 2
0
def create():
    first_line_new(RESOURCE)
    request = {}