Class MobileCarrierServiceClient
MobileCarrierService client wrapper, for convenient use.
Namespace: Google.Ads.AdManager.V1
Assembly: Google.Ads.AdManager.V1.dll
Syntax
public abstract class MobileCarrierServiceClient
Remarks
Provides methods for handling MobileCarrier objects.
Properties
DefaultEndpoint
The default endpoint for the MobileCarrierService service, which is a host of "admanager.googleapis.com" and a port of 443.
Declaration
public static string DefaultEndpoint { get; }
Property Value
| Type | Description |
|---|---|
| string |
DefaultScopes
The default MobileCarrierService scopes.
Declaration
public static IReadOnlyList<string> DefaultScopes { get; }
Property Value
| Type | Description |
|---|---|
| IReadOnlyList<string> |
Remarks
The default MobileCarrierService scopes are:
- https://www.googleapis.com/auth/admanager
GrpcClient
The underlying gRPC MobileCarrierService client
Declaration
public virtual MobileCarrierService.MobileCarrierServiceClient GrpcClient { get; }
Property Value
| Type | Description |
|---|---|
| MobileCarrierService.MobileCarrierServiceClient |
ServiceMetadata
The service metadata associated with this client type.
Declaration
public static ServiceMetadata ServiceMetadata { get; }
Property Value
| Type | Description |
|---|---|
| ServiceMetadata |
Methods
Create()
Synchronously creates a MobileCarrierServiceClient using the default credentials, endpoint and settings. To specify custom credentials or other settings, use MobileCarrierServiceClientBuilder.
Declaration
public static MobileCarrierServiceClient Create()
Returns
| Type | Description |
|---|---|
| MobileCarrierServiceClient | The created MobileCarrierServiceClient. |
CreateAsync(CancellationToken)
Asynchronously creates a MobileCarrierServiceClient using the default credentials, endpoint and settings. To specify custom credentials or other settings, use MobileCarrierServiceClientBuilder.
Declaration
public static Task<MobileCarrierServiceClient> CreateAsync(CancellationToken cancellationToken = default)
Parameters
| Type | Name | Description |
|---|---|---|
| CancellationToken | cancellationToken | The CancellationToken to use while creating the client. |
Returns
| Type | Description |
|---|---|
| Task<MobileCarrierServiceClient> | The task representing the created MobileCarrierServiceClient. |
GetMobileCarrier(GetMobileCarrierRequest, CallSettings)
API to retrieve a MobileCarrier object.
Declaration
public virtual MobileCarrier GetMobileCarrier(GetMobileCarrierRequest request, CallSettings callSettings = null)
Parameters
| Type | Name | Description |
|---|---|---|
| GetMobileCarrierRequest | request | The request object containing all of the parameters for the API call. |
| CallSettings | callSettings | If not null, applies overrides to this RPC call. |
Returns
| Type | Description |
|---|---|
| MobileCarrier | The RPC response. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = MobileCarrierServiceClient.Create();
// Initialize request argument(s)
GetMobileCarrierRequest request = new GetMobileCarrierRequest
{
MobileCarrierName = MobileCarrierName.FromNetworkCodeMobileCarrier("[NETWORK_CODE]", "[MOBILE_CARRIER]"),
};
// Make the request
MobileCarrier response = mobileCarrierServiceClient.GetMobileCarrier(request);
GetMobileCarrier(MobileCarrierName, CallSettings)
API to retrieve a MobileCarrier object.
Declaration
public virtual MobileCarrier GetMobileCarrier(MobileCarrierName name, CallSettings callSettings = null)
Parameters
| Type | Name | Description |
|---|---|---|
| MobileCarrierName | name | Required. The resource name of the MobileCarrier.
Format: |
| CallSettings | callSettings | If not null, applies overrides to this RPC call. |
Returns
| Type | Description |
|---|---|
| MobileCarrier | The RPC response. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = MobileCarrierServiceClient.Create();
// Initialize request argument(s)
MobileCarrierName name = MobileCarrierName.FromNetworkCodeMobileCarrier("[NETWORK_CODE]", "[MOBILE_CARRIER]");
// Make the request
MobileCarrier response = mobileCarrierServiceClient.GetMobileCarrier(name);
GetMobileCarrier(string, CallSettings)
API to retrieve a MobileCarrier object.
Declaration
public virtual MobileCarrier GetMobileCarrier(string name, CallSettings callSettings = null)
Parameters
| Type | Name | Description |
|---|---|---|
| string | name | Required. The resource name of the MobileCarrier.
Format: |
| CallSettings | callSettings | If not null, applies overrides to this RPC call. |
Returns
| Type | Description |
|---|---|
| MobileCarrier | The RPC response. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = MobileCarrierServiceClient.Create();
// Initialize request argument(s)
string name = "networks/[NETWORK_CODE]/mobileCarriers/[MOBILE_CARRIER]";
// Make the request
MobileCarrier response = mobileCarrierServiceClient.GetMobileCarrier(name);
GetMobileCarrierAsync(GetMobileCarrierRequest, CallSettings)
API to retrieve a MobileCarrier object.
Declaration
public virtual Task<MobileCarrier> GetMobileCarrierAsync(GetMobileCarrierRequest request, CallSettings callSettings = null)
Parameters
| Type | Name | Description |
|---|---|---|
| GetMobileCarrierRequest | request | The request object containing all of the parameters for the API call. |
| CallSettings | callSettings | If not null, applies overrides to this RPC call. |
Returns
| Type | Description |
|---|---|
| Task<MobileCarrier> | A Task containing the RPC response. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = await MobileCarrierServiceClient.CreateAsync();
// Initialize request argument(s)
GetMobileCarrierRequest request = new GetMobileCarrierRequest
{
MobileCarrierName = MobileCarrierName.FromNetworkCodeMobileCarrier("[NETWORK_CODE]", "[MOBILE_CARRIER]"),
};
// Make the request
MobileCarrier response = await mobileCarrierServiceClient.GetMobileCarrierAsync(request);
GetMobileCarrierAsync(GetMobileCarrierRequest, CancellationToken)
API to retrieve a MobileCarrier object.
Declaration
public virtual Task<MobileCarrier> GetMobileCarrierAsync(GetMobileCarrierRequest request, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| GetMobileCarrierRequest | request | The request object containing all of the parameters for the API call. |
| CancellationToken | cancellationToken | A CancellationToken to use for this RPC. |
Returns
| Type | Description |
|---|---|
| Task<MobileCarrier> | A Task containing the RPC response. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = await MobileCarrierServiceClient.CreateAsync();
// Initialize request argument(s)
GetMobileCarrierRequest request = new GetMobileCarrierRequest
{
MobileCarrierName = MobileCarrierName.FromNetworkCodeMobileCarrier("[NETWORK_CODE]", "[MOBILE_CARRIER]"),
};
// Make the request
MobileCarrier response = await mobileCarrierServiceClient.GetMobileCarrierAsync(request);
GetMobileCarrierAsync(MobileCarrierName, CallSettings)
API to retrieve a MobileCarrier object.
Declaration
public virtual Task<MobileCarrier> GetMobileCarrierAsync(MobileCarrierName name, CallSettings callSettings = null)
Parameters
| Type | Name | Description |
|---|---|---|
| MobileCarrierName | name | Required. The resource name of the MobileCarrier.
Format: |
| CallSettings | callSettings | If not null, applies overrides to this RPC call. |
Returns
| Type | Description |
|---|---|
| Task<MobileCarrier> | A Task containing the RPC response. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = await MobileCarrierServiceClient.CreateAsync();
// Initialize request argument(s)
MobileCarrierName name = MobileCarrierName.FromNetworkCodeMobileCarrier("[NETWORK_CODE]", "[MOBILE_CARRIER]");
// Make the request
MobileCarrier response = await mobileCarrierServiceClient.GetMobileCarrierAsync(name);
GetMobileCarrierAsync(MobileCarrierName, CancellationToken)
API to retrieve a MobileCarrier object.
Declaration
public virtual Task<MobileCarrier> GetMobileCarrierAsync(MobileCarrierName name, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| MobileCarrierName | name | Required. The resource name of the MobileCarrier.
Format: |
| CancellationToken | cancellationToken | A CancellationToken to use for this RPC. |
Returns
| Type | Description |
|---|---|
| Task<MobileCarrier> | A Task containing the RPC response. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = await MobileCarrierServiceClient.CreateAsync();
// Initialize request argument(s)
MobileCarrierName name = MobileCarrierName.FromNetworkCodeMobileCarrier("[NETWORK_CODE]", "[MOBILE_CARRIER]");
// Make the request
MobileCarrier response = await mobileCarrierServiceClient.GetMobileCarrierAsync(name);
GetMobileCarrierAsync(string, CallSettings)
API to retrieve a MobileCarrier object.
Declaration
public virtual Task<MobileCarrier> GetMobileCarrierAsync(string name, CallSettings callSettings = null)
Parameters
| Type | Name | Description |
|---|---|---|
| string | name | Required. The resource name of the MobileCarrier.
Format: |
| CallSettings | callSettings | If not null, applies overrides to this RPC call. |
Returns
| Type | Description |
|---|---|
| Task<MobileCarrier> | A Task containing the RPC response. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = await MobileCarrierServiceClient.CreateAsync();
// Initialize request argument(s)
string name = "networks/[NETWORK_CODE]/mobileCarriers/[MOBILE_CARRIER]";
// Make the request
MobileCarrier response = await mobileCarrierServiceClient.GetMobileCarrierAsync(name);
GetMobileCarrierAsync(string, CancellationToken)
API to retrieve a MobileCarrier object.
Declaration
public virtual Task<MobileCarrier> GetMobileCarrierAsync(string name, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| string | name | Required. The resource name of the MobileCarrier.
Format: |
| CancellationToken | cancellationToken | A CancellationToken to use for this RPC. |
Returns
| Type | Description |
|---|---|
| Task<MobileCarrier> | A Task containing the RPC response. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = await MobileCarrierServiceClient.CreateAsync();
// Initialize request argument(s)
string name = "networks/[NETWORK_CODE]/mobileCarriers/[MOBILE_CARRIER]";
// Make the request
MobileCarrier response = await mobileCarrierServiceClient.GetMobileCarrierAsync(name);
ListMobileCarriers(ListMobileCarriersRequest, CallSettings)
API to retrieve a list of MobileCarrier objects.
Declaration
public virtual PagedEnumerable<ListMobileCarriersResponse, MobileCarrier> ListMobileCarriers(ListMobileCarriersRequest request, CallSettings callSettings = null)
Parameters
| Type | Name | Description |
|---|---|---|
| ListMobileCarriersRequest | request | The request object containing all of the parameters for the API call. |
| CallSettings | callSettings | If not null, applies overrides to this RPC call. |
Returns
| Type | Description |
|---|---|
| PagedEnumerable<ListMobileCarriersResponse, MobileCarrier> | A pageable sequence of MobileCarrier resources. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = MobileCarrierServiceClient.Create();
// Initialize request argument(s)
ListMobileCarriersRequest request = new ListMobileCarriersRequest
{
ParentAsNetworkName = NetworkName.FromNetworkCode("[NETWORK_CODE]"),
Filter = "",
OrderBy = "",
Skip = 0,
};
// Make the request
PagedEnumerable<ListMobileCarriersResponse, MobileCarrier> response = mobileCarrierServiceClient.ListMobileCarriers(request);
// Iterate over all response items, lazily performing RPCs as required
foreach (MobileCarrier item in response)
{
// Do something with each item
Console.WriteLine(item);
}
// Or iterate over pages (of server-defined size), performing one RPC per page
foreach (ListMobileCarriersResponse page in response.AsRawResponses())
{
// Do something with each page of items
Console.WriteLine("A page of results:");
foreach (MobileCarrier item in page)
{
// Do something with each item
Console.WriteLine(item);
}
}
// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<MobileCarrier> singlePage = response.ReadPage(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (MobileCarrier item in singlePage)
{
// Do something with each item
Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;
ListMobileCarriers(NetworkName, string, int?, CallSettings)
API to retrieve a list of MobileCarrier objects.
Declaration
public virtual PagedEnumerable<ListMobileCarriersResponse, MobileCarrier> ListMobileCarriers(NetworkName parent, string pageToken = null, int? pageSize = null, CallSettings callSettings = null)
Parameters
| Type | Name | Description |
|---|---|---|
| NetworkName | parent | Required. The parent, which owns this collection of MobileCarriers.
Format: |
| string | pageToken | The token returned from the previous request. A value of |
| int? | pageSize | The size of page to request. The response will not be larger than this, but may be smaller. A value of
|
| CallSettings | callSettings | If not null, applies overrides to this RPC call. |
Returns
| Type | Description |
|---|---|
| PagedEnumerable<ListMobileCarriersResponse, MobileCarrier> | A pageable sequence of MobileCarrier resources. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = MobileCarrierServiceClient.Create();
// Initialize request argument(s)
NetworkName parent = NetworkName.FromNetworkCode("[NETWORK_CODE]");
// Make the request
PagedEnumerable<ListMobileCarriersResponse, MobileCarrier> response = mobileCarrierServiceClient.ListMobileCarriers(parent);
// Iterate over all response items, lazily performing RPCs as required
foreach (MobileCarrier item in response)
{
// Do something with each item
Console.WriteLine(item);
}
// Or iterate over pages (of server-defined size), performing one RPC per page
foreach (ListMobileCarriersResponse page in response.AsRawResponses())
{
// Do something with each page of items
Console.WriteLine("A page of results:");
foreach (MobileCarrier item in page)
{
// Do something with each item
Console.WriteLine(item);
}
}
// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<MobileCarrier> singlePage = response.ReadPage(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (MobileCarrier item in singlePage)
{
// Do something with each item
Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;
ListMobileCarriers(string, string, int?, CallSettings)
API to retrieve a list of MobileCarrier objects.
Declaration
public virtual PagedEnumerable<ListMobileCarriersResponse, MobileCarrier> ListMobileCarriers(string parent, string pageToken = null, int? pageSize = null, CallSettings callSettings = null)
Parameters
| Type | Name | Description |
|---|---|---|
| string | parent | Required. The parent, which owns this collection of MobileCarriers.
Format: |
| string | pageToken | The token returned from the previous request. A value of |
| int? | pageSize | The size of page to request. The response will not be larger than this, but may be smaller. A value of
|
| CallSettings | callSettings | If not null, applies overrides to this RPC call. |
Returns
| Type | Description |
|---|---|
| PagedEnumerable<ListMobileCarriersResponse, MobileCarrier> | A pageable sequence of MobileCarrier resources. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = MobileCarrierServiceClient.Create();
// Initialize request argument(s)
string parent = "networks/[NETWORK_CODE]";
// Make the request
PagedEnumerable<ListMobileCarriersResponse, MobileCarrier> response = mobileCarrierServiceClient.ListMobileCarriers(parent);
// Iterate over all response items, lazily performing RPCs as required
foreach (MobileCarrier item in response)
{
// Do something with each item
Console.WriteLine(item);
}
// Or iterate over pages (of server-defined size), performing one RPC per page
foreach (ListMobileCarriersResponse page in response.AsRawResponses())
{
// Do something with each page of items
Console.WriteLine("A page of results:");
foreach (MobileCarrier item in page)
{
// Do something with each item
Console.WriteLine(item);
}
}
// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<MobileCarrier> singlePage = response.ReadPage(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (MobileCarrier item in singlePage)
{
// Do something with each item
Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;
ListMobileCarriersAsync(ListMobileCarriersRequest, CallSettings)
API to retrieve a list of MobileCarrier objects.
Declaration
public virtual PagedAsyncEnumerable<ListMobileCarriersResponse, MobileCarrier> ListMobileCarriersAsync(ListMobileCarriersRequest request, CallSettings callSettings = null)
Parameters
| Type | Name | Description |
|---|---|---|
| ListMobileCarriersRequest | request | The request object containing all of the parameters for the API call. |
| CallSettings | callSettings | If not null, applies overrides to this RPC call. |
Returns
| Type | Description |
|---|---|
| PagedAsyncEnumerable<ListMobileCarriersResponse, MobileCarrier> | A pageable asynchronous sequence of MobileCarrier resources. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = await MobileCarrierServiceClient.CreateAsync();
// Initialize request argument(s)
ListMobileCarriersRequest request = new ListMobileCarriersRequest
{
ParentAsNetworkName = NetworkName.FromNetworkCode("[NETWORK_CODE]"),
Filter = "",
OrderBy = "",
Skip = 0,
};
// Make the request
PagedAsyncEnumerable<ListMobileCarriersResponse, MobileCarrier> response = mobileCarrierServiceClient.ListMobileCarriersAsync(request);
// Iterate over all response items, lazily performing RPCs as required
await response.ForEachAsync((MobileCarrier item) =>
{
// Do something with each item
Console.WriteLine(item);
});
// Or iterate over pages (of server-defined size), performing one RPC per page
await response.AsRawResponses().ForEachAsync((ListMobileCarriersResponse page) =>
{
// Do something with each page of items
Console.WriteLine("A page of results:");
foreach (MobileCarrier item in page)
{
// Do something with each item
Console.WriteLine(item);
}
});
// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<MobileCarrier> singlePage = await response.ReadPageAsync(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (MobileCarrier item in singlePage)
{
// Do something with each item
Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;
ListMobileCarriersAsync(NetworkName, string, int?, CallSettings)
API to retrieve a list of MobileCarrier objects.
Declaration
public virtual PagedAsyncEnumerable<ListMobileCarriersResponse, MobileCarrier> ListMobileCarriersAsync(NetworkName parent, string pageToken = null, int? pageSize = null, CallSettings callSettings = null)
Parameters
| Type | Name | Description |
|---|---|---|
| NetworkName | parent | Required. The parent, which owns this collection of MobileCarriers.
Format: |
| string | pageToken | The token returned from the previous request. A value of |
| int? | pageSize | The size of page to request. The response will not be larger than this, but may be smaller. A value of
|
| CallSettings | callSettings | If not null, applies overrides to this RPC call. |
Returns
| Type | Description |
|---|---|
| PagedAsyncEnumerable<ListMobileCarriersResponse, MobileCarrier> | A pageable asynchronous sequence of MobileCarrier resources. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = await MobileCarrierServiceClient.CreateAsync();
// Initialize request argument(s)
NetworkName parent = NetworkName.FromNetworkCode("[NETWORK_CODE]");
// Make the request
PagedAsyncEnumerable<ListMobileCarriersResponse, MobileCarrier> response = mobileCarrierServiceClient.ListMobileCarriersAsync(parent);
// Iterate over all response items, lazily performing RPCs as required
await response.ForEachAsync((MobileCarrier item) =>
{
// Do something with each item
Console.WriteLine(item);
});
// Or iterate over pages (of server-defined size), performing one RPC per page
await response.AsRawResponses().ForEachAsync((ListMobileCarriersResponse page) =>
{
// Do something with each page of items
Console.WriteLine("A page of results:");
foreach (MobileCarrier item in page)
{
// Do something with each item
Console.WriteLine(item);
}
});
// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<MobileCarrier> singlePage = await response.ReadPageAsync(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (MobileCarrier item in singlePage)
{
// Do something with each item
Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;
ListMobileCarriersAsync(string, string, int?, CallSettings)
API to retrieve a list of MobileCarrier objects.
Declaration
public virtual PagedAsyncEnumerable<ListMobileCarriersResponse, MobileCarrier> ListMobileCarriersAsync(string parent, string pageToken = null, int? pageSize = null, CallSettings callSettings = null)
Parameters
| Type | Name | Description |
|---|---|---|
| string | parent | Required. The parent, which owns this collection of MobileCarriers.
Format: |
| string | pageToken | The token returned from the previous request. A value of |
| int? | pageSize | The size of page to request. The response will not be larger than this, but may be smaller. A value of
|
| CallSettings | callSettings | If not null, applies overrides to this RPC call. |
Returns
| Type | Description |
|---|---|
| PagedAsyncEnumerable<ListMobileCarriersResponse, MobileCarrier> | A pageable asynchronous sequence of MobileCarrier resources. |
Sample code
// Create client
MobileCarrierServiceClient mobileCarrierServiceClient = await MobileCarrierServiceClient.CreateAsync();
// Initialize request argument(s)
string parent = "networks/[NETWORK_CODE]";
// Make the request
PagedAsyncEnumerable<ListMobileCarriersResponse, MobileCarrier> response = mobileCarrierServiceClient.ListMobileCarriersAsync(parent);
// Iterate over all response items, lazily performing RPCs as required
await response.ForEachAsync((MobileCarrier item) =>
{
// Do something with each item
Console.WriteLine(item);
});
// Or iterate over pages (of server-defined size), performing one RPC per page
await response.AsRawResponses().ForEachAsync((ListMobileCarriersResponse page) =>
{
// Do something with each page of items
Console.WriteLine("A page of results:");
foreach (MobileCarrier item in page)
{
// Do something with each item
Console.WriteLine(item);
}
});
// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<MobileCarrier> singlePage = await response.ReadPageAsync(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (MobileCarrier item in singlePage)
{
// Do something with each item
Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;
ShutdownDefaultChannelsAsync()
Shuts down any channels automatically created by Create() and CreateAsync(CancellationToken). Channels which weren't automatically created are not affected.
Declaration
public static Task ShutdownDefaultChannelsAsync()
Returns
| Type | Description |
|---|---|
| Task | A task representing the asynchronous shutdown operation. |
Remarks
After calling this method, further calls to Create() and CreateAsync(CancellationToken) will create new channels, which could in turn be shut down by another call to this method.