Replace common module with validate module. Move validation function from feed module to validate module and remove feed.py. Correct any usage of validation functions from common and feed modules into validate module.
authorPawel Solyga <Pawel.Solyga@gmail.com>
Wed, 01 Oct 2008 19:21:09 +0000
changeset 249 325fb70c61a9
parent 248 95e0b84e71c5
child 250 4d7bf6bdcd8f
Replace common module with validate module. Move validation function from feed module to validate module and remove feed.py. Correct any usage of validation functions from common and feed modules into validate module. Patch by: Pawel Solyga Review by: to-be-reviewed
app/soc/logic/common.py
app/soc/logic/feed.py
app/soc/logic/validate.py
app/soc/views/site/home.py
app/soc/views/site/user/profile.py
app/soc/views/user/profile.py
--- a/app/soc/logic/common.py	Wed Oct 01 19:17:13 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-#!/usr/bin/python2.5
-#
-# Copyright 2008 the Melange authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-"""Common helper functions.
-"""
-
-__authors__ = [
-  '"Pawel Solyga" <pawel.solyga@gmail.com>',
-  ]
-
-
-import re
-
-
-LINKNAME_PATTERN = r'''(?x)
-    ^
-    [0-9a-z]   # start with ASCII digit or lowercase
-    (
-     [0-9a-z]  # additional ASCII digit or lowercase
-     |         # -OR-
-     _[0-9a-z] # underscore and ASCII digit or lowercase
-    )*         # zero or more of OR group
-    $
-'''
-
-LINKNAME_REGEX = re.compile(LINKNAME_PATTERN)
-
-def isLinkNameFormatValid(link_name):
-  """Returns True if link_name is in a valid format.
-
-  Args:
-    link_name: link name used in URLs for identification
-  """
-  if LINKNAME_REGEX.match(link_name):
-    return True
-  return False
\ No newline at end of file
--- a/app/soc/logic/feed.py	Wed Oct 01 19:17:13 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-#!/usr/bin/python2.5
-#
-# Copyright 2008 the Melange authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-"""Feeds helpers functions.
-"""
-
-__authors__ = [
-  '"Pawel Solyga" <pawel.solyga@gmail.com>',
-  ]
-
-from google.appengine.api import urlfetch
-import feedparser
-
-def isFeedURLValid(feed_url=None):
-  """Returns True if provided url is valid ATOM or RSS.
-
-  Args:
-    feed_url: ATOM or RSS feed url
-  """
-  if feed_url:
-    result = urlfetch.fetch(feed_url)
-    if result.status_code == 200:
-      parsed_feed = feedparser.parse(result.content)
-      if parsed_feed.version and (parsed_feed.version != ''):
-        return True
-  return False
-
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/app/soc/logic/validate.py	Wed Oct 01 19:21:09 2008 +0000
@@ -0,0 +1,68 @@
+#!/usr/bin/python2.5
+#
+# Copyright 2008 the Melange authors.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+"""Common validation helper functions.
+"""
+
+__authors__ = [
+  '"Pawel Solyga" <pawel.solyga@gmail.com>',
+  ]
+
+
+import re
+
+from google.appengine.api import urlfetch
+
+import feedparser
+
+
+def isFeedURLValid(feed_url=None):
+  """Returns True if provided url is valid ATOM or RSS.
+
+  Args:
+    feed_url: ATOM or RSS feed url
+  """
+  if feed_url:
+    result = urlfetch.fetch(feed_url)
+    if result.status_code == 200:
+      parsed_feed = feedparser.parse(result.content)
+      if parsed_feed.version and (parsed_feed.version != ''):
+        return True
+  return False
+
+
+LINKNAME_PATTERN = r'''(?x)
+    ^
+    [0-9a-z]   # start with ASCII digit or lowercase
+    (
+     [0-9a-z]  # additional ASCII digit or lowercase
+     |         # -OR-
+     _[0-9a-z] # underscore and ASCII digit or lowercase
+    )*         # zero or more of OR group
+    $
+'''
+
+LINKNAME_REGEX = re.compile(LINKNAME_PATTERN)
+
+def isLinkNameFormatValid(link_name):
+  """Returns True if link_name is in a valid format.
+
+  Args:
+    link_name: link name used in URLs for identification
+  """
+  if LINKNAME_REGEX.match(link_name):
+    return True
+  return False
\ No newline at end of file
--- a/app/soc/views/site/home.py	Wed Oct 01 19:17:13 2008 +0000
+++ b/app/soc/views/site/home.py	Wed Oct 01 19:21:09 2008 +0000
@@ -34,7 +34,7 @@
 from django import newforms as forms
 
 from soc.logic import out_of_band
-from soc.logic import feed
+from soc.logic import validate
 from soc.logic.site import id_user
 from soc.views import simple
 from soc.views.helpers import custom_widgets
@@ -82,7 +82,7 @@
       # feed url not supplied (which is OK), so do not try to validate it
       return None
     
-    if not feed.isFeedURLValid(feed_url):
+    if not validate.isFeedURLValid(feed_url):
       raise forms.ValidationError('This URL is not a valid ATOM or RSS feed.')
 
     return feed_url
--- a/app/soc/views/site/user/profile.py	Wed Oct 01 19:17:13 2008 +0000
+++ b/app/soc/views/site/user/profile.py	Wed Oct 01 19:21:09 2008 +0000
@@ -28,7 +28,7 @@
 from django import newforms as forms
 from django.utils.translation import ugettext_lazy
 
-from soc.logic import common
+from soc.logic import validate
 from soc.logic import out_of_band
 from soc.logic.site import id_user
 from soc.views import simple
@@ -70,7 +70,7 @@
       # link name not supplied (which is OK), so do not try to validate it
       return None
 
-    if not common.isLinkNameFormatValid(link_name):
+    if not validate.isLinkNameFormatValid(link_name):
       raise forms.ValidationError('This link name is in wrong format.')
     
     return link_name
@@ -213,7 +213,7 @@
  
   def clean_link_name(self):
     link_name = self.cleaned_data.get('link_name')
-    if not common.isLinkNameFormatValid(link_name):
+    if not validate.isLinkNameFormatValid(link_name):
       raise forms.ValidationError("This link name is in wrong format.")
     else:
       key_name = self.data.get('key_name')
@@ -365,7 +365,7 @@
   
   def clean_link_name(self):
     link_name = self.cleaned_data.get('link_name')
-    if not common.isLinkNameFormatValid(link_name):
+    if not validate.LinkNameFormatValid(link_name):
       raise forms.ValidationError("This link name is in wrong format.")
     else:
       if id_user.doesLinkNameExist(link_name):
--- a/app/soc/views/user/profile.py	Wed Oct 01 19:17:13 2008 +0000
+++ b/app/soc/views/user/profile.py	Wed Oct 01 19:21:09 2008 +0000
@@ -28,7 +28,7 @@
 from django import newforms as forms
 from django.utils.translation import ugettext_lazy
 
-from soc.logic import common
+from soc.logic import validate
 from soc.logic import out_of_band
 from soc.logic.site import id_user
 from soc.views import simple
@@ -53,7 +53,7 @@
   
   def clean_link_name(self):
     link_name = self.cleaned_data.get('link_name')
-    if not common.isLinkNameFormatValid(link_name):
+    if not validate.isLinkNameFormatValid(link_name):
       raise forms.ValidationError("This link name is in wrong format.")
     elif not id_user.isLinkNameAvailableForId(link_name):
       raise forms.ValidationError("This link name is already in use.")