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

Steve Loughran commented on HADOOP-12654:
-----------------------------------------

doing that makes a mess of subclasses.

Specifically, if you put initialize() in the base constructor, then when 
FileSystem.initialize is called from it, subclasses won't have had their 
constructor fully executed/fields set up. You will not eliminate NPEs, merely 
move them.

Why not use {{FileSystem.get()}} to get an FS instance, the way most people do?

> Move FileSystem.initialize to constructor
> -----------------------------------------
>
>                 Key: HADOOP-12654
>                 URL: https://issues.apache.org/jira/browse/HADOOP-12654
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: fs
>    Affects Versions: 2.7.1
>            Reporter: Dennis Harmath
>            Priority: Minor
>
> After calling the FileSystem constructor, the instance is not initialized 
> yet, but FileSystem#initialize has to be called, otherwise an NPE is thrown 
> when using the instance. The constructor should create a valid instance 
> instead.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to