예제 #1
0
def insert_registry_schema(xsd_filename, xsd_content):

    # Check if schema is valid
    is_schema_valid(xsd_content)
    template = Template(
        filename=xsd_filename, hash=get_hash(xsd_content), content=xsd_content
    ).save()
    template_version_manager = TemplateVersionManager(title=xsd_filename)
    # save the template in database
    try:
        from core_main_app.components.version_manager import api as version_manager_api

        # insert the initial template in the version manager
        template_version_manager.insert(template)
        template_version_manager.set_current_version(template)
        # insert the version manager in database
        template_version_manager.save_version_manager()
        # get template display name
        display_name = get_latest_version_name(template_version_manager)
        # update saved template
        template.display_name = display_name
        template.save()
        # return version manager
        return template_version_manager
    except Exception as e:
        template.delete()
        raise e
예제 #2
0
    def generate_template(self):
        """Generate an unique Template.

        Returns:

        """
        template1 = Template()
        template2 = Template()
        template3 = Template()
        template4 = Template()
        xsd1 = '<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> \
                <xsd:element name="root" type="simpleString"/> \
                <xsd:complexType name="simpleString"> \
                    <xsd:sequence> \
                    <xsd:element name="test" type="xsd:string"/></xsd:sequence> \
                </xsd:complexType> \
            </xsd:schema>'

        xsd2 = '<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> \
                <xsd:element name="root" type="simpleString"/> \
                <xsd:complexType name="simpleString"> \
                    <xsd:sequence> \
                    <xsd:element name="test" type="xsd:string"/></xsd:sequence> \
                </xsd:complexType> \
            </xsd:schema>'

        xsd3 = '<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> \
                <xsd:element name="root" type="simpleString"/> \
                <xsd:complexType name="simpleString"> \
                    <xsd:sequence> \
                    <xsd:element name="other" type="xsd:string"/></xsd:sequence> \
                </xsd:complexType> \
            </xsd:schema>'

        xsd4 = '<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> \
                        <xsd:element name="root" type="simpleString" /> \
                        <xsd:complexType name="simpleString"> \
                            <xsd:sequence> \
                                <xsd:element name="test" type="xsd:string"/> \
                                <xsd:element name="element" type="xsd:string"/> \
                            </xsd:sequence> \
                        </xsd:complexType> \
                </xsd:schema>'

        template1.content = xsd1
        template1.hash = ""
        template1.filename = "filename"
        template2.content = xsd2
        template2.hash = ""
        template2.filename = "filename"
        template3.content = xsd3
        template3.hash = ""
        template3.filename = "filename"
        template4.content = xsd4
        template4.hash = ""
        template4.filename = "filename"
        self.template_1 = template1.save()
        self.template_2 = template2.save()
        self.template_3 = template3.save()
        self.template_4 = template4.save()
예제 #3
0
 def create_and_save_template():
     template = Template(
         filename="Schema",
         content=
         "<schema xmlns='http://www.w3.org/2001/XMLSchema'></schema>",
         hash="",
     )
     template.save()
     return template
예제 #4
0
    def generate_template(self):
        """Generate an unique Template.

        Returns:

        """
        template = Template()
        template.content = get_valid_schema()
        template.hash = ""
        template.filename = "filename"
        self.template = template.save()
    def generate_template(self):
        """Generate an unique Template.

        Returns:

        """
        template = Template()
        xsd = ('<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">'
               '<xs:element name="tag"></xs:element></xs:schema>')
        template.content = xsd
        template.hash = ""
        template.filename = "filename"
        self.template = template.save()
예제 #6
0
    def generate_template(self):
        """ Generate an unique Template.

        Returns:

        """
        mock_data_path = join(dirname(realpath(__file__)), "data")
        mock_xsl_path = join(mock_data_path, "res-md.xsd")
        with open(mock_xsl_path, "r") as xsd_file:
            xsd = xsd_file.read()

        template = Template()
        template.content = xsd
        template.hash = ""
        template.filename = "res-md.xsd"
        self.template = template.save()
예제 #7
0
    def generate_template(self):
        """Generate an unique Template.

        Returns:

        """
        template = Template()

        xsd = ('<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">'
               ' <xsd:element name="root" type="hamza"/>'
               '     <xsd:complexType name="hamza">'
               "         <xsd:sequence>  "
               '             <xsd:element name="string" type="xsd:string"/>'
               "         </xsd:sequence>"
               "     </xsd:complexType>"
               "</xsd:schema>")

        template.content = xsd
        template.hash = ""
        template.filename = "filename"
        self.template = template.save()