@startuml
namespace Jawira.CaseConverter.Split {
class DashSplitter << class >> {
+PATTERN
--
+split()
}
abstract Splitter << abstract >> {
#inputString
--
+__construct()
+<i>split</i>()
#splitUsingPattern()
}
class SpaceSplitter << class >> {
+PATTERN
--
+split()
}
class DotSplitter << class >> {
+PATTERN
--
+split()
}
class UnderscoreSplitter << class >> {
+PATTERN
--
+split()
}
class UppercaseSplitter << class >> {
+split()
#splitUsingUnderscore()
}
}
Jawira.CaseConverter.Split.DashSplitter --|> Jawira.CaseConverter.Split.Splitter
Jawira.CaseConverter.Split.SpaceSplitter --|> Jawira.CaseConverter.Split.Splitter
Jawira.CaseConverter.Split.DotSplitter --|> Jawira.CaseConverter.Split.Splitter
Jawira.CaseConverter.Split.UnderscoreSplitter --|> Jawira.CaseConverter.Split.Splitter
Jawira.CaseConverter.Split.UppercaseSplitter --|> Jawira.CaseConverter.Split.Splitter
@enduml
|