def update(context, id, export_control, active):
    """update(context, id, export_control, active)

    Update a component

    >>> dcictl component-update [OPTIONS]

    :param string id: ID of the component [required]
    :param boolean export-control: Set the component visible for users
    :param boolean active: Set the component in the active state
    """

    component_info = component.get(context, id=id)

    etag = component_info.json()['component']['etag']

    result = component.update(context, id=id, etag=etag,
                              export_control=export_control,
                              state=utils.active_string(active))

    utils.format_output(result, context.format)
update(context, id, export_control, active)

    Update a component

    >>> dcictl component-update [OPTIONS]

    :param string id: ID of the component [required]
    :param boolean export-control: Set the component visible for users
    :param boolean active: Set the component in the active state