from rich.console import Console

console = Console()


class BaseOrgs:
    def list_all(self):
        console.print("Calling list all from Base Orgs class.")

    def list(self, org_id):
        console.print(f"Calling list org ({org_id}) from Base Orgs class.")

    def add(self, org_id):
        console.print(f"Calling add org ({org_id}) from Base Orgs class.")

    def delete(self, org_id):
        console.print(f"Calling delete org ({org_id}) from Base Orgs class.")

    def orgs_add(self, org_id, recipient_id):
        console.print(
            f"Calling add org ({org_id}) for recipient_id ({recipient_id}) from Base Orgs class."
        )

    def orgs_delete(self, org_id, recipient_name):
        console.print(
            f"""Calling delete org ({org_id}) for recipient_name
        ({recipient_name}) from Base Orgs class."""
        )

    def accounts_list(self, org_id):
        console.print(f"Calling account org ({org_id}) from Base Orgs class.")

    def accounts_add(self, org_id, locator, acct_id, client_schema):
        console.print(
            f"Calling account org ({org_id} {locator} {acct_id}"
            f" {client_schema})"
            " from Base Orgs class."
        )

    def accounts_delete(
        self,
        org_id,
        locator,
        acct_id,
    ):
        console.print(
            f"Calling account org ({org_id} {locator} {acct_id})"
            f" from Base Orgs class."
        )

    def entitlements_list(self, org_id):
        console.print(f"Calling entitlements org ({org_id}) from Base Orgs class.")

    def entitlements_add(self, org_id, cdu_id):
        console.print(
            f"Calling entitlements_add for cdu {cdu_id} org ({org_id}) "
            f" from Base Orgs class."
        )

    def entitlements_delete(self, org_id, cdu_id):
        console.print(
            f"Calling entitlements_delete for cdu {cdu_id} org ({org_id}) "
            f" from Base Orgs class."
        )

    def provision_list(self, org_id, region):
        console.print(
            f"Calling provisioning list missing views for org ({org_id})"
            f" from Base Orgs class."
        )

    def provision_add(self, org_id, view_name, region):
        console.print(
            f"Calling provisioning add views for ({view_name}) org ({org_id})"
            f" from Base Orgs class."
        )

    def provision_delete(self, org_id, view_name, region):
        console.print(
            f"Calling provisioning delete views for ({view_name})"
            f" org ({org_id})"
            f" from Base Orgs class."
        )

    def share_list(self, org_id, region):
        console.print(f"Calling share org list all ({org_id}) from Base Orgs class.")

    def share_add(self, org_id, view_name, region):
        console.print(
            f"Calling org add view ({view_name}) org ({org_id})"
            f" from Base Orgs class."
        )

    def share_delete(self, org_id, view_name, region):
        console.print(
            f"Calling org delete view ({view_name}) org ({org_id}) "
            f"from Base Orgs class."
        )
