This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
devel:blueprints:ipdevpoll [2009/07/13 14:10] klette |
devel:blueprints:ipdevpoll [2009/10/26 09:21] klette |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== ipdevpoll design specification ====== | ====== ipdevpoll design specification ====== | ||
+ | |||
+ | **This page is currently being updated to match whats being developed. Dont trust this stuff just yet :-)** | ||
+ | |||
===== Introduction ===== | ===== Introduction ===== | ||
//ipdevpoll// is the planned replacement for getDeviceData, becoming the third generation SNMP polling framework for NAV. This page will lay out the various design ideas and specifications for the new program. | //ipdevpoll// is the planned replacement for getDeviceData, becoming the third generation SNMP polling framework for NAV. This page will lay out the various design ideas and specifications for the new program. | ||
Line 40: | Line 43: | ||
Data is provided through the use of shadow-classes of django-models. Plugins never write django-objects directly. This is handled by the job the plugin runs in at the end of each job. | Data is provided through the use of shadow-classes of django-models. Plugins never write django-objects directly. This is handled by the job the plugin runs in at the end of each job. | ||
- | Shadow-classes are created in ''nav.ipdevpoll.storage'' | + | Shadow-classes are created in ''nav.ipdevpoll.shadows'' |
\\ | \\ | ||
Example shadowclass specification | Example shadowclass specification | ||
Line 73: | Line 76: | ||
Deletion of objects in the database is done if the shadowobject has its | Deletion of objects in the database is done if the shadowobject has its | ||
''delete''-property set to True. | ''delete''-property set to True. | ||
+ | |||
+ | Once the job is done the storage routine is called. The storage system then parses all | ||
+ | the shadow objects contained in ''job_handler.container'' and make s sure all foreignkeys needed for the storing | ||
+ | an instance are saved before the object it self. | ||
==== Plugins ==== | ==== Plugins ==== | ||
Line 186: | Line 193: | ||
=== Implemented plugins === | === Implemented plugins === | ||
- | Already implemented plugins can be found on [[devel:ipdevpollplugins]] | + | Already implemented plugins can be found on [[devel:ipdevpoll:plugins]] |
===== Database changes ===== | ===== Database changes ===== |