Skip to content

Commit 3734ab9

Browse files
committed
Merge branch 'main' into chore/renovateBaseBranch
2 parents f1bfda3 + b4d6723 commit 3734ab9

File tree

13 files changed

+439
-208
lines changed

13 files changed

+439
-208
lines changed

clients/algoliasearch-client-java-2/algoliasearch-core/src/main/java/com/algolia/utils/ClientOptions.java

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,18 @@
11
package com.algolia.utils;
22

33
import com.algolia.utils.retry.StatefulHost;
4+
import java.util.ArrayList;
45
import java.util.List;
56

67
public class ClientOptions {
78

89
private Requester requester;
9-
private AlgoliaAgent.Segment[] algoliaAgentSegments;
10+
private List<AlgoliaAgent.Segment> algoliaAgentSegments;
1011
private List<StatefulHost> hosts;
1112

12-
private ClientOptions() {}
13+
private ClientOptions() {
14+
algoliaAgentSegments = new ArrayList<>();
15+
}
1316

1417
public static ClientOptions build() {
1518
return new ClientOptions();
@@ -24,15 +27,25 @@ public ClientOptions setRequester(Requester requester) {
2427
return this;
2528
}
2629

27-
public AlgoliaAgent.Segment[] getAlgoliaAgentSegments() {
30+
public List<AlgoliaAgent.Segment> getAlgoliaAgentSegments() {
2831
return this.algoliaAgentSegments;
2932
}
3033

31-
public ClientOptions setAlgoliaAgentSegments(AlgoliaAgent.Segment[] algoliaAgentSegments) {
34+
public ClientOptions setAlgoliaAgentSegments(List<AlgoliaAgent.Segment> algoliaAgentSegments) {
3235
this.algoliaAgentSegments = algoliaAgentSegments;
3336
return this;
3437
}
3538

39+
public ClientOptions addAlgoliaAgentSegment(AlgoliaAgent.Segment algoliaAgentSegment) {
40+
this.algoliaAgentSegments.add(algoliaAgentSegment);
41+
return this;
42+
}
43+
44+
public ClientOptions addAlgoliaAgentSegment(String value, String version) {
45+
this.algoliaAgentSegments.add(new AlgoliaAgent.Segment(value, version));
46+
return this;
47+
}
48+
3649
public List<StatefulHost> getHosts() {
3750
return this.hosts;
3851
}

clients/algoliasearch-client-java-2/algoliasearch-core/src/main/java/com/algolia/utils/JSON.java

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -27,15 +27,7 @@
2727
import java.lang.reflect.Field;
2828
import java.lang.reflect.Type;
2929
import java.lang.reflect.TypeVariable;
30-
import java.util.Collections;
31-
import java.util.EnumMap;
32-
import java.util.HashMap;
33-
import java.util.Hashtable;
34-
import java.util.IdentityHashMap;
35-
import java.util.LinkedHashMap;
36-
import java.util.Map;
37-
import java.util.TreeMap;
38-
import java.util.WeakHashMap;
30+
import java.util.*;
3931
import java.util.concurrent.ConcurrentHashMap;
4032
import okio.ByteString;
4133

playground/java/src/main/java/com/algolia/playground/Search.java

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,19 +19,24 @@ public static void main(String[] args) {
1919
dotenv.get("ALGOLIA_APPLICATION_ID"),
2020
dotenv.get("ALGOLIA_SEARCH_KEY"),
2121
ClientOptions.build()
22-
.setAlgoliaAgentSegments(
23-
new AlgoliaAgent.Segment[] {
24-
new AlgoliaAgent.Segment("test", "8.0.0"),
25-
new AlgoliaAgent.Segment("JVM", "11.0.14"),
26-
new AlgoliaAgent.Segment("no version"),
27-
}
28-
)
22+
.addAlgoliaAgentSegment("test", "8.0.0")
23+
.addAlgoliaAgentSegment("JVM", "11.0.14")
24+
.addAlgoliaAgentSegment("no version")
2925
);
3026

3127
String indexName = dotenv.get("SEARCH_INDEX");
3228
String query = dotenv.get("SEARCH_QUERY");
3329

3430
try {
31+
List<Map<String, Object>> records = Arrays.asList(Collections.singletonMap("name", "Tom Cruise"), Collections.singletonMap("name", "Scarlett Johansson"));
32+
33+
for (Map<String, Object> record : records) {
34+
client.saveObject(
35+
indexName,
36+
record
37+
);
38+
}
39+
3540
SearchMethodParams searchMethodParams = new SearchMethodParams();
3641
List<SearchQuery> requests = new ArrayList<>();
3742
SearchForHits request = new SearchForHits();

renovate.json

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,12 @@
2020
"required_provider"
2121
],
2222
"rangeStrategy": "bump"
23+
},
24+
{
25+
"matchPackagePatterns": [
26+
"openapi-generator"
27+
],
28+
"groupName": "openapi-generator"
2329
}
2430
],
2531
"regexManagers": [
@@ -29,7 +35,7 @@
2935
"openapitools.json"
3036
],
3137
"matchStrings": [
32-
"\\s\"version\": \"(?<currentValue>.*?)\",\\s"
38+
"\\s\"version\": \"(?<currentValue>.*?)\",?\\s"
3339
],
3440
"depNameTemplate": "org.openapitools:openapi-generator-cli",
3541
"datasourceTemplate": "maven"
@@ -40,7 +46,7 @@
4046
"package.mustache"
4147
],
4248
"matchStrings": [
43-
"\\s\"@types/node\": \"(?<currentValue>.*?)\",\\s"
49+
"\\s\"@types/node\": \"(?<currentValue>.*?)\",?\\s"
4450
],
4551
"depNameTemplate": "@types/node",
4652
"datasourceTemplate": "npm"
@@ -51,7 +57,7 @@
5157
"package.mustache"
5258
],
5359
"matchStrings": [
54-
"\\s\"typescript\": \"(?<currentValue>.*?)\",\\s"
60+
"\\s\"typescript\": \"(?<currentValue>.*?)\",?\\s"
5561
],
5662
"depNameTemplate": "typescript",
5763
"datasourceTemplate": "npm"
@@ -62,7 +68,7 @@
6268
"package.mustache"
6369
],
6470
"matchStrings": [
65-
"\\s\"jest\": \"(?<currentValue>.*?)\",\\s"
71+
"\\s\"jest\": \"(?<currentValue>.*?)\",?\\s"
6672
],
6773
"depNameTemplate": "jest",
6874
"datasourceTemplate": "npm"
@@ -73,7 +79,7 @@
7379
"package.mustache"
7480
],
7581
"matchStrings": [
76-
"\\s\"ts-jest\": \"(?<currentValue>.*?)\",\\s"
82+
"\\s\"ts-jest\": \"(?<currentValue>.*?)\",?\\s"
7783
],
7884
"depNameTemplate": "ts-jest",
7985
"datasourceTemplate": "npm"
@@ -84,7 +90,7 @@
8490
"package.mustache"
8591
],
8692
"matchStrings": [
87-
"\\s\"ts-node\": \"(?<currentValue>.*?)\",\\s"
93+
"\\s\"ts-node\": \"(?<currentValue>.*?)\",?\\s"
8894
],
8995
"depNameTemplate": "ts-node",
9096
"datasourceTemplate": "npm"

website/docs/clients/guides/copy-or-move-index.mdx

Lines changed: 62 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,14 @@ This method is made to be used within **the same Algolia application**, for cros
88

99
:::
1010

11-
import Tabs from '@theme/Tabs';
11+
import { TabsLanguage } from '../../../src/components/TabsLanguage';
1212
import TabItem from '@theme/TabItem';
1313

1414
## Copy an index
1515

1616
When you copy an index, it doesn’t copy the associated analytics data. The new index starts fresh. Be careful when using the `operationIndex` method with the `copy` parameter to overwrite an existing index, as it associates the existing analytics data of the overwritten index with the new one.
1717

18-
<Tabs
19-
groupId="language"
20-
defaultValue="javascript"
21-
values={[
22-
{ label: 'JavaScript', value: 'javascript', }
23-
]
24-
}>
18+
<TabsLanguage>
2519
<TabItem value="javascript">
2620

2721
```js
@@ -38,23 +32,34 @@ const { taskID } = await client.operationIndex({
3832
});
3933

4034
// Poll the task status until it's done
41-
await client.waitForTask({ indexName: '<DESTINATION_INDEX_NAME>', taskID });
35+
await client.waitForTask({ indexName: '<SOURCE_INDEX_NAME>', taskID });
4236
```
4337

4438
</TabItem>
45-
</Tabs>
39+
<TabItem value="java">
40+
41+
```java
42+
import com.algolia.model.search.*;
43+
44+
UpdatedAtResponse response = client.operationIndex(
45+
"<SOURCE_INDEX_NAME>",
46+
new OperationIndexParams()
47+
.setDestination("<DESTINATION_INDEX_NAME>")
48+
.setOperation(OperationType.COPY)
49+
);
50+
51+
// Poll the task status until it's done
52+
client.waitForTask("<SOURCE_INDEX_NAME>", response.getTaskID());
53+
```
54+
55+
</TabItem>
56+
</TabsLanguage>
4657

4758
## Rename/move an index
4859

4960
Changing the name of an index doesn’t change the name of the index’s analytics. The new name references new analytics; the old and new analytics aren’t merged. If you want to preserve an index’s analytics history, you need to keep using the old name.
5061

51-
<Tabs
52-
groupId="language"
53-
defaultValue="javascript"
54-
values={[
55-
{ label: 'JavaScript', value: 'javascript', }
56-
]
57-
}>
62+
<TabsLanguage>
5863
<TabItem value="javascript">
5964

6065
```js
@@ -71,25 +76,36 @@ const { taskID } = await client.operationIndex({
7176
});
7277

7378
// Poll the task status until it's done
74-
await client.waitForTask({ indexName: '<DESTINATION_INDEX_NAME>', taskID });
79+
await client.waitForTask({ indexName: '<SOURCE_INDEX_NAME>', taskID });
7580
```
7681

7782
</TabItem>
78-
</Tabs>
83+
<TabItem value="java">
84+
85+
```java
86+
import com.algolia.model.search.*;
87+
88+
UpdatedAtResponse response = client.operationIndex(
89+
"<SOURCE_INDEX_NAME>",
90+
new OperationIndexParams()
91+
.setDestination("<DESTINATION_INDEX_NAME>")
92+
.setOperation(OperationType.MOVE)
93+
);
94+
95+
// Poll the task status until it's done
96+
client.waitForTask("<SOURCE_INDEX_NAME>", response.getTaskID());
97+
```
98+
99+
</TabItem>
100+
</TabsLanguage>
79101

80102
## Scope your operation
81103

82104
When the scope is absent from the request, the index will be fully copied, but you can also decide to specify the scope of what you'd like to copy.
83105

84106
The available scopes are: `rules`, `settings`, `synonyms`. You can provide one or many.
85107

86-
<Tabs
87-
groupId="language"
88-
defaultValue="javascript"
89-
values={[
90-
{ label: 'JavaScript', value: 'javascript', }
91-
]
92-
}>
108+
<TabsLanguage>
93109
<TabItem value="javascript">
94110

95111
```js
@@ -107,8 +123,26 @@ const { taskID } = await client.operationIndex({
107123
});
108124

109125
// Poll the task status until it's done
110-
await client.waitForTask({ indexName: '<DESTINATION_INDEX_NAME>', taskID });
126+
await client.waitForTask({ indexName: '<SOURCE_INDEX_NAME>', taskID });
127+
```
128+
129+
</TabItem>
130+
<TabItem value="java">
131+
132+
```java
133+
import com.algolia.model.search.*;
134+
135+
UpdatedAtResponse response = client.operationIndex(
136+
"<SOURCE_INDEX_NAME>",
137+
new OperationIndexParams()
138+
.setDestination("<DESTINATION_INDEX_NAME>")
139+
.setOperation(OperationType.MOVE)
140+
.addScope(ScopeType.RULES)
141+
);
142+
143+
// Poll the task status until it's done
144+
client.waitForTask("<SOURCE_INDEX_NAME>", response.getTaskID());
111145
```
112146

113147
</TabItem>
114-
</Tabs>
148+
</TabsLanguage>

0 commit comments

Comments
 (0)