public virtual void SwapAliasIndex(string aliasName, string newIndexName)
        {
            var existingIndexesOnAlias = Client.GetIndicesPointingToAlias(aliasName);
            var aliasRequest           = new BulkAliasRequest {
                Actions = new List <IAliasAction>()
            };

            foreach (var existingIndexOnAlias in existingIndexesOnAlias)
            {
                aliasRequest.Actions.Add(new AliasRemoveAction {
                    Remove = new AliasRemoveOperation {
                        Alias = aliasName, Index = existingIndexOnAlias
                    }
                });
            }

            aliasRequest.Actions.Add(new AliasAddAction {
                Add = new AliasAddOperation {
                    Alias = aliasName, Index = newIndexName
                }
            });

            Client.Alias(aliasRequest);
        }