Repository: incubator-reef Updated Branches: refs/heads/master c538cb74f -> 0d9dc4f47
[REEF-763] Remove automatic creation of the class hierarchy JIRA: [REEF-763](https://issues.apache.org/jira/browse/REEF-763) Pull request: This closes #514 Project: http://git-wip-us.apache.org/repos/asf/incubator-reef/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-reef/commit/0d9dc4f4 Tree: http://git-wip-us.apache.org/repos/asf/incubator-reef/tree/0d9dc4f4 Diff: http://git-wip-us.apache.org/repos/asf/incubator-reef/diff/0d9dc4f4 Branch: refs/heads/master Commit: 0d9dc4f47e1f84606949f2c96f468106d9860126 Parents: c538cb7 Author: Mariia Mykhailova <mar...@apache.org> Authored: Tue Sep 22 13:31:35 2015 -0700 Committer: Julia Wang <jul...@apache.org> Committed: Tue Sep 22 23:54:21 2015 -0700 ---------------------------------------------------------------------- ...assHierarchyGeneratingDriverStartObserver.cs | 117 ------------------- .../DriverConfiguration.cs | 5 +- .../Org.Apache.REEF.Driver.csproj | 1 - .../KMeans/KMeansDriverHandlers.cs | 14 --- .../BroadcastReduceDriver.cs | 13 --- .../PipelinedBroadcastReduceDriver.cs | 14 --- .../ScatterReduceDriver.cs | 14 --- .../Functional/Messaging/MessageDriver.cs | 11 -- 8 files changed, 1 insertion(+), 188 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/0d9dc4f4/lang/cs/Org.Apache.REEF.Driver/ClassHierarchyGeneratingDriverStartObserver.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Driver/ClassHierarchyGeneratingDriverStartObserver.cs b/lang/cs/Org.Apache.REEF.Driver/ClassHierarchyGeneratingDriverStartObserver.cs deleted file mode 100644 index 3efcfbf..0000000 --- a/lang/cs/Org.Apache.REEF.Driver/ClassHierarchyGeneratingDriverStartObserver.cs +++ /dev/null @@ -1,117 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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. - */ - -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Runtime.InteropServices; -using Org.Apache.REEF.Common.Files; -using Org.Apache.REEF.Common.Tasks; -using Org.Apache.REEF.Driver.Bridge; -using Org.Apache.REEF.Tang.Annotations; -using Org.Apache.REEF.Utilities.Logging; - -namespace Org.Apache.REEF.Driver -{ - /// <summary> - /// Utility class that generates the class hierarchy for the assemblies in the `global` folder. - /// </summary> - internal sealed class ClassHierarchyGeneratingDriverStartObserver : IObserver<IDriverStarted>, IObserver<IDriverRestarted> - { - private static readonly Logger Logger = Logger.GetLogger(typeof(ClassHierarchyGeneratingDriverStartObserver)); - - private readonly REEFFileNames _fileNames; - private ISet<string> _assemblies; - - [Inject] - private ClassHierarchyGeneratingDriverStartObserver(REEFFileNames fileNames, [Parameter(typeof(DriverBridgeConfigurationOptions.SetOfAssemblies))] ISet<string> assemlies) - { - _assemblies = assemlies; - _fileNames = fileNames; - } - - /// <summary> - /// Generates the class hierarchy file - /// </summary> - /// <param name="value"></param> - public void OnNext(IDriverStarted value) - { - GenerateClassHierarchyBin(); - } - - /// <summary> - /// Generates the class hierarchy file - /// </summary> - /// <param name="value"></param> - public void OnNext(IDriverRestarted value) - { - GenerateClassHierarchyBin(); - } - - /// <summary> - /// Silently ignored, assuming that a user-bound Observer will catch it. - /// </summary> - /// <param name="error"></param> - public void OnError(Exception error) - { - // Silently ignored, assuming that a user-bound Observer will catch it. - } - - /// <summary> - /// Silently ignored, assuming that a user-bound Observer will catch it. - /// </summary> - public void OnCompleted() - { - // Silently ignored, assuming that a user-bound Observer will catch it. - } - - /// <summary> - /// Generates the clr class hierarchy. - /// </summary> - private void GenerateClassHierarchyBin() - { - if (_assemblies != null && _assemblies.Count > 0) - { - //adding system level assemblies - _assemblies.Add(typeof(IDriver).Assembly.GetName().Name); - _assemblies.Add(typeof(ITask).Assembly.GetName().Name); - - ClrHandlerHelper.GenerateClassHierarchy(_assemblies); - } - else - { - ClrHandlerHelper.GenerateClassHierarchy(GetAssembliesInGlobalFolder()); - } - } - - /// <summary> - /// </summary> - /// <returns>The paths of all assemblies in the reef/global folder.</returns> - private ISet<string> GetAssembliesInGlobalFolder() - { - return new HashSet<string>(Directory.GetFiles(_fileNames.GetGlobalFolderPath()) - .Where(e => !(string.IsNullOrWhiteSpace(e))) - .Select(Path.GetFullPath) - .Where(File.Exists) - .Where(Org.Apache.REEF.Tang.Util.AssemblyLoader.IsAssembly) - .Select(Path.GetFileNameWithoutExtension)); - } - } -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/0d9dc4f4/lang/cs/Org.Apache.REEF.Driver/DriverConfiguration.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Driver/DriverConfiguration.cs b/lang/cs/Org.Apache.REEF.Driver/DriverConfiguration.cs index 9047c04..c99036e 100644 --- a/lang/cs/Org.Apache.REEF.Driver/DriverConfiguration.cs +++ b/lang/cs/Org.Apache.REEF.Driver/DriverConfiguration.cs @@ -233,10 +233,7 @@ namespace Org.Apache.REEF.Driver MaxApplicationSubmissions) .BindNamedParameter(GenericType<DriverBridgeConfigurationOptions.DriverRestartEvaluatorRecoverySeconds>.Class, DriverRestartEvaluatorRecoverySeconds) - .Build() - // TODO: Move this up - .Set(OnDriverStarted, GenericType<ClassHierarchyGeneratingDriverStartObserver>.Class) - .Set(OnDriverRestarted, GenericType<ClassHierarchyGeneratingDriverStartObserver>.Class); + .Build(); } } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/0d9dc4f4/lang/cs/Org.Apache.REEF.Driver/Org.Apache.REEF.Driver.csproj ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Driver/Org.Apache.REEF.Driver.csproj b/lang/cs/Org.Apache.REEF.Driver/Org.Apache.REEF.Driver.csproj index dd0b2cd..e3e7d53 100644 --- a/lang/cs/Org.Apache.REEF.Driver/Org.Apache.REEF.Driver.csproj +++ b/lang/cs/Org.Apache.REEF.Driver/Org.Apache.REEF.Driver.csproj @@ -91,7 +91,6 @@ under the License. <Compile Include="Bridge\ILogger.cs" /> <Compile Include="Bridge\ReefHttpRequest.cs" /> <Compile Include="Bridge\ReefHttpResponse.cs" /> - <Compile Include="ClassHierarchyGeneratingDriverStartObserver.cs" /> <Compile Include="Constants.cs" /> <Compile Include="Context\ContextConfiguration.cs" /> <Compile Include="Context\ContextConfigurationOptions.cs" /> http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/0d9dc4f4/lang/cs/Org.Apache.REEF.Examples/MachineLearning/KMeans/KMeansDriverHandlers.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Examples/MachineLearning/KMeans/KMeansDriverHandlers.cs b/lang/cs/Org.Apache.REEF.Examples/MachineLearning/KMeans/KMeansDriverHandlers.cs index 20f30a5..99934e2 100644 --- a/lang/cs/Org.Apache.REEF.Examples/MachineLearning/KMeans/KMeansDriverHandlers.cs +++ b/lang/cs/Org.Apache.REEF.Examples/MachineLearning/KMeans/KMeansDriverHandlers.cs @@ -122,8 +122,6 @@ namespace Org.Apache.REEF.Examples.MachineLearning.KMeans .Build(); _groupCommTaskStarter = new TaskStarter(_groupCommDriver, _totalEvaluators); - - CreateClassHierarchy(); } public void OnNext(IAllocatedEvaluator allocatedEvaluator) @@ -204,18 +202,6 @@ namespace Org.Apache.REEF.Examples.MachineLearning.KMeans { throw new NotImplementedException(); } - - private void CreateClassHierarchy() - { - HashSet<string> clrDlls = new HashSet<string>(); - clrDlls.Add(typeof(IDriver).Assembly.GetName().Name); - clrDlls.Add(typeof(ITask).Assembly.GetName().Name); - clrDlls.Add(typeof(LegacyKMeansTask).Assembly.GetName().Name); - clrDlls.Add(typeof(INameClient).Assembly.GetName().Name); - clrDlls.Add(typeof(INetworkService<>).Assembly.GetName().Name); - - ClrHandlerHelper.GenerateClassHierarchy(clrDlls); - } } [NamedParameter("Number of partitions")] http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/0d9dc4f4/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/BroadcastReduceDriverAndTasks/BroadcastReduceDriver.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/BroadcastReduceDriverAndTasks/BroadcastReduceDriver.cs b/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/BroadcastReduceDriverAndTasks/BroadcastReduceDriver.cs index 6f1ad0f..9220834 100644 --- a/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/BroadcastReduceDriverAndTasks/BroadcastReduceDriver.cs +++ b/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/BroadcastReduceDriverAndTasks/BroadcastReduceDriver.cs @@ -114,8 +114,6 @@ namespace Org.Apache.REEF.Network.Examples.GroupCommunication.BroadcastReduceDri .Build(); _groupCommTaskStarter = new TaskStarter(_groupCommDriver, numEvaluators); - - CreateClassHierarchy(); } public void OnNext(IAllocatedEvaluator allocatedEvaluator) @@ -197,17 +195,6 @@ namespace Org.Apache.REEF.Network.Examples.GroupCommunication.BroadcastReduceDri { } - private void CreateClassHierarchy() - { - HashSet<string> clrDlls = new HashSet<string>(); - clrDlls.Add(typeof(IDriver).Assembly.GetName().Name); - clrDlls.Add(typeof(ITask).Assembly.GetName().Name); - clrDlls.Add(typeof(BroadcastReduceDriver).Assembly.GetName().Name); - clrDlls.Add(typeof(INameClient).Assembly.GetName().Name); - clrDlls.Add(typeof(INetworkService<>).Assembly.GetName().Name); - ClrHandlerHelper.GenerateClassHierarchy(clrDlls); - } - private class SumFunction : IReduceFunction<int> { [Inject] http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/0d9dc4f4/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/PipelineBroadcastReduceDriverAndTasks/PipelinedBroadcastReduceDriver.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/PipelineBroadcastReduceDriverAndTasks/PipelinedBroadcastReduceDriver.cs b/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/PipelineBroadcastReduceDriverAndTasks/PipelinedBroadcastReduceDriver.cs index 9fb9652..90c0709 100644 --- a/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/PipelineBroadcastReduceDriverAndTasks/PipelinedBroadcastReduceDriver.cs +++ b/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/PipelineBroadcastReduceDriverAndTasks/PipelinedBroadcastReduceDriver.cs @@ -124,8 +124,6 @@ namespace Org.Apache.REEF.Network.Examples.GroupCommunication.PipelineBroadcastR .Build(); _groupCommTaskStarter = new TaskStarter(_groupCommDriver, numEvaluators); - - CreateClassHierarchy(); } public void OnNext(IAllocatedEvaluator allocatedEvaluator) @@ -211,18 +209,6 @@ namespace Org.Apache.REEF.Network.Examples.GroupCommunication.PipelineBroadcastR _evaluatorRequestor.Submit(request); } - private void CreateClassHierarchy() - { - var clrDlls = new HashSet<string>(); - clrDlls.Add(typeof(IDriver).Assembly.GetName().Name); - clrDlls.Add(typeof(ITask).Assembly.GetName().Name); - clrDlls.Add(typeof(PipelinedBroadcastReduceDriver).Assembly.GetName().Name); - clrDlls.Add(typeof(INameClient).Assembly.GetName().Name); - clrDlls.Add(typeof(INetworkService<>).Assembly.GetName().Name); - - ClrHandlerHelper.GenerateClassHierarchy(clrDlls); - } - private class SumFunction : IReduceFunction<int> { [Inject] http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/0d9dc4f4/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/ScatterReduceDriverAndTasks/ScatterReduceDriver.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/ScatterReduceDriverAndTasks/ScatterReduceDriver.cs b/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/ScatterReduceDriverAndTasks/ScatterReduceDriver.cs index eb4cf86..5953c31 100644 --- a/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/ScatterReduceDriverAndTasks/ScatterReduceDriver.cs +++ b/lang/cs/Org.Apache.REEF.Network.Examples/GroupCommunication/ScatterReduceDriverAndTasks/ScatterReduceDriver.cs @@ -101,8 +101,6 @@ namespace Org.Apache.REEF.Network.Examples.GroupCommunication.ScatterReduceDrive .Build(); _groupCommTaskStarter = new TaskStarter(_groupCommDriver, numEvaluators); - - CreateClassHierarchy(); } public void OnNext(IAllocatedEvaluator allocatedEvaluator) @@ -167,18 +165,6 @@ namespace Org.Apache.REEF.Network.Examples.GroupCommunication.ScatterReduceDrive { } - private void CreateClassHierarchy() - { - HashSet<string> clrDlls = new HashSet<string>(); - clrDlls.Add(typeof(IDriver).Assembly.GetName().Name); - clrDlls.Add(typeof(ITask).Assembly.GetName().Name); - clrDlls.Add(typeof(ScatterReduceDriver).Assembly.GetName().Name); - clrDlls.Add(typeof(INameClient).Assembly.GetName().Name); - clrDlls.Add(typeof(INetworkService<>).Assembly.GetName().Name); - - ClrHandlerHelper.GenerateClassHierarchy(clrDlls); - } - private class SumFunction : IReduceFunction<int> { [Inject] http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/0d9dc4f4/lang/cs/Org.Apache.REEF.Tests/Functional/Messaging/MessageDriver.cs ---------------------------------------------------------------------- diff --git a/lang/cs/Org.Apache.REEF.Tests/Functional/Messaging/MessageDriver.cs b/lang/cs/Org.Apache.REEF.Tests/Functional/Messaging/MessageDriver.cs index e9d39f9..c809b2d 100644 --- a/lang/cs/Org.Apache.REEF.Tests/Functional/Messaging/MessageDriver.cs +++ b/lang/cs/Org.Apache.REEF.Tests/Functional/Messaging/MessageDriver.cs @@ -52,7 +52,6 @@ namespace Org.Apache.REEF.Tests.Functional.Messaging [Inject] public MessageDriver(IEvaluatorRequestor evaluatorRequestor) { - CreateClassHierarchy(); _evaluatorRequestor = evaluatorRequestor; } public void OnNext(IAllocatedEvaluator eval) @@ -113,15 +112,5 @@ namespace Org.Apache.REEF.Tests.Functional.Messaging { throw new NotImplementedException(); } - - private void CreateClassHierarchy() - { - HashSet<string> clrDlls = new HashSet<string>(); - clrDlls.Add(typeof(IDriver).Assembly.GetName().Name); - clrDlls.Add(typeof(ITask).Assembly.GetName().Name); - clrDlls.Add(typeof(MessageTask).Assembly.GetName().Name); - - ClrHandlerHelper.GenerateClassHierarchy(clrDlls); - } } } \ No newline at end of file