Object Body の移動

Object Body を、ある KiiObject から他の KiiObject に移動できます。Object Body の移動は、同一スコープ内で行うことも、スコープをまたいで行う(例:アプリケーションスコープの KiiObject からユーザースコープの KiiObject に移動する)ことも出来ます。

Object Body は、以下の条件が満たされる場合に移動可能です。

  • 移動元と移動先の KiiObject の両方に対して、読み取りと更新削除権限の両方を持っていること。
  • Object Body 移動時に、移動元と移動先の Object が存在すること。
  • 移動元 KiiObject が Object Body を持っていること。

移動先 KiiObject が Object Body を持っている場合は、移動した Object Body により上書きされます。また、公開済み Object Body を移動すると、以後この Object Body にアクセスできなくなります。

以下に Object Body を移動する例を挙げます。

  • var sourceObject = KiiObject.objectWithURI("Set the URI of an existing KiiObject here");
    var targetObject = KiiObject.objectWithURI("Set the URI of an existing KiiObject here");
    var targetObjectUri = targetObject.objectURI();
    
    sourceObject.moveBody(targetObjectUri, {
      success: function(theSrcObject, theTgtObjectUri) {
        // Do something.
      },
      failure: function(theSrcObject, theTgtObjectUri, errorString) {
        // Handle the error.
      }
    });
  • var sourceObject = KiiObject.objectWithURI("Set the URI of an existing KiiObject here");
    var targetObject = KiiObject.objectWithURI("Set the URI of an existing KiiObject here");
    var targetObjectUri = targetObject.objectURI();
    
    sourceObject.moveBody(targetObjectUri).then(
      function(params) {
        var theSrcObject = params[0];
        var theTgtObjectUri = params[1];
        // Do something.
      }
    ).catch(
      function(error) {
         var theSrcObject = error.target;
         var theTgtObjectUri = error.targetObjectUri;
         var errorString = error.message
        // Handle the error.
      }
    );