diff --git a/Patterns/Modules/Custom.vb b/Patterns/Modules/Custom.vb
new file mode 100644
index 00000000..04c22ded
--- /dev/null
+++ b/Patterns/Modules/Custom.vb
@@ -0,0 +1,37 @@
+Imports DigitalData.Modules.Logging
+
+Namespace Modules
+ '''
+ ''' Custom Patterns that are defined at runtime
+ '''
+ Public Class Custom
+ Inherits BaseModule
+ Implements IModule
+
+ Public Property PatternIdentifier As String = "CUST" Implements IModule.PatternIdentifier
+ Public Property IsComplex As Boolean = False Implements IModule.IsComplex
+
+ Public Sub New(pLogConfig As LogConfig)
+ MyBase.New(pLogConfig)
+ End Sub
+
+ Public Function Replace(pInput As String, pCustomValues As Dictionary(Of String, String)) As String
+ Dim oResult = pInput
+ Dim oCounter = 0
+ Dim oNow As Date = Now
+
+ Logger.Trace("Replacing Custom Patterns")
+
+ While HasPattern(oResult, PatternIdentifier)
+ For Each oCustomValue In pCustomValues
+ If ContainsPatternAndValue(oResult, PatternIdentifier, oCustomValue.Key) Then
+ oResult = ReplacePattern(oResult, PatternIdentifier, oCustomValue.Value)
+ End If
+ Next
+ IncrementCounterOrThrow(oCounter)
+ End While
+
+ Return oResult
+ End Function
+ End Class
+End Namespace
diff --git a/Patterns/Patterns.vbproj b/Patterns/Patterns.vbproj
index 6842b7b0..b6ae95ff 100644
--- a/Patterns/Patterns.vbproj
+++ b/Patterns/Patterns.vbproj
@@ -91,6 +91,7 @@
+
diff --git a/Patterns/Patterns2.vb b/Patterns/Patterns2.vb
index c94d45c8..5c388a11 100644
--- a/Patterns/Patterns2.vb
+++ b/Patterns/Patterns2.vb
@@ -139,6 +139,23 @@ Public Class Patterns2
End Try
End Function
+ Public Function ReplaceCustomValues(pInput As String, pCustomValues As Dictionary(Of String, String)) As String
+ Logger.Debug("Replacing Custom Values")
+
+ Dim oResult = pInput
+
+ Try
+ Dim oCustom = New Modules.Custom(LogConfig)
+ oResult = oCustom.Replace(oResult, pCustomValues)
+
+ Return oResult
+ Catch ex As Exception
+ Logger.Warn("Error occurred while replacing Globix Values")
+ Logger.Error(ex)
+ Return oResult
+ End Try
+ End Function
+
#Region "Helper Functions"
'''
''' Wraps a pattern-type and -value in the common format: {#type#value}