CharFilterConverter.java
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
package com.azure.search.documents.implementation.converters;
import com.azure.core.util.logging.ClientLogger;
import com.azure.search.documents.indexes.models.MappingCharFilter;
import com.azure.search.documents.indexes.models.PatternReplaceCharFilter;
import com.azure.search.documents.indexes.models.CharFilter;
import static com.azure.search.documents.implementation.util.Constants.ABSTRACT_EXTERNAL_ERROR_MSG;
import static com.azure.search.documents.implementation.util.Constants.ABSTRACT_INTERNAL_ERROR_MSG;
/**
* A converter between {@link com.azure.search.documents.indexes.implementation.models.CharFilter} and {@link CharFilter}.
*/
public final class CharFilterConverter {
private static final ClientLogger LOGGER = new ClientLogger(CharFilterConverter.class);
/**
* Maps abstract class from {@link com.azure.search.documents.indexes.implementation.models.CharFilter} to
* {@link CharFilter}. Dedicate works to sub class converter.
*/
public static CharFilter map(com.azure.search.documents.indexes.implementation.models.CharFilter obj) {
if (obj instanceof com.azure.search.documents.indexes.implementation.models.PatternReplaceCharFilter) {
return PatternReplaceCharFilterConverter.map((com.azure.search.documents.indexes.implementation.models.PatternReplaceCharFilter) obj);
}
if (obj instanceof com.azure.search.documents.indexes.implementation.models.MappingCharFilter) {
return MappingCharFilterConverter.map((com.azure.search.documents.indexes.implementation.models.MappingCharFilter) obj);
}
throw LOGGER.logExceptionAsError(new RuntimeException(String.format(ABSTRACT_EXTERNAL_ERROR_MSG,
obj.getClass().getSimpleName())));
}
/**
* Maps abstract class from {@link CharFilter} to
* {@link com.azure.search.documents.indexes.implementation.models.CharFilter}. Dedicate works to sub class converter.
*/
public static com.azure.search.documents.indexes.implementation.models.CharFilter map(CharFilter obj) {
if (obj instanceof PatternReplaceCharFilter) {
return PatternReplaceCharFilterConverter.map((PatternReplaceCharFilter) obj);
}
if (obj instanceof MappingCharFilter) {
return MappingCharFilterConverter.map((MappingCharFilter) obj);
}
throw LOGGER.logExceptionAsError(new RuntimeException(String.format(ABSTRACT_INTERNAL_ERROR_MSG,
obj.getClass().getSimpleName())));
}
private CharFilterConverter() {
}
}