         required: no
         process: (event, payload) ->
           return unless event is 'data'
-          component.setProperty @propName, payload
+          component.setProperty @propName, prop.signature, payload
       component.inPorts[portName].propName = prop.name
 
     # Add all ports

noflo = require 'noflo'
Gio = imports.gi.Gio
Lang = imports.lang


      return unless @proxy
      delete @proxy

    # Callback from setting value through dbus
    c.propertySet = (proxy, result) ->
      try
        @getProxy().call_finish(result)
      catch e
        @outPorts.error.send e
        @outPorts.error.disconnect()

    # Send property set through dbus
    c.setProperty = (propName, signature, value) ->
      return unless @bus and @path

      log "set #{propName} = #{value}"
      variant = new GLib.Variant(signature, value)
      wrappedVariant = new GLib.Variant('(ssv)',  [iface.name, propName, variant])
      @getProxy().call('org.freedesktop.DBus.Properties.Set', wrappedVariant, Gio.DBusCallFlags.NONE, -1, null, Lang.bind(@, @propertySet))

    c.description = "Set properties on #{iface.name}"
    c.icon = 'book'
