s4:provision Move exceptions into a new file
authorAndrew Bartlett <abartlet@samba.org>
Tue, 24 Nov 2009 00:09:30 +0000 (11:09 +1100)
committerAndrew Bartlett <abartlet@samba.org>
Tue, 24 Nov 2009 00:09:30 +0000 (11:09 +1100)
This allows provisionbackend and provision to both raise ProvisionException

source4/scripting/python/samba/provision.py
source4/scripting/python/samba/provisionbackend.py
source4/scripting/python/samba/provisionexceptions.py [new file with mode: 0644]

index b5e8867e16c2d32d0da5303d32af2561cecfdb22..01ffc16a24df9402cb2e56b2ec0a4abc369d411e 100644 (file)
@@ -53,6 +53,7 @@ from ldb import SCOPE_SUBTREE, SCOPE_ONELEVEL, SCOPE_BASE, LdbError
 from ms_display_specifiers import read_ms_ldif
 from schema import Schema
 from provisionbackend import LDBBackend, ExistingBackend, FDSBackend, OpenLDAPBackend
+from provisionexceptions import ProvisioningError, InvalidNetbiosName
 from signal import SIGTERM
 from dcerpc.misc import SEC_CHAN_BDC, SEC_CHAN_WKSTA
 
@@ -153,15 +154,6 @@ DEFAULTSITE = "Default-First-Site-Name"
 
 # Exception classes
 
-class ProvisioningError(Exception):
-    """A generic provision error."""
-
-class InvalidNetbiosName(Exception):
-    """A specified name was not a valid NetBIOS name."""
-    def __init__(self, name):
-        super(InvalidNetbiosName, self).__init__("The name '%r' is not a valid NetBIOS name" % name)
-
-
 class ProvisionPaths(object):
     def __init__(self):
         self.shareconf = None
index 04a7a436cfb3c2a48d171f21aae816727f4418d2..ae58a163178cb103bfe560efce6246bfd7a775b5 100644 (file)
@@ -41,6 +41,7 @@ from ldb import SCOPE_BASE, SCOPE_ONELEVEL, LdbError, timestring
 from credentials import Credentials, DONT_USE_KERBEROS
 from samba import setup_file
 from schema import Schema
+from provisionexceptions import ProvisioningError
 
 def setup_db_config(setup_path, dbdir):
     """Setup a Berkeley database.
diff --git a/source4/scripting/python/samba/provisionexceptions.py b/source4/scripting/python/samba/provisionexceptions.py
new file mode 100644 (file)
index 0000000..604853f
--- /dev/null
@@ -0,0 +1,34 @@
+#
+# Unix SMB/CIFS implementation.
+# backend code for provisioning a Samba4 server
+
+# Copyright (C) Jelmer Vernooij <jelmer@samba.org> 2007-2008
+# Copyright (C) Andrew Bartlett <abartlet@samba.org> 2008-2009
+# Copyright (C) Oliver Liebel <oliver@itc.li> 2008-2009
+#
+# Based on the original in EJS:
+# Copyright (C) Andrew Tridgell <tridge@samba.org> 2005
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#   
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#   
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+
+class ProvisioningError(Exception):
+    """A generic provision error."""
+
+class InvalidNetbiosName(Exception):
+    """A specified name was not a valid NetBIOS name."""
+    def __init__(self, name):
+        super(InvalidNetbiosName, self).__init__("The name '%r' is not a valid NetBIOS name" % name)
+
+