Back to index

plone3  3.1.7
Public Member Functions | Public Attributes | Static Public Attributes | Private Member Functions | Static Private Attributes
PluggableAuthService.plugins.exportimport.DomainAuthHelperExportImport Class Reference
Inheritance diagram for PluggableAuthService.plugins.exportimport.DomainAuthHelperExportImport:
Inheritance graph
[legend]
Collaboration diagram for PluggableAuthService.plugins.exportimport.DomainAuthHelperExportImport:
Collaboration graph
[legend]

List of all members.

Public Member Functions

def export
def listExportableItems
def import_

Public Attributes

 context

Static Public Attributes

 encoding = None

Private Member Functions

def _purgeContext
def _updateFromDOM
def _getExportInfo

Static Private Attributes

string _FILENAME = 'domainauth.xml'
string _ROOT_TAGNAME = 'domain-auth'

Detailed Description

Adapter for dumping / loading DomainAuthHelper to an XML file.

Definition at line 309 of file exportimport.py.


Member Function Documentation

Definition at line 336 of file exportimport.py.

00336 
00337     def _getExportInfo(self):
00338         user_map = {}
00339         for k, v in self.context._domain_map.items():
00340             user_map[k] = matches = []
00341             for match in v:
00342                 match = match.copy()
00343                 match['roles'] = ','.join(match['roles'])
00344                 matches.append(match)
00345 
00346         return {'title': self.context.title,
00347                 'map': user_map
00348                }

Here is the caller graph for this function:

Definition at line 315 of file exportimport.py.

00315 
00316     def _purgeContext(self):
00317         self.context.__init__(self.context.id, self.context.title)

Here is the caller graph for this function:

Definition at line 318 of file exportimport.py.

00318 
00319     def _updateFromDOM(self, root):
00320         for user in root.getElementsByTagName('user'):
00321             user_id = self._getNodeAttr(user, 'user_id', None)
00322 
00323             for match in user.getElementsByTagName('match'):
00324                 username = self._getNodeAttr(match, 'username', None)
00325                 match_type = self._getNodeAttr(match, 'match_type', None)
00326                 match_string = self._getNodeAttr(match, 'match_string', None)
00327                 role_tokens = self._getNodeAttr(match, 'roles', None)
00328                 roles = role_tokens.split(',')
00329 
00330                 self.context.manage_addMapping(user_id=user_id,
00331                                                match_type=match_type,
00332                                                match_string=match_string,
00333                                                username=username,
00334                                                roles=roles,
00335                                               )

Here is the call graph for this function:

Here is the caller graph for this function:

def PluggableAuthService.plugins.exportimport.SimpleXMLExportImport.export (   self,
  export_context,
  subdir,
  root = False 
) [inherited]
See IFilesystemExporter.

Definition at line 95 of file exportimport.py.

00095 
00096     def export(self, export_context, subdir, root=False):
00097         """ See IFilesystemExporter.
00098         """
00099         template = PageTemplateResource('xml/%s' % self._FILENAME,
00100                                         globals()).__of__(self.context)
00101         info = self._getExportInfo()
00102         export_context.writeDataFile('%s.xml' % self.context.getId(),
00103                                      template(info=info),
00104                                      'text/xml',
00105                                      subdir,
00106                                     )

Here is the call graph for this function:

def PluggableAuthService.plugins.exportimport.SimpleXMLExportImport.import_ (   self,
  import_context,
  subdir,
  root = False 
) [inherited]
See IFilesystemImporter

Definition at line 112 of file exportimport.py.

00112 
00113     def import_(self, import_context, subdir, root=False):
00114         """ See IFilesystemImporter
00115         """
00116         self.encoding = import_context.getEncoding()
00117 
00118         if import_context.shouldPurge():
00119             self._purgeContext()
00120 
00121         data = import_context.readDataFile('%s.xml' % self.context.getId(),
00122                                            subdir)
00123 
00124         if data is not None:
00125 
00126             dom = parseString(data)
00127             root = dom.firstChild
00128             assert root.tagName == self._ROOT_TAGNAME
00129 
00130             self.context.title = self._getNodeAttr(root, 'title', None)
00131             self._updateFromDOM(root)

Here is the call graph for this function:

See IFilesystemExporter.

Definition at line 107 of file exportimport.py.

00107 
00108     def listExportableItems(self):
00109         """ See IFilesystemExporter.
00110         """
00111         return ()


Member Data Documentation

Definition at line 312 of file exportimport.py.

Definition at line 313 of file exportimport.py.

Definition at line 93 of file exportimport.py.

Definition at line 90 of file exportimport.py.


The documentation for this class was generated from the following file: