Vladimir Ozerov created IGNITE-3914:
---------------------------------------
Summary: Hadoop: Move HadoopClassLoader to core module.
Key: IGNITE-3914
URL: https://issues.apache.org/jira/browse/IGNITE-3914
Project: Ignite
Issue Type: Sub-task
Components: hadoop
Affects Versions: 1.7
Reporter: Vladimir Ozerov
Assignee: Ivan Veselovsky
Fix For: 1.8
Implementation plan:
1) We will use notion of "helper". See {{IgfsHelper}} interface as example to
get used to existing code base.
2) {{HadoopClassLoaderUtils}} must be converted to an interface
{{HadoopHelper}}. It will have 4 methods - current {{public static}} methods.
3) There will be two implementations - {{HadoopNoopHelper}} and
{{HadoopHelperImpl}}. The first will be located in {{core}} module, the second
one in {{hadoop}} module.
4) {{HadoopHelper}} is wired up with {{GridKernalContextImpl}} in the same way
as it is done for {{IgfsHelper}}. The only difference is that we will
instantiate {{HadoopHelperImpl}} if Hadoop module is in the classpath. See
other components initialization logic for reference.
5) {{HadoopClassLoader}} will accept helper in constructor. This will require
some refactoring to places where it is used (4 currently). The only problematic
place is {{HadoopV2Job}}.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)