[ 
https://issues.apache.org/jira/browse/FLINK-12031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16802750#comment-16802750
 ] 

Timo Walther commented on FLINK-12031:
--------------------------------------

Initially this method was public. But we decided to make it private because 
depending on when the static method is called, the type extraction would be 
different and would cause unintended behavior.

> the registerFactory method of TypeExtractor  Should not be private
> ------------------------------------------------------------------
>
>                 Key: FLINK-12031
>                 URL: https://issues.apache.org/jira/browse/FLINK-12031
>             Project: Flink
>          Issue Type: Bug
>            Reporter: frank wang
>            Priority: Minor
>
> [https://github.com/apache/flink/blob/master/flink-core/src/main/java/org/apache/flink/api/java/typeutils/TypeExtractor.java]
> {code:java}
> /**
>  * Registers a type information factory globally for a certain type. Every 
> following type extraction
>  * operation will use the provided factory for this type. The factory will 
> have highest precedence
>  * for this type. In a hierarchy of types the registered factory has higher 
> precedence than annotations
>  * at the same level but lower precedence than factories defined down the 
> hierarchy.
>  *
>  * @param t type for which a new factory is registered
>  * @param factory type information factory that will produce {@link 
> TypeInformation}
>  */
> private static void registerFactory(Type t, Class<? extends TypeInfoFactory> 
> factory) {
>    Preconditions.checkNotNull(t, "Type parameter must not be null.");
>    Preconditions.checkNotNull(factory, "Factory parameter must not be null.");
>    if (!TypeInfoFactory.class.isAssignableFrom(factory)) {
>       throw new IllegalArgumentException("Class is not a TypeInfoFactory.");
>    }
>    if (registeredTypeInfoFactories.containsKey(t)) {
>       throw new InvalidTypesException("A TypeInfoFactory for type '" + t + "' 
> is already registered.");
>    }
>    registeredTypeInfoFactories.put(t, factory);
> }
> {code}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to