Publishing a File for a Specific Period

To publish a file for a specific period, use the publishBodyExpiresIn() method as shown in the following sample code. This code publishes a file for one hour from now. Specify a period in seconds.

  • // Assume that the KiiObject "object" has been instantiated.
    
    // Set the lifetime of the URL in seconds.
    int time = 60 * 60;
    
    try {
      // Publish the KiiObject.
      String publishUrl = object.publishBodyExpiresIn(time);
    } catch (IOException e) {
      // Handle the error.
    } catch (AppException e) {
      // Handle the error.
    }
  • // Assume that the KiiObject "object" has been instantiated.
    
    // Set the lifetime of the URL in seconds.
    int time = 60 * 60;
    
    // Publish the KiiObject.
    object.publishBodyExpiresIn(time, new KiiObjectPublishCallback() {
      @Override
      public void onPublishCompleted(String url, KiiObject object, Exception exception) {
        if (exception != null) {
          // Handle the error.
          return;
        }
      }
    });

The basic steps are as follows:

  1. Upload the file as an object body.
  2. Publish the file with the publishBodyExpiresIn() method.

Note that a user needs to be permitted the READ_EXISTING_OBJECT action on a KiiObject to publish its object body (Once published, anyone can access the object body with the URL). See Setting a KiiObject's ACL for more information about the access rights.