From 1512d69649855b48b2f430acfb541c5ed0087260 Mon Sep 17 00:00:00 2001 From: Rustam Zaitov Date: Sun, 6 Oct 2013 19:45:53 +0400 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D0=B0=D0=BB=D0=B8=D0=B7=D0=BE?= =?UTF-8?q?=D0=B2=D0=B0=D0=BB=20=D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9?= =?UTF-8?q?=D0=BA=D0=B8=20=D0=BA=D0=BE=D1=82=D0=BE=D1=80=D1=8B=D0=B5=20?= =?UTF-8?q?=D0=B1=D1=83=D0=B4=D1=83=D1=82=20=D0=BF=D1=80=D0=B8=D0=BC=D0=B5?= =?UTF-8?q?=D0=BD=D1=8F=D1=82=D1=8C=D1=81=D1=8F=20=D0=BA=20=D0=BF=D1=80?= =?UTF-8?q?=D0=BE=D0=B5=D0=BA=D1=82=D0=BD=D0=BE=D0=BC=D1=83=20=D1=84=D0=B0?= =?UTF-8?q?=D0=B9=D0=BB=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/parser/CsprojParser/Csproj.py | 7 +++++++ .../CsprojSetting/AttribureSetting.py | 10 ++++++++++ .../CsprojSetting/CsprojSettingBase.py | 7 +++++++ .../CsprojParser/CsprojSetting/KeyValueSetting.py | 15 +++++++++++++++ .../parser/CsprojParser/CsprojSetting/__init__.py | 1 + 5 files changed, 40 insertions(+) create mode 100644 scripts/parser/CsprojParser/Csproj.py create mode 100644 scripts/parser/CsprojParser/CsprojSetting/AttribureSetting.py create mode 100644 scripts/parser/CsprojParser/CsprojSetting/CsprojSettingBase.py create mode 100644 scripts/parser/CsprojParser/CsprojSetting/KeyValueSetting.py create mode 100644 scripts/parser/CsprojParser/CsprojSetting/__init__.py diff --git a/scripts/parser/CsprojParser/Csproj.py b/scripts/parser/CsprojParser/Csproj.py new file mode 100644 index 0000000..f842fc9 --- /dev/null +++ b/scripts/parser/CsprojParser/Csproj.py @@ -0,0 +1,7 @@ +class Csproj: + def __init__(self, appName): + self.appName = appName + self.settings = {} + + def __str__(self): + return 'app Name: {0} settings: {1}'.format(self.appName, self.settings) \ No newline at end of file diff --git a/scripts/parser/CsprojParser/CsprojSetting/AttribureSetting.py b/scripts/parser/CsprojParser/CsprojSetting/AttribureSetting.py new file mode 100644 index 0000000..f6f5315 --- /dev/null +++ b/scripts/parser/CsprojParser/CsprojSetting/AttribureSetting.py @@ -0,0 +1,10 @@ +from parser.CsprojParser.CsprojSetting.CsprojSettingBase import CsprojSettingBase + + +class AttributeSetting(CsprojSettingBase): + def __init__(self, name, value): + self.attribute_name = name + self.attribute_value = value + + def apply(self, csproj): + setattr(csproj, self.attribute_name, self.attribute_value) diff --git a/scripts/parser/CsprojParser/CsprojSetting/CsprojSettingBase.py b/scripts/parser/CsprojParser/CsprojSetting/CsprojSettingBase.py new file mode 100644 index 0000000..12663b1 --- /dev/null +++ b/scripts/parser/CsprojParser/CsprojSetting/CsprojSettingBase.py @@ -0,0 +1,7 @@ +class CsprojSettingBase: + def __init__(self): + pass + + def apply(self, csproj): + pass + diff --git a/scripts/parser/CsprojParser/CsprojSetting/KeyValueSetting.py b/scripts/parser/CsprojParser/CsprojSetting/KeyValueSetting.py new file mode 100644 index 0000000..70e09ac --- /dev/null +++ b/scripts/parser/CsprojParser/CsprojSetting/KeyValueSetting.py @@ -0,0 +1,15 @@ +from parser.CsprojParser.CsprojSetting.CsprojSettingBase import CsprojSettingBase + + +class KeyValueSetting(CsprojSettingBase): + def __init__(self, key, value): + assert key is not None and key != '' + assert value is not None and value != '' + + self.key = key + self.value = value + + def apply(self, csproj): + assert csproj is not None + + csproj.settings[self.key] = self.value diff --git a/scripts/parser/CsprojParser/CsprojSetting/__init__.py b/scripts/parser/CsprojParser/CsprojSetting/__init__.py new file mode 100644 index 0000000..cc31abc --- /dev/null +++ b/scripts/parser/CsprojParser/CsprojSetting/__init__.py @@ -0,0 +1 @@ +__author__ = 'rzaitov'