FieldMapping.java
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
//
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
package com.azure.search.documents.indexes.models;
import com.azure.core.annotation.Fluent;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
/** Defines a mapping between a field in a data source and a target field in an index. */
@Fluent
public final class FieldMapping {
/*
* The name of the field in the data source.
*/
@JsonProperty(value = "sourceFieldName", required = true)
private String sourceFieldName;
/*
* The name of the target field in the index. Same as the source field name
* by default.
*/
@JsonProperty(value = "targetFieldName")
private String targetFieldName;
/*
* A function to apply to each source field value before indexing.
*/
@JsonProperty(value = "mappingFunction")
private FieldMappingFunction mappingFunction;
/**
* Creates an instance of FieldMapping class.
*
* @param sourceFieldName the sourceFieldName value to set.
*/
@JsonCreator
public FieldMapping(@JsonProperty(value = "sourceFieldName", required = true) String sourceFieldName) {
this.sourceFieldName = sourceFieldName;
}
/**
* Get the sourceFieldName property: The name of the field in the data source.
*
* @return the sourceFieldName value.
*/
public String getSourceFieldName() {
return this.sourceFieldName;
}
/**
* Get the targetFieldName property: The name of the target field in the index. Same as the source field name by
* default.
*
* @return the targetFieldName value.
*/
public String getTargetFieldName() {
return this.targetFieldName;
}
/**
* Set the targetFieldName property: The name of the target field in the index. Same as the source field name by
* default.
*
* @param targetFieldName the targetFieldName value to set.
* @return the FieldMapping object itself.
*/
public FieldMapping setTargetFieldName(String targetFieldName) {
this.targetFieldName = targetFieldName;
return this;
}
/**
* Get the mappingFunction property: A function to apply to each source field value before indexing.
*
* @return the mappingFunction value.
*/
public FieldMappingFunction getMappingFunction() {
return this.mappingFunction;
}
/**
* Set the mappingFunction property: A function to apply to each source field value before indexing.
*
* @param mappingFunction the mappingFunction value to set.
* @return the FieldMapping object itself.
*/
public FieldMapping setMappingFunction(FieldMappingFunction mappingFunction) {
this.mappingFunction = mappingFunction;
return this;
}
}