summaryrefslogtreecommitdiffstats
path: root/examples/uml/xmi-read/main.cpp
blob: 621bc2e46ae4b8e122ede84491bf8ba439bad35f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <QtWrappedObjects/QXmiReader>
#include <QtWrappedObjects/QXmiWriter>
#include <QtWrappedObjects/QtWrappedObjects>

int main ()
{
    QFile file("test.xmi");

    if (!file.open(QFile::ReadOnly | QFile::Text)) {
        qDebug() << "Cannot read file !";
        return 1;
    }

    QXmiReader reader(0, true);
    QWrappedObject *rootElement = reader.readFile(&file);
    if (rootElement)
        qDebug() << "Successfully read object with name" << rootElement->objectName();
    if (reader.errorStrings().size() > 0) {
        qDebug() << "Errors:";
        foreach (QString error, reader.errorStrings())
            qDebug() << "\t" << error;
    }

    QFile file2("test-out.xmi");

    if (!file2.open(QFile::WriteOnly | QFile::Text)) {
        qDebug() << "Cannot write file !";
        return 1;
    }
    QXmiWriter writer(rootElement);
    writer.writeFile(&file2);
}