Github user dsmiley commented on a diff in the pull request:
https://github.com/apache/lucene-solr/pull/310#discussion_r164310118
--- Diff:
solr/solrj/src/java/org/apache/solr/client/solrj/request/CollectionAdminRequest.java
---
@@ -1319,6 +1320,40 @@ protected CollectionAdminResponse
createResponse(SolrClient client) {
}
+ // MODIFYALIAS request
+
+ /**
+ * Returns a SolrRequest to add or remove metadata from a request
+ * @param aliasName the alias to modify
+ */
+
+ public static ModifyAlias modifyAlias(String aliasName) {
+ return new ModifyAlias(aliasName);
+ }
+
+ public static class ModifyAlias extends AsyncCollectionAdminRequest {
+
+ private final String aliasName;
+ private static Map<String,String> metadata = new HashMap<>();
+
+ public ModifyAlias(String aliasName) {
+ super(CollectionAction.MODIFYALIAS);
+ this.aliasName =
SolrIdentifierValidator.validateAliasName(aliasName);
+ }
+
+ public void addMetadata(String key, String value) {
+ metadata.put(key,value);
+ }
+
+ @Override
+ public SolrParams getParams() {
+ ModifiableSolrParams params = (ModifiableSolrParams)
super.getParams();
+ params.set(CoreAdminParams.NAME, aliasName);
+ metadata.keySet().forEach(key -> params.set("metadata." + key,
metadata.get(key)));
--- End diff --
Better:
```
metadata.forEach((key, value) -> params.set("metadata." + key, value));
```
I'll do it.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]