def __init__(self):
    super(AnalyticsLinkSetup, self).__init__()
    self.parser.prog = 'couchbase-cli analytics-link-setup'
    group = self.parser.add_argument_group('Analytics Service link setup options')
    group.add_argument('--create', dest='create', action='store_true', default=False, help='Create a link')
    group.add_argument('--delete', dest='delete', action='store_true', default=False, help='Delete a link')
    group.add_argument('--edit', dest='edit', action='store_true', default=False, help='Modify a link')
    group.add_argument('--list', dest='list', action='store_true', default=False, help='List all links')
    group.add_argument('--dataverse', dest='dataverse', metavar='<name>', help='The dataverse of the link (Deprecated)')
    group.add_argument('--scope', dest='scope', metavar='<name>', help='The analytics scope of the link in its canonical form')
    group.add_argument('--name', dest='name', metavar='<name>', help='The name of the link')
    group.add_argument('--type', dest='type', metavar='<type>', choices=['couchbase', 's3', 'azureblob'], help="The type of the link ('couchbase', 's3' or 'azureblob')")
    group = self.parser.add_argument_group('Analytics Service Couchbase link setup options')
    group.add_argument('--hostname', dest='hostname', metavar='<hostname>', help='The hostname of the link')
    group.add_argument('--link-username', dest='link_username', metavar='<username>', help='The username of the link')
    group.add_argument('--link-password', dest='link_password', metavar='<password>', help='The password of the link')
    group.add_argument('--user-certificate', dest='user_certificate', metavar='<path>', help='The user certificate for authentication')
    group.add_argument('--user-key', dest='user_key', metavar='<path>', help='The user key for authentication')
    group.add_argument('--certificate', dest='certificate', metavar='<path>', help='The certificate used for encryption')
    group.add_argument('--encryption', dest='encryption', choices=['none', 'full', 'half'], metavar='<type>', help="The link encryption type ('none', 'full' or 'half')")
    group = self.parser.add_argument_group('Analytics Service S3 link setup options')
    group.add_argument('--access-key-id', dest='access_key_id', metavar='<id>', help='The access key ID of the link')
    group.add_argument('--secret-access-key', dest='secret_access_key', metavar='<key>', help='The secret access key of the link')
    group.add_argument('--session-token', dest='session_token', metavar='<token>', help='Temporary credentials session token')
    group.add_argument('--region', dest='region', metavar='<region>', help='The region of the link')
    group.add_argument('--service-endpoint', dest='service_endpoint', metavar='<url>', help='The service endpoint of the link (optional)')
    group = self.parser.add_argument_group('Analytics Service Azure Blob link setup options')
    group.add_argument('--connection-string', dest='connection_string', metavar='<key>', help='The connection string of the link')
    group.add_argument('--account-name', dest='account_name', metavar='<id>', help='The account name of the link')
    group.add_argument('--account-key', dest='account_key', metavar='<key>', help='The account key of the link')
    group.add_argument('--shared-access-signature', dest='shared_access_signature', metavar='<token>', help='The shared access signature of the link')
    group.add_argument('--blob-endpoint', dest='blob_endpoint', metavar='<url>', help='The blob endpoint of the link (optional)')
    group.add_argument('--endpoint-suffix', dest='endpoint_suffix', metavar='<url>', help='The endpoint suffix of the link (optional)')
def __init__(self):
    super(AnalyticsLinkSetup, self).__init__()
    self.parser.prog = 'couchbase-cli analytics-link-setup'
    group = self.parser.add_argument_group('Analytics Service link setup options')
    group.add_argument('--create', dest='create', action='store_true', default=False, help='Create a link')
    group.add_argument('--delete', dest='delete', action='store_true', default=False, help='Delete a link')
    group.add_argument('--edit', dest='edit', action='store_true', default=False, help='Modify a link')
    group.add_argument('--list', dest='list', action='store_true', default=False, help='List all links')
    group.add_argument('--dataverse', dest='dataverse', metavar='<name>', help='The dataverse of the link (Deprecated)')
    group.add_argument('--scope', dest='scope', metavar='<name>', help='The analytics scope of the link in its canonical form')
    group.add_argument('--name', dest='name', metavar='<name>', help='The name of the link')
    group.add_argument('--type', dest='type', metavar='<type>', choices=['couchbase', 's3', 'azureblob'], help="The type of the link ('couchbase', 's3' or 'azureblob')")
    group = self.parser.add_argument_group('Analytics Service Couchbase link setup options')
    group.add_argument('--hostname', dest='hostname', metavar='<hostname>', help='The hostname of the link')
    group.add_argument('--link-username', dest='link_username', metavar='<username>', help='The username of the link')
    group.add_argument('--link-password', dest='link_password', metavar='<password>', help='The password of the link')
    group.add_argument('--user-certificate', dest='user_certificate', metavar='<path>', help='The user certificate for authentication')
    group.add_argument('--user-key', dest='user_key', metavar='<path>', help='The user key for authentication')
    group.add_argument('--certificate', dest='certificate', metavar='<path>', help='The certificate used for encryption')
    group.add_argument('--encryption', dest='encryption', choices=['none', 'full', 'half'], metavar='<type>', help="The link encryption type ('none', 'full' or 'half')")
    group = self.parser.add_argument_group('Analytics Service S3 link setup options')
    group.add_argument('--access-key-id', dest='access_key_id', metavar='<id>', help='The access key ID of the link')
    group.add_argument('--secret-access-key', dest='secret_access_key', metavar='<key>', help='The secret access key of the link')
    group.add_argument('--session-token', dest='session_token', metavar='<token>', help='Temporary credentials session token')
    group.add_argument('--region', dest='region', metavar='<region>', help='The region of the link')
    group.add_argument('--service-endpoint', dest='service_endpoint', metavar='<url>', help='The service endpoint of the link (optional)')
    group = self.parser.add_argument_group('Analytics Service Azure Blob link setup options')
    group.add_argument('--connection-string', dest='connection_string', metavar='<key>', help='The connection string of the link')
    group.add_argument('--account-name', dest='account_name', metavar='<id>', help='The account name of the link')
    group.add_argument('--account-key', dest='account_key', metavar='<key>', help='The account key of the link')
    group.add_argument('--shared-access-signature', dest='shared_access_signature', metavar='<token>', help='The shared access signature of the link')
    group.add_argument('--blob-endpoint', dest='blob_endpoint', metavar='<url>', help='The blob endpoint of the link (optional)')
    group.add_argument('--endpoint-suffix', dest='endpoint_suffix', metavar='<url>', help='The endpoint suffix of the link (optional)')