The following C# code example revokes a policy-protected
document named PolicyProtectedLoanDoc.pdf. A revised PDF
document is located at the following URL location http://localhost:8080/RightsManagement/UpdatedLoan.pdf. (See Revoking Access to Documents.)
/**
* Ensure that you create a .NET project that uses
* MS Visual Studio 2008 and version 3.5 of the .NET
* framework. This is required to invoke a
* LiveCycle service using MTOM.
*
* For information, see "Invoking LiveCycle using MTOM" in Programming with LiveCycle
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
using System.IO;
using RevokeSecureDocument.ServiceReference1;
namespace RevokeSecureDocument
{
class Program
{
static void Main(string[] args)
{
try
{
//Create a RightsManagementServiceClient object
RightsManagementServiceClient rmClient = new RightsManagementServiceClient();
rmClient.Endpoint.Address = new System.ServiceModel.EndpointAddress("http://hiro-xp:8080/soap/services/RightsManagementService?blob=mtom");
//Enable BASIC HTTP authentication
BasicHttpBinding b = (BasicHttpBinding)rmClient.Endpoint.Binding;
b.MessageEncoding = WSMessageEncoding.Mtom;
rmClient.ClientCredentials.UserName.UserName = "administrator";
rmClient.ClientCredentials.UserName.Password = "password";
b.Security.Transport.ClientCredentialType = HttpClientCredentialType.Basic;
b.Security.Mode = BasicHttpSecurityMode.TransportCredentialOnly;
//Create a BLOB object to store the PDF document to revoke
BLOB inDoc = new BLOB();
//Specify the PDF document to revoke
string path = "C:\\Adobe\PolicyProtectedLoanDoc.pdf";
FileStream fs = new FileStream(path, FileMode.Open);
//Get the length of the file stream
int len = (int)fs.Length;
byte[] ByteArray = new byte[len];
//Populate the byte array with the contents of the FileStream object
fs.Read(ByteArray, 0, len);
inDoc.MTOM = ByteArray;
//Retrieve the license identifier of the policy-protected document
string licID = rmClient.getLicenseID(inDoc);
//Specify the URL to the revised document
string revokedURL = "http://localhost:8080/RightsManagement/UpdatedLoan.pdf";
//Revoke the document
rmClient.revokeLicense(licID, Reason.DOCUMENT_REVISED, revokedURL);
}
catch (Exception ee)
{
Console.WriteLine(ee.Message);
}
}
}
}
|
|
|