/* * Copyright 2016 MongoDB, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.mongodb.morphia; import com.mongodb.client.model.CollationAlternate; import com.mongodb.client.model.CollationCaseFirst; import com.mongodb.client.model.CollationMaxVariable; import com.mongodb.client.model.CollationStrength; import org.mongodb.morphia.annotations.Collation; class CollationBuilder extends AnnotationBuilder<Collation> implements Collation { @Override public Class<Collation> annotationType() { return Collation.class; } @Override public boolean backwards() { return get("backwards"); } @Override public boolean caseLevel() { return get("caseLevel"); } @Override public String locale() { return get("locale"); } @Override public boolean normalization() { return get("normalization"); } @Override public boolean numericOrdering() { return get("numericOrdering"); } @Override public CollationAlternate alternate() { return get("alternate"); } @Override public CollationCaseFirst caseFirst() { return get("caseFirst"); } @Override public CollationMaxVariable maxVariable() { return get("maxVariable"); } @Override public CollationStrength strength() { return get("strength"); } CollationBuilder backwards(final boolean backwards) { put("backwards", backwards); return this; } CollationBuilder caseLevel(final boolean caseLevel) { put("caseLevel", caseLevel); return this; } CollationBuilder locale(final String locale) { put("locale", locale); return this; } CollationBuilder normalization(final boolean normalization) { put("normalization", normalization); return this; } CollationBuilder numericOrdering(final boolean numericOrdering) { put("numericOrdering", numericOrdering); return this; } CollationBuilder alternate(final CollationAlternate alternate) { put("alternate", alternate); return this; } CollationBuilder caseFirst(final CollationCaseFirst caseFirst) { put("caseFirst", caseFirst); return this; } CollationBuilder maxVariable(final CollationMaxVariable maxVariable) { put("maxVariable", maxVariable); return this; } CollationBuilder strength(final CollationStrength strength) { put("strength", strength); return this; } }