| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 | 
							- /*
 -  * Copyright (C) 2012-2013 Reece H. Dunn
 -  * Copyright (C) 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.reecedunn.espeak;
 - 
 - import java.util.Locale;
 - import java.util.MissingResourceException;
 - 
 - import android.speech.tts.TextToSpeech;
 - 
 - public class Voice {
 -     public final String name;
 -     public final String identifier;
 -     public final int gender;
 -     public final int age;
 -     public final Locale locale;
 - 
 -     public Voice(String name, String identifier, int gender, int age, Locale locale) {
 -         this.name = name;
 -         this.identifier = identifier;
 -         this.gender = gender;
 -         this.age = age;
 -         this.locale = locale;
 -     }
 - 
 -     /**
 -      * Attempts a partial match against a query locale.
 -      *
 -      * @param query The locale to match.
 -      * @return A text-to-speech availability code. One of:
 -      *         <ul>
 -      *         <li>{@link TextToSpeech#LANG_NOT_SUPPORTED}
 -      *         <li>{@link TextToSpeech#LANG_AVAILABLE}
 -      *         <li>{@link TextToSpeech#LANG_COUNTRY_AVAILABLE}
 -      *         <li>{@link TextToSpeech#LANG_COUNTRY_VAR_AVAILABLE}
 -      *         </ul>
 -      */
 -     public int match(Locale query) {
 -         if (!locale.getISO3Language().equals(query.getISO3Language())) {
 -             return TextToSpeech.LANG_NOT_SUPPORTED;
 -         }
 -         try {
 -             if (!locale.getISO3Country().equals(query.getISO3Country())) {
 -                 return TextToSpeech.LANG_AVAILABLE;
 -             }
 -         } catch (MissingResourceException e) {
 -             return TextToSpeech.LANG_AVAILABLE;
 -         }
 -         if (!locale.getVariant().equals(query.getVariant())) {
 -             return TextToSpeech.LANG_COUNTRY_AVAILABLE;
 -         }
 -         return TextToSpeech.LANG_COUNTRY_VAR_AVAILABLE;
 -     }
 - 
 -     @Override
 -     public String toString() {
 -         String ret = locale.getISO3Language();
 -         if (locale.getISO3Country() != null && !locale.getISO3Country().isEmpty()) {
 -             ret += '-';
 -             ret += locale.getISO3Country();
 -         }
 -         if (locale.getVariant() != null && !locale.getVariant().isEmpty()) {
 -             ret += '-';
 -             ret += locale.getVariant();
 -         }
 -         return ret;
 -     }
 - }
 
 
  |