com.google.gwt.i18n.server.PluralRuleAdapter Maven / Gradle / Ivy
/*
* Copyright 2011 Google 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 com.google.gwt.i18n.server;
import com.google.gwt.i18n.client.PluralRule;
import com.google.gwt.i18n.client.PluralRule.PluralForm;
import com.google.gwt.i18n.shared.AlternateMessageSelector;
/**
* Adapter between {@link PluralRule} and {@link AlternateMessageSelector}.
*
* Note that this is temporary - eventually, {@link PluralRule} will
* implement {@link AlternateMessageSelector}.
*/
public class PluralRuleAdapter implements AlternateMessageSelector {
private final PluralForm[] pluralForms;
public PluralRuleAdapter(PluralRule pluralRule) {
pluralForms = pluralRule.pluralForms();
}
public boolean isFormAcceptable(String form) {
if (form.startsWith("=")) {
return true;
}
for (PluralForm pluralForm : pluralForms) {
if (pluralForm.getName().equals(form)) {
return true;
}
}
return false;
}
}