Skip to content

Commit 3488ccc

Browse files
authored
Add Search Service stats API (Azure#10371)
* add generated API * move _credential.py up one level * add SearchServiceClient * minor edits to existing tests * rename test_live -> test_index_live * add live tests * restore accidentally removed snippet * use correct odata.metadata=minimal * re-record service live tests * update unit test too
1 parent 334e327 commit 3488ccc

File tree

85 files changed

+17993
-1002
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

85 files changed

+17993
-1002
lines changed

sdk/search/azure-search-documents/azure/search/documents/__init__.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,19 +28,22 @@
2828

2929
__version__ = VERSION
3030

31+
from ._credential import SearchApiKeyCredential
32+
3133
from ._index import (
3234
AutocompleteQuery,
3335
IndexAction,
3436
IndexDocumentsBatch,
3537
IndexingResult,
36-
SearchApiKeyCredential,
3738
SearchIndexClient,
3839
SearchQuery,
3940
SearchItemPaged,
4041
SuggestQuery,
4142
odata,
4243
)
4344

45+
from ._service import SearchServiceClient
46+
4447
__all__ = (
4548
"AutocompleteQuery",
4649
"IndexAction",
@@ -50,6 +53,7 @@
5053
"SearchIndexClient",
5154
"SearchItemPaged",
5255
"SearchQuery",
56+
"SearchServiceClient",
5357
"SuggestQuery",
5458
"odata",
5559
)

sdk/search/azure-search-documents/azure/search/documents/_index/__init__.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
# Copyright (c) Microsoft Corporation.
33
# Licensed under the MIT License.
44
# ------------------------------------
5-
from ._credential import SearchApiKeyCredential # pylint: disable=unused-import
65
from ._index_documents_batch import IndexDocumentsBatch # pylint: disable=unused-import
76
from ._search_index_client import ( # pylint: disable=unused-import
87
odata,

sdk/search/azure-search-documents/azure/search/documents/_index/_search_index_client.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
if TYPE_CHECKING:
2020
# pylint:disable=unused-import,ungrouped-imports
2121
from typing import Any, Union
22-
from ._credential import SearchApiKeyCredential
22+
from .. import SearchApiKeyCredential
2323

2424

2525
def odata(statement, **kwargs):

sdk/search/azure-search-documents/azure/search/documents/_index/aio/_search_index_client_async.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
if TYPE_CHECKING:
2020
# pylint:disable=unused-import,ungrouped-imports
2121
from typing import Any, Union
22-
from .._credential import SearchApiKeyCredential
22+
from ... import SearchApiKeyCredential
2323

2424

2525
class SearchIndexClient(object):
@@ -33,7 +33,6 @@ class SearchIndexClient(object):
3333
:type credential: SearchApiKeyCredential
3434
3535
.. admonition:: Example:
36-
3736
.. literalinclude:: ../samples/async_samples/sample_authentication_async.py
3837
:start-after: [START create_search_client_with_key_async]
3938
:end-before: [END create_search_client_with_key_async]
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# ------------------------------------
2+
# Copyright (c) Microsoft Corporation.
3+
# Licensed under the MIT License.
4+
# ------------------------------------
5+
from ._search_service_client import SearchServiceClient # pylint: disable=unused-import
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# coding=utf-8
2+
# --------------------------------------------------------------------------
3+
# Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.0.6257, generator: {generator})
4+
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
5+
# --------------------------------------------------------------------------
6+
7+
from ._search_service_client import SearchServiceClient
8+
__all__ = ['SearchServiceClient']
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# coding=utf-8
2+
# --------------------------------------------------------------------------
3+
# Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.0.6257, generator: {generator})
4+
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
5+
# --------------------------------------------------------------------------
6+
7+
from typing import Any
8+
9+
from azure.core.configuration import Configuration
10+
from azure.core.pipeline import policies
11+
12+
VERSION = "unknown"
13+
14+
class SearchServiceClientConfiguration(Configuration):
15+
"""Configuration for SearchServiceClient.
16+
17+
Note that all parameters used to create this instance are saved as instance
18+
attributes.
19+
20+
:param endpoint: The endpoint URL of the search service.
21+
:type endpoint: str
22+
"""
23+
24+
def __init__(
25+
self,
26+
endpoint, # type: str
27+
**kwargs # type: Any
28+
):
29+
# type: (...) -> None
30+
if endpoint is None:
31+
raise ValueError("Parameter 'endpoint' must not be None.")
32+
super(SearchServiceClientConfiguration, self).__init__(**kwargs)
33+
34+
self.endpoint = endpoint
35+
self.api_version = "2019-05-06-Preview"
36+
kwargs.setdefault('sdk_moniker', 'searchserviceclient/{}'.format(VERSION))
37+
self._configure(**kwargs)
38+
39+
def _configure(
40+
self,
41+
**kwargs # type: Any
42+
):
43+
# type: (...) -> None
44+
self.user_agent_policy = kwargs.get('user_agent_policy') or policies.UserAgentPolicy(**kwargs)
45+
self.headers_policy = kwargs.get('headers_policy') or policies.HeadersPolicy(**kwargs)
46+
self.proxy_policy = kwargs.get('proxy_policy') or policies.ProxyPolicy(**kwargs)
47+
self.logging_policy = kwargs.get('logging_policy') or policies.NetworkTraceLoggingPolicy(**kwargs)
48+
self.retry_policy = kwargs.get('retry_policy') or policies.RetryPolicy(**kwargs)
49+
self.custom_hook_policy = kwargs.get('custom_hook_policy') or policies.CustomHookPolicy(**kwargs)
50+
self.redirect_policy = kwargs.get('redirect_policy') or policies.RedirectPolicy(**kwargs)
51+
self.authentication_policy = kwargs.get('authentication_policy')
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# coding=utf-8
2+
# --------------------------------------------------------------------------
3+
# Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.0.6257, generator: {generator})
4+
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
5+
# --------------------------------------------------------------------------
6+
7+
from typing import Any
8+
9+
from azure.core import PipelineClient
10+
from msrest import Deserializer, Serializer
11+
12+
from ._configuration import SearchServiceClientConfiguration
13+
from .operations import DataSourcesOperations
14+
from .operations import IndexersOperations
15+
from .operations import SkillsetsOperations
16+
from .operations import SynonymMapsOperations
17+
from .operations import IndexesOperations
18+
from .operations import SearchServiceClientOperationsMixin
19+
from . import models
20+
21+
22+
class SearchServiceClient(SearchServiceClientOperationsMixin):
23+
"""Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service.
24+
25+
:ivar data_sources: DataSourcesOperations operations
26+
:vartype data_sources: search_service_client.operations.DataSourcesOperations
27+
:ivar indexers: IndexersOperations operations
28+
:vartype indexers: search_service_client.operations.IndexersOperations
29+
:ivar skillsets: SkillsetsOperations operations
30+
:vartype skillsets: search_service_client.operations.SkillsetsOperations
31+
:ivar synonym_maps: SynonymMapsOperations operations
32+
:vartype synonym_maps: search_service_client.operations.SynonymMapsOperations
33+
:ivar indexes: IndexesOperations operations
34+
:vartype indexes: search_service_client.operations.IndexesOperations
35+
:param endpoint: The endpoint URL of the search service.
36+
:type endpoint: str
37+
"""
38+
39+
def __init__(
40+
self,
41+
endpoint, # type: str
42+
**kwargs # type: Any
43+
):
44+
# type: (...) -> None
45+
base_url = '{endpoint}'
46+
self._config = SearchServiceClientConfiguration(endpoint, **kwargs)
47+
self._client = PipelineClient(base_url=base_url, config=self._config, **kwargs)
48+
49+
client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)}
50+
self._serialize = Serializer(client_models)
51+
self._deserialize = Deserializer(client_models)
52+
53+
self.data_sources = DataSourcesOperations(
54+
self._client, self._config, self._serialize, self._deserialize)
55+
self.indexers = IndexersOperations(
56+
self._client, self._config, self._serialize, self._deserialize)
57+
self.skillsets = SkillsetsOperations(
58+
self._client, self._config, self._serialize, self._deserialize)
59+
self.synonym_maps = SynonymMapsOperations(
60+
self._client, self._config, self._serialize, self._deserialize)
61+
self.indexes = IndexesOperations(
62+
self._client, self._config, self._serialize, self._deserialize)
63+
64+
def close(self):
65+
# type: () -> None
66+
self._client.close()
67+
68+
def __enter__(self):
69+
# type: () -> SearchServiceClient
70+
self._client.__enter__()
71+
return self
72+
73+
def __exit__(self, *exc_details):
74+
# type: (Any) -> None
75+
self._client.__exit__(*exc_details)
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# coding=utf-8
2+
# --------------------------------------------------------------------------
3+
# Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.0.6257, generator: {generator})
4+
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
5+
# --------------------------------------------------------------------------
6+
7+
from ._search_service_client_async import SearchServiceClient
8+
__all__ = ['SearchServiceClient']

0 commit comments

Comments
 (0)