From db34ff70a4f94f108365020f2c688346bbcbafa6 Mon Sep 17 00:00:00 2001 From: Petrutiu Mihai Date: Thu, 14 Jul 2016 16:54:53 +0300 Subject: [PATCH] Add template method pattern diagrams --- .../BehavioralPatternsDiagrams.modelproj | 21 + .../BehavioralPatternsDiagrams.uml | 870 ++++++++++++++++++ .../TemplateMethodPattern.classdiagram | 57 ++ .../TemplateMethodPattern.classdiagram.layout | 28 + .../TemplateMethodPattern.sequencediagram | 468 ++++++++++ ...mplateMethodPattern.sequencediagram.layout | 110 +++ .../TemplateMethodPatternClassDiagram.PNG | Bin 0 -> 7255 bytes .../TemplateMethodPatternSequenceDiagram.PNG | Bin 0 -> 15601 bytes 8 files changed, 1554 insertions(+) create mode 100644 BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.classdiagram create mode 100644 BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.classdiagram.layout create mode 100644 BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.sequencediagram create mode 100644 BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.sequencediagram.layout create mode 100644 BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPatternClassDiagram.PNG create mode 100644 BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPatternSequenceDiagram.PNG diff --git a/BehavioralPatternsDiagrams/BehavioralPatternsDiagrams.modelproj b/BehavioralPatternsDiagrams/BehavioralPatternsDiagrams.modelproj index 7905d4a..f80afef 100644 --- a/BehavioralPatternsDiagrams/BehavioralPatternsDiagrams.modelproj +++ b/BehavioralPatternsDiagrams/BehavioralPatternsDiagrams.modelproj @@ -102,6 +102,26 @@ Content + + Content + + + Content + TemplateMethodPattern\TemplateMethodPattern.classdiagram + + + Content + + + Content + TemplateMethodPattern\TemplateMethodPattern.sequencediagram + + + Content + + + Content + Content @@ -109,6 +129,7 @@ + diff --git a/BehavioralPatternsDiagrams/ModelDefinition/BehavioralPatternsDiagrams.uml b/BehavioralPatternsDiagrams/ModelDefinition/BehavioralPatternsDiagrams.uml index 6bd683b..ce09f0b 100644 --- a/BehavioralPatternsDiagrams/ModelDefinition/BehavioralPatternsDiagrams.uml +++ b/BehavioralPatternsDiagrams/ModelDefinition/BehavioralPatternsDiagrams.uml @@ -3390,6 +3390,876 @@ Id="10d278a0-bf30-431a-9e91-c391ced55258" name="ExecutionEvent" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.classdiagram.layout b/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.classdiagram.layout new file mode 100644 index 0000000..0dc761a --- /dev/null +++ b/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.classdiagram.layout @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.sequencediagram b/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.sequencediagram new file mode 100644 index 0000000..4051f72 --- /dev/null +++ b/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.sequencediagram @@ -0,0 +1,468 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.sequencediagram.layout b/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.sequencediagram.layout new file mode 100644 index 0000000..9cd4c85 --- /dev/null +++ b/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPattern.sequencediagram.layout @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPatternClassDiagram.PNG b/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPatternClassDiagram.PNG new file mode 100644 index 0000000000000000000000000000000000000000..852e78168e8f2673063120dbf4bf0713b483d87d GIT binary patch literal 7255 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 Wjp#FDcu9W-0vZo=RVtNipZy;N0l7;6 literal 0 HcmV?d00001 diff --git a/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPatternSequenceDiagram.PNG b/BehavioralPatternsDiagrams/TemplateMethodPattern/TemplateMethodPatternSequenceDiagram.PNG new file mode 100644 index 0000000000000000000000000000000000000000..a8c40aaf4a5001e3790965f4e859a84c70761b02 GIT binary patch literal 15601 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 BJ@Nnm literal 0 HcmV?d00001