Changeset 16472

Show
Ignore:
Timestamp:
05/24/08 12:55:33 (5 months ago)
Author:
piotras
Message:

mRFC0038

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/midgard/core/midgard/src/midgard_object.c

    r16350 r16472  
    3939#include "midgard_dbobject.h" 
    4040#include "midgard_user.h" 
     41#include "midgard_dbus.h" 
    4142 
    4243GType _midgard_attachment_type = 0; 
     
    6566        _SQL_QUERY_UPDATE 
    6667}; 
     68 
     69#define __dbus_send(_obj, _action) \ 
     70        gchar *_dbus_path = g_strconcat("/mgdschema/", \ 
     71        G_OBJECT_TYPE_NAME(G_OBJECT(_obj)), \ 
     72                        "/", _action, NULL); \ 
     73        midgard_dbus_send(_obj->dbpriv->mgd, _dbus_path, _obj->dbpriv->guid); \ 
     74        g_free(_dbus_path); 
    6775 
    6876static GParamSpec **_midgard_object_class_paramspec() 
     
    766774{ 
    767775        g_signal_emit(self, MIDGARD_OBJECT_GET_CLASS(self)->signal_action_update, 0); 
    768         return _midgard_object_update(self, OBJECT_UPDATE_NONE); 
     776        gboolean rv =  _midgard_object_update(self, OBJECT_UPDATE_NONE); 
     777 
     778        if(rv) { 
     779                __dbus_send(self, "update"); 
     780        } 
     781 
     782        return rv; 
    769783} 
    770784 
     
    10931107{ 
    10941108        g_signal_emit(object, MIDGARD_OBJECT_GET_CLASS(object)->signal_action_create, 0); 
    1095         return _midgard_object_create(object, NULL, OBJECT_UPDATE_NONE);         
     1109        gboolean rv =  _midgard_object_create(object, NULL, OBJECT_UPDATE_NONE);         
     1110 
     1111        if(rv) { 
     1112                __dbus_send(object, "create"); 
     1113        } 
     1114 
     1115        return rv; 
    10961116} 
    10971117 
     
    17681788                        self->dbpriv->sg = midgard_connection_get_sitegroup_id(mgd);       
    17691789                }                
    1770                  
     1790         
     1791                __dbus_send(self, "get"); 
     1792 
    17711793                return self; 
    17721794        } 
     
    21582180        object->metadata->priv->deleted = TRUE; 
    21592181        g_signal_emit(object, MIDGARD_OBJECT_GET_CLASS(object)->signal_action_deleted, 0); 
    2160          
     2182 
     2183        __dbus_send(object, "delete"); 
     2184 
    21612185        return TRUE; 
    21622186} 
     
    22792303         
    22802304        g_signal_emit(object, MIDGARD_OBJECT_GET_CLASS(object)->signal_action_purged, 0); 
     2305 
     2306        __dbus_send(object, "purge"); 
     2307 
    22812308        return TRUE;   
    22822309}