openSUSE/kiwi — pull request #146 by rjschwei (2012-11-16 23:25:21+00:00)
Title: Package handling

This update implements everything related to the element in the imageConfig data structure.

Plenty of renames, new code, tests etc.

Due to the nature of the data I had to store objects in the {imageConfig} structure, there was no other way to capture the "replces" relation ship in a reasonable way. Since the PackageData class already holds the information I did not see any reason to jump through ugly hoops to make the "replaces" relationshsip work in a different way. I like how things turned out in the end. everything is pretty nice and clean with lots of code reuse for concepts that are the same. :)

I will come back and look at the way the information is stored and I think I can piggy back on all the nice new helper methods I implemented this time around. Thus, I suspect that driver data will also be stored as objects in the imageConfig structure.

There are only two disadvantages I see to holding XML*Data objects in the XML object:
1.) the dump from DATA::Dumper is much larger
2.) the overhead is a bit larger as we have objects instead of just built in types such as strings

We're almost there with the implementation, only and are missing in the new data structure :)

I built vmx, oem, live-iso, and a JeOS template as test cases to cover the basics.