Changeset bf5590 in git for modules/openmathserver


Ignore:
Timestamp:
Jun 16, 2005, 3:56:04 PM (19 years ago)
Author:
Michael Brickenstein <bricken@…>
Branches:
(u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', 'd08f5f0bb3329b8ca19f23b74cb1473686415c3a')
Children:
d113d3aba56b6d8664654dbfaeeae4b356a2527e
Parents:
e96c8d9e582eb49287c771aa36dd19744761bfa8
Message:
*bricken: OMOBJ


git-svn-id: file:///usr/local/Singular/svn/trunk@8376 2c84dea3-7e68-4137-9b89-c4e89433aadc
Location:
modules/openmathserver
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • modules/openmathserver/objects.py

    re96c8d rbf5590  
    11from omexceptions import *
    22from exceptions import *
     3import base64
     4#TODO: OMOBJ, OME, OMATTR
    35#from cd import *
    46class XMLAttribute(object):
     
    105107        closing="".join(["</"+self.XMLtag+">"])
    106108        return "".join([opening,body,closing])
     109class OMObject(OMObjectBase):
     110    def __init__(self, children):
     111        super(OMObject,self).__init__()
     112        self.children=children
     113    def getChildren(self):
     114        return self.__children
     115    def setChildren(self,children):
     116        self.__children=children
     117    XMLtag="OMOBJ"
     118    def evaluate(self, context):
     119        return OMObject([context.evaluate(c) for c in self.children])
    107120class OMVar(OMObjectBase):
    108121    def __init__(self,name):
     
    214227    def getBody(self):
    215228        return self.value
     229class OMByteArray(SimpleValue):
     230    def __init__(self,value):
     231        super(OMByteArray,self).__init__(value)
     232    def __str__(self):
     233        return "OMByteArray("+repr(self.value)+")"
     234    def parse(self, value):
     235        return value
     236    XMLtag="OMB"
     237    def getBody(self):
     238        return base64.encodestring(self.value)
    216239class OMRef(OMObjectBase):
    217240    def __init__(self, ref):
  • modules/openmathserver/omxmlreader.py

    re96c8d rbf5590  
    33from xml.dom import Node
    44import xml.dom as dom
     5import base64
    56#from
    67from StringIO import StringIO
     
    5253            #print "data", content
    5354            erg=OMString(content)
     55        if (node.nodeName=="OMB"):
     56            content=get_text_in_children(node)
     57            #print "data", content
     58            erg=OMByteArray(base64.decodestring(content))
    5459        if (node.nodeName=="OMV"):
    5560            name=node.getAttribute("name") #node.attributes["name"]
     
    7580            children=[self.buildFromNode(c) for c in node.childNodes]
    7681            erg= OMApply(children[0],children[1:])
     82        if (node.nodeName=="OMOBJ"):
     83            children=[self.buildFromNode(c) for c in node.childNodes]
     84            erg= OMObject(children)
    7785        if (node.nodeName=="OMBIND"):
    7886            children=[self.buildFromNode(c) for c in node.childNodes]
Note: See TracChangeset for help on using the changeset viewer.