diff --git a/LightweightIocContainer/Exceptions/InternalResolveException.cs b/LightweightIocContainer/Exceptions/InternalResolveException.cs new file mode 100644 index 0000000..fd122b9 --- /dev/null +++ b/LightweightIocContainer/Exceptions/InternalResolveException.cs @@ -0,0 +1,21 @@ +// Author: simon.gockner +// Created: 2019-05-27 +// Copyright(c) 2019 SimonG. All Rights Reserved. + +using System; +using LightweightIocContainer.Interfaces; + +namespace LightweightIocContainer.Exceptions +{ + /// + /// An internal Error happened while the tried to resolve an instance + /// + public class InternalResolveException : Exception + { + public InternalResolveException(string message) + : base(message) + { + + } + } +} \ No newline at end of file diff --git a/LightweightIocContainer/Exceptions/InvalidFactoryRegistrationException.cs b/LightweightIocContainer/Exceptions/InvalidFactoryRegistrationException.cs new file mode 100644 index 0000000..9e8d644 --- /dev/null +++ b/LightweightIocContainer/Exceptions/InvalidFactoryRegistrationException.cs @@ -0,0 +1,18 @@ +// Author: simon.gockner +// Created: 2019-05-20 +// Copyright(c) 2019 SimonG. All Rights Reserved. + +namespace LightweightIocContainer.Exceptions +{ + /// + /// The registration of a Factory is not valid + /// + public class InvalidFactoryRegistrationException : InvalidRegistrationException + { + public InvalidFactoryRegistrationException(string message) + : base(message) + { + + } + } +} \ No newline at end of file diff --git a/LightweightIocContainer/Exceptions/InvalidRegistrationException.cs b/LightweightIocContainer/Exceptions/InvalidRegistrationException.cs new file mode 100644 index 0000000..718dd53 --- /dev/null +++ b/LightweightIocContainer/Exceptions/InvalidRegistrationException.cs @@ -0,0 +1,20 @@ +// Author: simon.gockner +// Created: 2019-05-20 +// Copyright(c) 2019 SimonG. All Rights Reserved. + +using System; + +namespace LightweightIocContainer.Exceptions +{ + /// + /// The registration is not valid + /// + public class InvalidRegistrationException : Exception + { + public InvalidRegistrationException(string message) + : base(message) + { + + } + } +} \ No newline at end of file diff --git a/LightweightIocContainer/Exceptions/TypeNotRegisteredException.cs b/LightweightIocContainer/Exceptions/TypeNotRegisteredException.cs new file mode 100644 index 0000000..9d88e67 --- /dev/null +++ b/LightweightIocContainer/Exceptions/TypeNotRegisteredException.cs @@ -0,0 +1,26 @@ +// Author: simon.gockner +// Created: 2019-05-21 +// Copyright(c) 2019 SimonG. All Rights Reserved. + +using System; +using LightweightIocContainer.Interfaces; + +namespace LightweightIocContainer.Exceptions +{ + /// + /// The Type is not registered in this + /// + public class TypeNotRegisteredException : Exception + { + public TypeNotRegisteredException(Type type) + : base($"Type {type.Name} is not registered in this InjectorContainer.") + { + Type = type; + } + + /// + /// The unregistered Type + /// + public Type Type { get; } + } +} \ No newline at end of file diff --git a/LightweightIocContainer/Exceptions/UnknownRegistrationException.cs b/LightweightIocContainer/Exceptions/UnknownRegistrationException.cs new file mode 100644 index 0000000..0e78369 --- /dev/null +++ b/LightweightIocContainer/Exceptions/UnknownRegistrationException.cs @@ -0,0 +1,21 @@ +// Author: simon.gockner +// Created: 2019-05-21 +// Copyright(c) 2019 SimonG. All Rights Reserved. + +using System; +using LightweightIocContainer.Interfaces.Registrations; + +namespace LightweightIocContainer.Exceptions +{ + /// + /// An unknown was used + /// + public class UnknownRegistrationException : Exception + { + public UnknownRegistrationException(string message) + : base(message) + { + + } + } +} \ No newline at end of file