Merge pull request #559 from chlupac/ThemeRepository
OqtaneIgnore implementation to theme elements
This commit is contained in:
commit
17ef268594
|
@ -195,7 +195,7 @@ namespace Oqtane.Repository
|
|||
if (modulecontroltype.Name == "ModuleBase"
|
||||
|| modulecontroltype.IsGenericType
|
||||
|| modulecontroltype.IsAbstract
|
||||
|| Attribute.IsDefined(modulecontroltype, typeof(OqtaneIgnoreAttribute))
|
||||
|| modulecontroltype.IsOqtaneIgnore()
|
||||
) continue;
|
||||
|
||||
string moduleNamespace = modulecontroltype.Namespace;
|
||||
|
|
|
@ -50,7 +50,7 @@ namespace Oqtane.Repository
|
|||
// Check if type should be ignored
|
||||
if (themeControlType.Name == "ThemeBase"
|
||||
|| themeControlType.IsGenericType
|
||||
|| Attribute.IsDefined(themeControlType, typeof(OqtaneIgnoreAttribute))
|
||||
|| themeControlType.IsOqtaneIgnore()
|
||||
) continue;
|
||||
|
||||
string themeNamespace = themeControlType.Namespace;
|
||||
|
@ -62,6 +62,7 @@ namespace Oqtane.Repository
|
|||
// Find all types in the assembly which have the same namespace-root as the theme file
|
||||
// Check with "." in the end to
|
||||
List<Type> typesInTheme = assembly.GetTypes()
|
||||
.Where(item=>!item.IsOqtaneIgnore())
|
||||
.Where(item => item.Namespace != null)
|
||||
// Namespace must be the same or start with "xxx." to ensure that
|
||||
// similar namespaces like "MyTheme" and "MyTheme2" don't match in StartsWith(...)
|
||||
|
|
|
@ -79,5 +79,10 @@ namespace System.Reflection
|
|||
.Where(a => a.GetTypes<IModuleControl>().Any() || a.GetTypes<IThemeControl>().Any() || a.GetTypes<IClientStartup>().Any())
|
||||
.Where(a => Utilities.GetFullTypeName(a.GetName().Name) != "Oqtane.Client");
|
||||
}
|
||||
|
||||
public static bool IsOqtaneIgnore(this Type type)
|
||||
{
|
||||
return Attribute.IsDefined(type, typeof(OqtaneIgnoreAttribute));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user