// NOTE: This file was generated by the ServiceGenerator. 

// ----------------------------------------------------------------------------
// API:
//   BigQuery Connection API (bigqueryconnection/v1beta1)
// Description:
//   Allows users to manage BigQuery connections to external data sources. 
// Documentation:
//   https://cloud.google.com/bigquery/

#import "GTLRBigQueryConnectionServiceQuery.h"

#import "GTLRBigQueryConnectionServiceObjects.h"

@implementation GTLRBigQueryConnectionServiceQuery

@dynamic fields;

@end

@implementation GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsCreate

@dynamic connectionId, parent;

+ (instancetype)queryWithObject:(GTLRBigQueryConnectionService_Connection *)object
                         parent:(NSString *)parent {
  if (object == nil) {
#if defined(DEBUG) && DEBUG
    NSAssert(object ! = nil, @"Got a nil object");
#endif
    return nil;
  }
  NSArray *pathParams = @[ @"parent" ];
  NSString *pathURITemplate = @"v1beta1/{+parent}/connections";
  GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsCreate *query =
    [[self alloc] initWithPathURITemplate:pathURITemplate
                               HTTPMethod:@"POST"
                       pathParameterNames:pathParams];
  query.bodyObject = object;
  query.parent = parent;
  query.expectedObjectClass = [GTLRBigQueryConnectionService_Connection class];
  query.loggingName = @"bigqueryconnection.projects.locations.connections.create";
  return query;
}

@end

@implementation GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsDelete

@dynamic name;

+ (instancetype)queryWithName:(NSString *)name {
  NSArray *pathParams = @[ @"name" ];
  NSString *pathURITemplate = @"v1beta1/{+name}";
  GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsDelete *query =
    [[self alloc] initWithPathURITemplate:pathURITemplate
                               HTTPMethod:@"DELETE"
                       pathParameterNames:pathParams];
  query.name = name;
  query.expectedObjectClass = [GTLRBigQueryConnectionService_Empty class];
  query.loggingName = @"bigqueryconnection.projects.locations.connections.delete";
  return query;
}

@end

@implementation GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsGet

@dynamic name;

+ (instancetype)queryWithName:(NSString *)name {
  NSArray *pathParams = @[ @"name" ];
  NSString *pathURITemplate = @"v1beta1/{+name}";
  GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsGet *query =
    [[self alloc] initWithPathURITemplate:pathURITemplate
                               HTTPMethod:nil
                       pathParameterNames:pathParams];
  query.name = name;
  query.expectedObjectClass = [GTLRBigQueryConnectionService_Connection class];
  query.loggingName = @"bigqueryconnection.projects.locations.connections.get";
  return query;
}

@end

@implementation GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsGetIamPolicy

@dynamic resource;

+ (instancetype)queryWithObject:(GTLRBigQueryConnectionService_GetIamPolicyRequest *)object
                       resource:(NSString *)resource {
  if (object == nil) {
#if defined(DEBUG) && DEBUG
    NSAssert(object ! = nil, @"Got a nil object");
#endif
    return nil;
  }
  NSArray *pathParams = @[ @"resource" ];
  NSString *pathURITemplate = @"v1beta1/{+resource}:getIamPolicy";
  GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsGetIamPolicy *query =
    [[self alloc] initWithPathURITemplate:pathURITemplate
                               HTTPMethod:@"POST"
                       pathParameterNames:pathParams];
  query.bodyObject = object;
  query.resource = resource;
  query.expectedObjectClass = [GTLRBigQueryConnectionService_Policy class];
  query.loggingName = @"bigqueryconnection.projects.locations.connections.getIamPolicy";
  return query;
}

@end

@implementation GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsList

@dynamic maxResults, pageToken, parent;

+ (instancetype)queryWithParent:(NSString *)parent {
  NSArray *pathParams = @[ @"parent" ];
  NSString *pathURITemplate = @"v1beta1/{+parent}/connections";
  GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsList *query =
    [[self alloc] initWithPathURITemplate:pathURITemplate
                               HTTPMethod:nil
                       pathParameterNames:pathParams];
  query.parent = parent;
  query.expectedObjectClass = [GTLRBigQueryConnectionService_ListConnectionsResponse class];
  query.loggingName = @"bigqueryconnection.projects.locations.connections.list";
  return query;
}

@end

@implementation GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsPatch

@dynamic name, updateMask;

+ (instancetype)queryWithObject:(GTLRBigQueryConnectionService_Connection *)object
                           name:(NSString *)name {
  if (object == nil) {
#if defined(DEBUG) && DEBUG
    NSAssert(object ! = nil, @"Got a nil object");
#endif
    return nil;
  }
  NSArray *pathParams = @[ @"name" ];
  NSString *pathURITemplate = @"v1beta1/{+name}";
  GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsPatch *query =
    [[self alloc] initWithPathURITemplate:pathURITemplate
                               HTTPMethod:@"PATCH"
                       pathParameterNames:pathParams];
  query.bodyObject = object;
  query.name = name;
  query.expectedObjectClass = [GTLRBigQueryConnectionService_Connection class];
  query.loggingName = @"bigqueryconnection.projects.locations.connections.patch";
  return query;
}

@end

@implementation GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsSetIamPolicy

@dynamic resource;

+ (instancetype)queryWithObject:(GTLRBigQueryConnectionService_SetIamPolicyRequest *)object
                       resource:(NSString *)resource {
  if (object == nil) {
#if defined(DEBUG) && DEBUG
    NSAssert(object ! = nil, @"Got a nil object");
#endif
    return nil;
  }
  NSArray *pathParams = @[ @"resource" ];
  NSString *pathURITemplate = @"v1beta1/{+resource}:setIamPolicy";
  GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsSetIamPolicy *query =
    [[self alloc] initWithPathURITemplate:pathURITemplate
                               HTTPMethod:@"POST"
                       pathParameterNames:pathParams];
  query.bodyObject = object;
  query.resource = resource;
  query.expectedObjectClass = [GTLRBigQueryConnectionService_Policy class];
  query.loggingName = @"bigqueryconnection.projects.locations.connections.setIamPolicy";
  return query;
}

@end

@implementation GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsTestIamPermissions

@dynamic resource;

+ (instancetype)queryWithObject:(GTLRBigQueryConnectionService_TestIamPermissionsRequest *)object
                       resource:(NSString *)resource {
  if (object == nil) {
#if defined(DEBUG) && DEBUG
    NSAssert(object ! = nil, @"Got a nil object");
#endif
    return nil;
  }
  NSArray *pathParams = @[ @"resource" ];
  NSString *pathURITemplate = @"v1beta1/{+resource}:testIamPermissions";
  GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsTestIamPermissions *query =
    [[self alloc] initWithPathURITemplate:pathURITemplate
                               HTTPMethod:@"POST"
                       pathParameterNames:pathParams];
  query.bodyObject = object;
  query.resource = resource;
  query.expectedObjectClass = [GTLRBigQueryConnectionService_TestIamPermissionsResponse class];
  query.loggingName = @"bigqueryconnection.projects.locations.connections.testIamPermissions";
  return query;
}

@end

@implementation GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsUpdateCredential

@dynamic name;

+ (instancetype)queryWithObject:(GTLRBigQueryConnectionService_ConnectionCredential *)object
                           name:(NSString *)name {
  if (object == nil) {
#if defined(DEBUG) && DEBUG
    NSAssert(object ! = nil, @"Got a nil object");
#endif
    return nil;
  }
  NSArray *pathParams = @[ @"name" ];
  NSString *pathURITemplate = @"v1beta1/{+name}";
  GTLRBigQueryConnectionServiceQuery_ProjectsLocationsConnectionsUpdateCredential *query =
    [[self alloc] initWithPathURITemplate:pathURITemplate
                               HTTPMethod:@"PATCH"
                       pathParameterNames:pathParams];
  query.bodyObject = object;
  query.name = name;
  query.expectedObjectClass = [GTLRBigQueryConnectionService_Empty class];
  query.loggingName = @"bigqueryconnection.projects.locations.connections.updateCredential";
  return query;
}

@end
