本文整理汇总了Python中utils._coalesceTextNodeChildren函数的典型用法代码示例。如果您正苦于以下问题:Python _coalesceTextNodeChildren函数的具体用法?Python _coalesceTextNodeChildren怎么用?Python _coalesceTextNodeChildren使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了_coalesceTextNodeChildren函数的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _extractStateNodes
def _extractStateNodes( root, encoding=None ):
result = []
for s_node in root.getElementsByTagName( 'state' ):
info = { 'state_id' : _getNodeAttribute( s_node, 'state_id', encoding )
, 'title' : _getNodeAttribute( s_node, 'title', encoding )
, 'description' : _extractDescriptionNode( s_node, encoding )
}
info[ 'transitions' ] = [ _getNodeAttribute( x, 'transition_id'
, encoding )
for x in s_node.getElementsByTagName(
'exit-transition' ) ]
info[ 'permissions' ] = permission_map = {}
for p_map in s_node.getElementsByTagName( 'permission-map' ):
name = _getNodeAttribute( p_map, 'name', encoding )
acquired = _getNodeAttributeBoolean( p_map, 'acquired' )
roles = [ _coalesceTextNodeChildren( x, encoding )
for x in p_map.getElementsByTagName(
'permission-role' ) ]
if not acquired:
roles = tuple( roles )
permission_map[ name ] = roles
info[ 'groups' ] = group_map = []
for g_map in s_node.getElementsByTagName( 'group-map' ):
name = _getNodeAttribute( g_map, 'name', encoding )
roles = [ _coalesceTextNodeChildren( x, encoding )
for x in g_map.getElementsByTagName(
'group-role' ) ]
group_map.append( ( name, tuple( roles ) ) )
info[ 'variables' ] = var_map = {}
for assignment in s_node.getElementsByTagName( 'assignment' ):
name = _getNodeAttribute( assignment, 'name', encoding )
type_id = _getNodeAttribute( assignment, 'type', encoding )
value = _coalesceTextNodeChildren( assignment, encoding )
var_map[ name ] = { 'name' : name
, 'type' : type_id
, 'value' : value
}
result.append( info )
return result
示例2: _extractGuardNode
def _extractGuardNode( parent, encoding=None ):
nodes = parent.getElementsByTagName( 'guard' )
assert len( nodes ) <= 1, nodes
if len( nodes ) < 1:
return { 'permissions' : (), 'roles' : (), 'groups' : (), 'expr' : '' }
node = nodes[ 0 ]
expr_nodes = node.getElementsByTagName( 'guard-expression' )
assert( len( expr_nodes ) <= 1 )
expr_text = expr_nodes and _coalesceTextNodeChildren( expr_nodes[ 0 ]
, encoding
) or ''
return { 'permissions' : [ _coalesceTextNodeChildren( x, encoding )
for x in node.getElementsByTagName(
'guard-permission' ) ]
, 'roles' : [ _coalesceTextNodeChildren( x, encoding )
for x in node.getElementsByTagName( 'guard-role' ) ]
, 'groups' : [ _coalesceTextNodeChildren( x, encoding )
for x in node.getElementsByTagName( 'guard-group' ) ]
, 'expression' : expr_text
}
示例3: _extractDefaultNode
def _extractDefaultNode( parent, encoding=None ):
nodes = parent.getElementsByTagName( 'default' )
assert len( nodes ) <= 1, nodes
if len( nodes ) < 1:
return { 'value' : '', 'expression' : '', 'type' : 'n/a' }
node = nodes[ 0 ]
value_nodes = node.getElementsByTagName( 'value' )
assert( len( value_nodes ) <= 1 )
value_type = 'n/a'
if value_nodes:
value_type = value_nodes[ 0 ].getAttribute( 'type' ) or 'n/a'
value_text = value_nodes and _coalesceTextNodeChildren( value_nodes[ 0 ]
, encoding
) or ''
expr_nodes = node.getElementsByTagName( 'expression' )
assert( len( expr_nodes ) <= 1 )
expr_text = expr_nodes and _coalesceTextNodeChildren( expr_nodes[ 0 ]
, encoding
) or ''
return { 'value' : value_text
, 'type' : value_type
, 'expression' : expr_text
}
示例4: _extractTransitionNodes
def _extractTransitionNodes( root, encoding=None ):
result = []
for t_node in root.getElementsByTagName( 'transition' ):
info = { 'transition_id' : _getNodeAttribute( t_node, 'transition_id'
, encoding )
, 'title' : _getNodeAttribute( t_node, 'title', encoding )
, 'description' : _coalesceTextNodeChildren( t_node, encoding )
, 'new_state' : _getNodeAttribute( t_node, 'new_state'
, encoding )
, 'trigger' : _getNodeAttribute( t_node, 'trigger', encoding )
, 'before_script' : _getNodeAttribute( t_node, 'before_script'
, encoding )
, 'after_script' : _getNodeAttribute( t_node, 'after_script'
, encoding )
, 'action' : _extractActionNode( t_node, encoding )
, 'guard' : _extractGuardNode( t_node, encoding )
}
info[ 'variables' ] = var_map = {}
for assignment in t_node.getElementsByTagName( 'assignment' ):
name = _getNodeAttribute( assignment, 'name', encoding )
expr = _coalesceTextNodeChildren( assignment, encoding )
var_map[ name ] = expr
result.append( info )
return result
示例5: _extractVariableNodes
def _extractVariableNodes( root, encoding=None ):
result = []
for v_node in root.getElementsByTagName( 'variable' ):
info = { 'variable_id' : _getNodeAttribute( v_node, 'variable_id'
, encoding )
, 'description' : _coalesceTextNodeChildren( v_node, encoding )
, 'for_catalog' : _getNodeAttributeBoolean( v_node
, 'for_catalog'
)
, 'for_status' : _getNodeAttributeBoolean( v_node
, 'for_status'
)
, 'update_always' : _getNodeAttributeBoolean( v_node
, 'update_always'
)
, 'default' : _extractDefaultNode( v_node, encoding )
, 'guard' : _extractGuardNode( v_node, encoding )
}
result.append( info )
return result
示例6: _extractPermissionNodes
def _extractPermissionNodes( root, encoding=None ):
result = []
for p_node in root.getElementsByTagName( 'permission' ):
result.append( _coalesceTextNodeChildren( p_node, encoding ) )
return result
示例7: _extractPermissionNodes
def _extractPermissionNodes(parent, encoding=None):
result = []
for p_node in parent.getElementsByTagName('permission'):
value = _coalesceTextNodeChildren(p_node, encoding)
result.append(value)
return tuple(result)
示例8: _extractAllowedContentTypeNodes
def _extractAllowedContentTypeNodes(parent, encoding=None):
result = []
for act_node in parent.getElementsByTagName('allowed_content_type'):
value = _coalesceTextNodeChildren(act_node, encoding)
result.append(value)
return tuple(result)
示例9: _extractActionNode
def _extractActionNode( parent, encoding=None ):
nodes = parent.getElementsByTagName( 'action' )
assert len( nodes ) <= 1, nodes
if len( nodes ) < 1:
return { 'name' : '', 'url' : '', 'category' : '' }
node = nodes[ 0 ]
return { 'name' : _coalesceTextNodeChildren( node, encoding )
, 'url' : _getNodeAttribute( node, 'url', encoding )
, 'category' : _getNodeAttribute( node, 'category', encoding )
}
示例10: _extractWorklistNodes
def _extractWorklistNodes( root, encoding=None ):
result = []
for w_node in root.getElementsByTagName( 'worklist' ):
info = { 'worklist_id' : _getNodeAttribute( w_node, 'worklist_id'
, encoding )
, 'title' : _getNodeAttribute( w_node, 'title' , encoding )
, 'description' : _coalesceTextNodeChildren( w_node, encoding )
, 'match' : _extractMatchNode( w_node, encoding )
, 'action' : _extractActionNode( w_node, encoding )
, 'guard' : _extractGuardNode( w_node, encoding )
}
result.append( info )
return result