svn keywords
[plcapi.git] / PLC / Methods / AddConfFileToNode.py
index 09de233..e592916 100644 (file)
@@ -1,3 +1,5 @@
+# $Id$
+# $URL$
 from PLC.Faults import *
 from PLC.Method import Method
 from PLC.Parameter import Parameter, Mixed
@@ -24,28 +26,28 @@ class AddConfFileToNode(Method):
 
     returns = Parameter(int, '1 if successful')
 
-    event_type = 'AddTo'
-    object_type = 'ConfFile'
-    object_ids = []
-
     def call(self, auth, conf_file_id, node_id_or_hostname):
        # Get configuration file
         conf_files = ConfFiles(self.api, [conf_file_id])
         if not conf_files:
             raise PLCInvalidArgument, "No such configuration file"
-        conf_file = conf_files.values()[0]
+        conf_file = conf_files[0]
 
         # Get node
        nodes = Nodes(self.api, [node_id_or_hostname])
        if not nodes:
                raise PLCInvalidArgument, "No such node"
-       node = nodes.values()[0]
+       node = nodes[0]
+
+        if node['peer_id'] is not None:
+            raise PLCInvalidArgument, "Not a local node"
        
        # Link configuration file to node
         if node['node_id'] not in conf_file['node_ids']:
             conf_file.add_node(node)
 
         # Log affected objects
-        self.object_ids = [conf_file_id, node['node_id']]
+        self.event_objects = {'ConfFile': [conf_file_id], 
+                             'Node': [node['node_id']] }
 
         return 1