private OneSpanSign.Sdk.DocumentVisibility CreateTypicalSDKDocumentVisibility() { return(DocumentVisibilityBuilder.NewDocumentVisibility() .AddConfiguration(DocumentVisibilityConfigurationBuilder.NewDocumentVisibilityConfiguration("doc1Id") .WithSignerIds(new List <string> { "signer1Id", "signer2Id" })) .AddConfiguration(DocumentVisibilityConfigurationBuilder.NewDocumentVisibilityConfiguration("doc2Id") .WithSignerIds(new List <string> { "signer2Id", "signer3Id" })) .Build()); }
override public void Execute() { DocumentPackage superDuperPackage = PackageBuilder.NewPackageNamed("DocumentVisibilityExample: " + DateTime.Now) .WithSigner(SignerBuilder.NewSignerWithEmail(email1) .WithCustomId(SIGNER1_ID) .WithFirstName("John1") .WithLastName("Smith1")) .WithSigner(SignerBuilder.NewSignerWithEmail(email2) .WithCustomId(SIGNER2_ID) .WithFirstName("John2") .WithLastName("Smith2")) .WithSigner(SignerBuilder.NewSignerWithEmail(email3) .WithCustomId(SIGNER3_ID) .WithFirstName("John3") .WithLastName("Smith3")) .WithDocument(DocumentBuilder.NewDocumentNamed(DOC1_NAME) .WithId(DOC1_ID) .FromStream(fileStream1, DocumentType.PDF) .WithSignature(SignatureBuilder.SignatureFor(email1) .OnPage(0) .AtPosition(100, 100))) .WithDocument(DocumentBuilder.NewDocumentNamed(DOC2_NAME) .WithId(DOC2_ID) .FromStream(fileStream2, DocumentType.PDF) .WithSignature(SignatureBuilder.SignatureFor(email2) .OnPage(0) .AtPosition(100, 100))) .WithDocument(DocumentBuilder.NewDocumentNamed(DOC3_NAME) .WithId(DOC3_ID) .FromStream(fileStream3, DocumentType.PDF) .WithSignature(SignatureBuilder.SignatureFor(email3) .OnPage(0) .AtPosition(100, 100))) .Build(); packageId = ossClient.CreatePackage(superDuperPackage); DocumentVisibility visibility = DocumentVisibilityBuilder.NewDocumentVisibility() .AddConfiguration(DocumentVisibilityConfigurationBuilder.NewDocumentVisibilityConfiguration(DOC1_ID) .WithSignerIds(new List <string> { SIGNER1_ID, SIGNER3_ID })) .AddConfiguration(DocumentVisibilityConfigurationBuilder.NewDocumentVisibilityConfiguration(DOC2_ID) .WithSignerIds(new List <string> { SIGNER2_ID, SIGNER3_ID })) .AddConfiguration(DocumentVisibilityConfigurationBuilder.NewDocumentVisibilityConfiguration(DOC3_ID) .WithSignerIds(new List <string> { SIGNER3_ID, SIGNER2_ID })) .Build(); // You can also set up a document visibility based on signer. /* * DocumentVisibility visibility = DocumentVisibilityBasedOnSignerBuilder.NewDocumentVisibilityBasedOnSigner() * .AddConfiguration(DocumentVisibilityConfigurationBasedOnSignerBuilder.NewDocumentVisibilityConfigurationBasedOnSigner(SIGNER1_ID) * .WithDocumentIds(new List<string>{ DOC1_ID })) * .AddConfiguration(DocumentVisibilityConfigurationBasedOnSignerBuilder.NewDocumentVisibilityConfigurationBasedOnSigner(SIGNER2_ID) * .WithDocumentIds(new List<string>{ DOC2_ID, DOC3_ID })) * .AddConfiguration(DocumentVisibilityConfigurationBasedOnSignerBuilder.NewDocumentVisibilityConfigurationBasedOnSigner(SIGNER3_ID) * .WithDocumentIds(new List<string>{ DOC1_ID, DOC2_ID, DOC3_ID })) * .Build(); */ ossClient.ConfigureDocumentVisibility(packageId, visibility); retrievedVisibility = ossClient.getDocumentVisibility(packageId); ossClient.SendPackage(packageId); retrievedPackage = ossClient.GetPackage(packageId); documentsForSigner1 = ossClient.GetDocuments(packageId, SIGNER1_ID); documentsForSigner2 = ossClient.GetDocuments(packageId, SIGNER2_ID); documentsForSigner3 = ossClient.GetDocuments(packageId, SIGNER3_ID); signersForDocument1 = ossClient.GetSigners(packageId, DOC1_ID); signersForDocument2 = ossClient.GetSigners(packageId, DOC2_ID); signersForDocument3 = ossClient.GetSigners(packageId, DOC3_ID); }