java.lang.Object
org.elasticsearch.cluster.metadata.DataStreamAlias
- All Implemented Interfaces:
Diffable<DataStreamAlias>
,SimpleDiffable<DataStreamAlias>
,Writeable
,ToXContent
,ToXContentFragment
public class DataStreamAlias
extends Object
implements SimpleDiffable<DataStreamAlias>, ToXContentFragment
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.elasticsearch.cluster.SimpleDiffable
SimpleDiffable.CompleteDiff<T extends Diffable<T>>
Nested classes/interfaces inherited from interface org.elasticsearch.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
Nested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V>
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ParseField
static final ParseField
static final ParseField
static final ParseField
Fields inherited from interface org.elasticsearch.cluster.SimpleDiffable
EMPTY
Fields inherited from interface org.elasticsearch.xcontent.ToXContent
EMPTY, EMPTY_PARAMS
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
boolean
static DataStreamAlias
fromXContent
(XContentParser parser) getAlias()
Returns the alias name, which is the same value as getName()Returns the data streams that are referencedgetName()
Returns the name of this data stream alias.Returns the write data stream this data stream alias is referring to.int
hashCode()
Returns a newDataStreamAlias
instance that contains a new intersection of data streams from this instance and the provided filter.static Diff
<DataStreamAlias> removeDataStream
(String dataStream) Returns aDataStreamAlias
instance based on this instance but with the specified data stream no longer referenced.restore
(DataStreamAlias previous, String renamePattern, String renameReplacement) Performs alias related restore operations for this instance as part of the entire restore operation.toString()
toXContent
(XContentBuilder builder, ToXContent.Params params) Returns a newDataStreamAlias
instance with the provided data stream name added to it as a new member.void
writeTo
(StreamOutput out) Write this into the StreamOutput.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.elasticsearch.cluster.SimpleDiffable
diff
Methods inherited from interface org.elasticsearch.xcontent.ToXContentFragment
isFragment
-
Field Details
-
DATA_STREAMS_FIELD
-
WRITE_DATA_STREAM_FIELD
-
OLD_FILTER_FIELD
-
FILTERS_FIELD
-
-
Constructor Details
-
DataStreamAlias
-
DataStreamAlias
- Throws:
IOException
-
-
Method Details
-
getName
Returns the name of this data stream alias. -
getAlias
Returns the alias name, which is the same value as getName() -
getDataStreams
Returns the data streams that are referenced -
getWriteDataStream
Returns the write data stream this data stream alias is referring to. Write requests targeting this instance will resolve the write index of the write data stream this alias is referring to. Note that the write data stream is also included ingetDataStreams()
. -
getFilter
-
filteringRequired
public boolean filteringRequired() -
update
public DataStreamAlias update(String dataStream, Boolean isWriteDataStream, Map<String, Object> filterAsMap) Returns a newDataStreamAlias
instance with the provided data stream name added to it as a new member. If the provided isWriteDataStream is set totrue
then the provided data stream is also set as write data stream. If the provided isWriteDataStream is set tofalse
and the provided data stream is also the write data stream of this instance then the returned data stream alias instance's write data stream is unset. If the provided filter is the same as the filter of this alias then this instance isn't updated, otherwise it is updated. The same instance is returned if the attempted addition of the provided data stream didn't change this instance. -
removeDataStream
Returns aDataStreamAlias
instance based on this instance but with the specified data stream no longer referenced. Returnsnull
if because of the removal of the provided data stream name a new instance wouldn't reference to any data stream. The same instance is returned if the attempted removal of the provided data stream didn't change this instance. -
intersect
Returns a newDataStreamAlias
instance that contains a new intersection of data streams from this instance and the provided filter. The write data stream gets set to null in the returned instance if the write data stream no longer appears in the intersection. -
restore
public DataStreamAlias restore(DataStreamAlias previous, String renamePattern, String renameReplacement) Performs alias related restore operations for this instance as part of the entire restore operation. If a previous instance is provided then it merges the data streams referenced in this instance and the previous instance. If this instance doesn't have a write data stream then the write index of the other data stream becomes the write data stream of the returned instance. If both this and previous instances have a write data stream then these write data streams need to be the same. If a renamePattern and renameReplacement is provided then data streams this instance is referring to are renamed. Assuming that those data streams match with the specified renamePattern.- Parameters:
previous
- Optionally, the alias instance that this alias instance is replacing.renamePattern
- Optionally, the pattern that is required to match to rename data streams this alias is referring to.renameReplacement
- Optionally, the replacement used to rename data streams this alias is referring to.- Returns:
- a new alias instance that can be applied in the cluster state
-
readDiffFrom
- Throws:
IOException
-
fromXContent
- Throws:
IOException
-
toXContent
public XContentBuilder toXContent(XContentBuilder builder, ToXContent.Params params) throws IOException - Specified by:
toXContent
in interfaceToXContent
- Throws:
IOException
-
writeTo
Description copied from interface:Writeable
Write this into the StreamOutput.- Specified by:
writeTo
in interfaceWriteable
- Throws:
IOException
-
equals
-
hashCode
public int hashCode() -
toString
-