<commit_before>/**
 * Copyright (c) 2014-2016 by the respective copyright holders.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 */
package org.eclipse.smarthome.core.thing.binding;

import java.util.Collection;
import java.util.Locale;

import org.eclipse.smarthome.core.thing.ThingTypeUID;
import org.eclipse.smarthome.core.thing.type.ThingType;

/**
 * The {@link ThingTypeProvider} is responsible for providing thing types.
 *
 * @author <NAME>
 *
 */
public interface ThingTypeProvider {

    /**
     * Provides a collection of thing types
     *
     * @param locale
     *            locale (can be null)
     *
     * @return the thing types provided by the {@link ThingTypeProvider}
     */
    Collection<ThingType> getThingTypes(Locale locale);

    /**
     * Provides a thing type for the given UID or null if no no type for the
     * given UID exists.
     *
     * @param locale
     *            locale (can be null)
     * @return thing type for the given UID or null if no no type for the given
     *         UID exists
     */
    ThingType getThingType(ThingTypeUID thingTypeUID, Locale locale);

}<commit_msg>Corrected a tiny little typo in the Javadoc for ThingTypeProvider. (#2987)<commit_after>/**
 * Copyright (c) 2014-2016 by the respective copyright holders.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 */
package org.eclipse.smarthome.core.thing.binding;

import java.util.Collection;
import java.util.Locale;

import org.eclipse.smarthome.core.thing.ThingTypeUID;
import org.eclipse.smarthome.core.thing.type.ThingType;

/**
 * The {@link ThingTypeProvider} is responsible for providing thing types.
 *
 * @author <NAME>
 *
 */
public interface ThingTypeProvider {

    /**
     * Provides a collection of thing types
     *
     * @param locale
     *            locale (can be null)
     *
     * @return the thing types provided by the {@link ThingTypeProvider}
     */
    Collection<ThingType> getThingTypes(Locale locale);

    /**
     * Provides a thing type for the given UID or null if no type for the
     * given UID exists.
     *
     * @param locale
     *            locale (can be null)
     * @return thing type for the given UID or null if no type for the given
     *         UID exists
     */
    ThingType getThingType(ThingTypeUID thingTypeUID, Locale locale);

}
{'fraction_non_alphanumeric': 0.0866691149467499, 'fraction_numerical': 0.010282776349614395, 'mean_word_length': 2.8914285714285715, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6895357', 'n_tokens_mistral': 807, 'n_tokens_neox': 764, 'n_words': 278}