$darkmode
Qore ElasticSearchDataProvider Module Reference 1.0
ElasticSearchDataProvider.qc.dox.h
1 // -*- mode: c++; indent-tabs-mode: nil -*-
3 
26 namespace ElasticSearchDataProvider {
29 
30 public:
32  string uri_path = "/";
33 
35  string display_name;
36 
38  const ProviderInfo = <DataProviderInfo>{
39  "type": "ElasticSearchDataProvider",
40  "supports_read": False,
41  "supports_create": False,
42  "supports_update": False,
43  "supports_upsert": False,
44  "supports_delete": False,
45  "supports_native_search": False,
46  "supports_bulk_create": False,
47  "supports_bulk_upsert": False,
48  "supports_children": True,
49  "constructor_options": ConstructorOptions,
50  "search_options": NOTHING,
51  "create_options": NOTHING,
52  "upsert_options": NOTHING,
53  "transaction_management": False,
54  "supports_schema": False,
55  "children_can_support_apis": True,
56  "children_can_support_records": True,
57  "children_can_support_observers": False,
58  };
59 
61  const ConstructorOptions = {
62  "restclient": <DataProviderOptionInfo>{
63  "type": AbstractDataProviderType::get(new Type("RestClient")),
64  "desc": "the RestClient object",
65  },
66  "url": <DataProviderOptionInfo>{
67  "type": AbstractDataProviderTypeMap."string",
68  "desc": "the URL to the REST server; overrides any URL in any RestClient object passed as an option",
69  },
70  "restclient_options": <DataProviderOptionInfo>{
71  "type": AbstractDataProviderTypeMap."*hash",
72  "desc": "options to the RestClient constructor; only used if a RestClient object is created for a "
73  "call",
74  },
75  };
76 
77 protected:
78  const ChildMap = {
79  "document": Class::forName("ElasticSearchDataProvider::ElasticSearchDocumentDataProvider"),
80  "index": Class::forName("ElasticSearchDataProvider::ElasticSearchIndexDataProvider"),
81  "pipeline": Class::forName("ElasticSearchDataProvider::ElasticSearchPipelineDataProvider"),
82  "indexes": Class::forName("ElasticSearchDataProvider::ElasticSearchIndexesDataProvider"),
83  };
84 
85 public:
86 
88  constructor(*hash<auto> options);
89 
90 
92  setLogger(*LoggerInterface logger);
93 
94 
95  static RestClient::RestClient getRestConnection(*hash<auto> options);
96 
98  string getName();
99 
100 
102  *string getDesc();
103 
104 
106  *list<hash<DataProvider::DataProviderSummaryInfo>> getChildProviderSummaryInfo();
107 
108 
110 
112 protected:
113  *list<string> getChildProviderNamesImpl();
114 public:
115 
116 
118 
122 protected:
124 public:
125 
126 
128 protected:
129  hash<DataProvider::DataProviderInfo> getStaticInfoImpl();
130 public:
131 
132 };
133 
136 
138 const SoftBoolDataProviderStringType = AbstractDataProviderType::get(SoftBoolStringType);
139 
141 class SoftBoolStringType : public Qore::Reflection::Type {
142 
143 public:
146 
147 
149  auto acceptsValue(auto value);
150 
151 
154 
155 };
156 };
The AWS REST client base data provider class.
Definition: ElasticSearchDataProviderBase.qc.dox.h:28
setLogger(*LoggerInterface logger)
Accepts a LoggerInterface object for logging (or clears it)
*string getDesc()
Returns the data provider description.
*DataProvider::AbstractDataProvider getChildProviderImpl(string name)
Returns the given child provider or NOTHING if the given child is unknown.
*list< hash< DataProvider::DataProviderSummaryInfo > > getChildProviderSummaryInfo()
Return data provider summary info.
hash< DataProvider::DataProviderInfo > getStaticInfoImpl()
Returns data provider static info.
*list< string > getChildProviderNamesImpl()
Returns a list of child data provider names, if any.
constructor(*hash< auto > options)
Creates the object from constructor options.
string display_name
The value to returns as the name of the object.
Definition: ElasticSearchDataProvider.qc.dox.h:35
string getName()
Returns the data provider name.
Boolean string type.
Definition: ElasticSearchDataProvider.qc.dox.h:141
auto getDefaultValue()
Returns the default value for the type or NOTHING if the type has no default value.
auto acceptsValue(auto value)
Returns the value after any conversions by the type.
const True
const False
const NOTHING
Qore ElasticSearchDataProvider module definition.
Definition: ElasticSearchAcknowledgedDataType.qc.dox.h:26
const SoftBoolDataProviderStringType
Boolean data provider string type for query parameters.
Definition: ElasticSearchDataProvider.qc.dox.h:138
const SoftBoolStringType
Boolean string type for query parameters.
Definition: ElasticSearchDataProvider.qc.dox.h:135