Skip to content

Commit

Permalink
Fix alias parsing
Browse files Browse the repository at this point in the history
  • Loading branch information
jimczi committed Jul 25, 2016
1 parent 6aeae7a commit 2000457
Showing 1 changed file with 10 additions and 9 deletions.
Expand Up @@ -23,7 +23,7 @@
import java.util.Map;

public class IndicesAliases {
private Map<String, Map<String, Alias> > indices;
private final Map<String, Map<String, Alias> > indices;

private IndicesAliases(Map<String, Map<String, Alias> > indices) {
this.indices = indices;
Expand All @@ -37,23 +37,24 @@ public static IndicesAliases parse(Map<String, Object> resp) {
final Map<String, Map<String, Alias> > indices = new HashMap<String, Map<String, Alias> > ();
for (Map.Entry<String, Object> index : resp.entrySet()) {
final Map<String, Object> metadata = (Map<String, Object>) index.getValue();
final Map<String, Object> aliases = (Map<String, Object>) metadata.get("aliases");
final Map<String, Map<String, Object> > aliases = (Map<String, Map<String, Object> >) metadata.get("aliases");
final Map<String, Alias> indexAliases = new HashMap<String, Alias> ();
indices.put(index.getKey(), indexAliases);
for (Map.Entry<String, Object> entry : aliases.entrySet()) {
for (Map.Entry<String, Map<String, Object> > entry : aliases.entrySet()) {
String name = entry.getKey();
Map<String, Object> aliasMetadata = entry.getValue();
String searchRouting = null;
String indexRouting = null;
Map<String, Object> filter = null;

if (metadata.containsKey("search_routing")) {
searchRouting = (String) metadata.get("search_routing");
if (aliasMetadata.containsKey("search_routing")) {
searchRouting = (String) aliasMetadata.get("search_routing");
}
if (metadata.containsKey("index_routing")) {
indexRouting = (String) metadata.get("index_routing");
if (aliasMetadata.containsKey("index_routing")) {
indexRouting = (String) aliasMetadata.get("index_routing");
}
if (metadata.containsKey("filter")) {
filter = (Map<String, Object>) metadata.get("filter");
if (aliasMetadata.containsKey("filter")) {
filter = (Map<String, Object>) aliasMetadata.get("filter");
}
Alias alias = new Alias(name, searchRouting, indexRouting, filter);
indexAliases.put(alias.name, alias);
Expand Down

0 comments on commit 2000457

Please sign in to comment.