Skip to content

Commit

Permalink
Fixing a logged error during Grid package installation
Browse files Browse the repository at this point in the history
  • Loading branch information
napernik committed Jun 20, 2014
1 parent 59f9674 commit de78648
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 17 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -329,7 +329,7 @@ public override IEnumerable<XElement> Install()
continue;
}

DataTypeTypesManager.AddNewAssembly(assembly);
DataTypeTypesManager.AddNewAssembly(assembly, false);
}

}
Expand Down
31 changes: 15 additions & 16 deletions Composite/Data/DataTypeTypesManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -93,32 +93,31 @@ public static Type GetDataTypeEmptyClass(DataTypeDescriptor dataTypeDescriptor)



public static void AddNewAssembly(Assembly assembly)
{
AddNewAssembly(assembly, true);
}

/// <summary>
/// Call this method whan a new assembly is load/added into the app domain.
///
/// </summary>
/// <param name="assembly"></param>
public static void AddNewAssembly(Assembly assembly)
/// <param name="logTypeLoadErrors"></param>
public static void AddNewAssembly(Assembly assembly, bool logTypeLoadErrors)
{
try
{
foreach (Type type in assembly.GetTypes())
{
if (typeof(IData).IsAssignableFrom(type))
{
_LoadedDataTypes.Add(type);
}
}
var types = assembly.GetTypes();

_LoadedDataTypes.AddRange(types.Where(typeof(IData).IsAssignableFrom));
}
catch (ReflectionTypeLoadException exception)
{
if (exception.LoaderExceptions != null)
if (logTypeLoadErrors)
{
Log.LogError(LogTitle, new Exception("Failed to load assebmly '{0}'".FormatWith(assembly.FullName), exception.LoaderExceptions.First()));
}
else
{
Log.LogError(LogTitle, new Exception("Failed to load assebmly '{0}'".FormatWith(assembly.FullName), exception));
var exceptionToLog = exception.LoaderExceptions != null ? exception.LoaderExceptions.First() : exception;

Log.LogError(LogTitle, new Exception("Failed to load assebmly '{0}'".FormatWith(assembly.FullName), exceptionToLog));
}
}
}
Expand All @@ -133,7 +132,7 @@ internal static bool IsAllowedDataTypeAssembly(Type dataType)
if (assemblyPath.StartsWith(CodeGenerationManager.BinFolder, StringComparison.InvariantCultureIgnoreCase)) return true;

string assemblyFileName = Path.GetFileName(assemblyPath);
bool locatedInBinFolder = C1Directory.GetFiles(CodeGenerationManager.BinFolder).Where(f => Path.GetFileName(f).Equals(assemblyFileName, StringComparison.InvariantCultureIgnoreCase)).Any();
bool locatedInBinFolder = C1Directory.GetFiles(CodeGenerationManager.BinFolder).Any(f => Path.GetFileName(f).Equals(assemblyFileName, StringComparison.InvariantCultureIgnoreCase));
if (locatedInBinFolder) return true;


Expand Down

0 comments on commit de78648

Please sign in to comment.