ResourceLoadingArgs
Inheritance: java.lang.Object
public class ResourceLoadingArgs
Provides data for the IResourceLoadingCallback.resourceLoading(com.aspose.words.ResourceLoadingArgs) method.
Examples:
Shows how to customize the process of loading external resources into a document.
 public void resourceLoadingCallback() throws Exception {
     Document doc = new Document();
     doc.setResourceLoadingCallback(new ImageNameHandler());
     DocumentBuilder builder = new DocumentBuilder(doc);
     // Images usually are inserted using a URI, or a byte array.
     // Every instance of a resource load will call our callback's ResourceLoading method.
     builder.insertImage("Google logo");
     builder.insertImage("Aspose logo");
     builder.insertImage("Watermark");
     Assert.assertEquals(3, doc.getChildNodes(NodeType.SHAPE, true).getCount());
     doc.save(getArtifactsDir() + "DocumentBase.ResourceLoadingCallback.docx");
 }
 /// 
 /// Allows us to load images into a document using predefined shorthands, as opposed to URIs.
 /// This will separate image loading logic from the rest of the document construction.
 /// 
 private static class ImageNameHandler implements IResourceLoadingCallback {
     public int resourceLoading(final ResourceLoadingArgs args) throws URISyntaxException, IOException {
         if (args.getResourceType() == ResourceType.IMAGE) {
             // If this callback encounters one of the image shorthands while loading an image,
             // it will apply unique logic for each defined shorthand instead of treating it as a URI.
             if ("Google logo".equals(args.getOriginalUri())) {
                 args.setData(DocumentHelper.getBytesFromStream(new URI("http://www.google.com/images/logos/ps_logo2.png").toURL().openStream()));
                 return ResourceLoadingAction.USER_PROVIDED;
             }
             if ("Aspose logo".equals(args.getOriginalUri())) {
                 args.setData(DocumentHelper.getBytesFromStream(getAsposelogoUri().toURL().openStream()));
                 return ResourceLoadingAction.USER_PROVIDED;
             }
             if ("Watermark".equals(args.getOriginalUri())) {
                 InputStream imageStream = new FileInputStream(getImageDir() + "Transparent background logo.png");
                 args.setData(DocumentHelper.getBytesFromStream(imageStream));
                 return ResourceLoadingAction.USER_PROVIDED;
             }
         }
         return ResourceLoadingAction.DEFAULT;
     }
 }
 
Methods
| Method | Description | 
|---|---|
| getOriginalUri() | Original URI of the resource as specified in imported document. | 
| getResourceType() | Type of resource. | 
| getUri() | URI of the resource which is used for downloading if IResourceLoadingCallback.resourceLoading(com.aspose.words.ResourceLoadingArgs) returns ResourceLoadingAction.DEFAULT. | 
| setData(byte[] data) | Sets user provided data of the resource which is used if IResourceLoadingCallback.resourceLoading(com.aspose.words.ResourceLoadingArgs) returns ResourceLoadingAction.USER_PROVIDED. | 
| setUri(String value) | URI of the resource which is used for downloading if IResourceLoadingCallback.resourceLoading(com.aspose.words.ResourceLoadingArgs) returns ResourceLoadingAction.DEFAULT. | 
getOriginalUri()
public String getOriginalUri()
Original URI of the resource as specified in imported document.
Examples:
Shows how to customize the process of loading external resources into a document.
 public void resourceLoadingCallback() throws Exception {
     Document doc = new Document();
     doc.setResourceLoadingCallback(new ImageNameHandler());
     DocumentBuilder builder = new DocumentBuilder(doc);
     // Images usually are inserted using a URI, or a byte array.
     // Every instance of a resource load will call our callback's ResourceLoading method.
     builder.insertImage("Google logo");
     builder.insertImage("Aspose logo");
     builder.insertImage("Watermark");
     Assert.assertEquals(3, doc.getChildNodes(NodeType.SHAPE, true).getCount());
     doc.save(getArtifactsDir() + "DocumentBase.ResourceLoadingCallback.docx");
 }
 /// 
 /// Allows us to load images into a document using predefined shorthands, as opposed to URIs.
 /// This will separate image loading logic from the rest of the document construction.
 /// 
 private static class ImageNameHandler implements IResourceLoadingCallback {
     public int resourceLoading(final ResourceLoadingArgs args) throws URISyntaxException, IOException {
         if (args.getResourceType() == ResourceType.IMAGE) {
             // If this callback encounters one of the image shorthands while loading an image,
             // it will apply unique logic for each defined shorthand instead of treating it as a URI.
             if ("Google logo".equals(args.getOriginalUri())) {
                 args.setData(DocumentHelper.getBytesFromStream(new URI("http://www.google.com/images/logos/ps_logo2.png").toURL().openStream()));
                 return ResourceLoadingAction.USER_PROVIDED;
             }
             if ("Aspose logo".equals(args.getOriginalUri())) {
                 args.setData(DocumentHelper.getBytesFromStream(getAsposelogoUri().toURL().openStream()));
                 return ResourceLoadingAction.USER_PROVIDED;
             }
             if ("Watermark".equals(args.getOriginalUri())) {
                 InputStream imageStream = new FileInputStream(getImageDir() + "Transparent background logo.png");
                 args.setData(DocumentHelper.getBytesFromStream(imageStream));
                 return ResourceLoadingAction.USER_PROVIDED;
             }
         }
         return ResourceLoadingAction.DEFAULT;
     }
 }
 
Returns: java.lang.String - The corresponding java.lang.String value.
getResourceType()
public int getResourceType()
Type of resource.
Examples:
Shows how to customize the process of loading external resources into a document.
 public void resourceLoadingCallback() throws Exception {
     Document doc = new Document();
     doc.setResourceLoadingCallback(new ImageNameHandler());
     DocumentBuilder builder = new DocumentBuilder(doc);
     // Images usually are inserted using a URI, or a byte array.
     // Every instance of a resource load will call our callback's ResourceLoading method.
     builder.insertImage("Google logo");
     builder.insertImage("Aspose logo");
     builder.insertImage("Watermark");
     Assert.assertEquals(3, doc.getChildNodes(NodeType.SHAPE, true).getCount());
     doc.save(getArtifactsDir() + "DocumentBase.ResourceLoadingCallback.docx");
 }
 /// 
 /// Allows us to load images into a document using predefined shorthands, as opposed to URIs.
 /// This will separate image loading logic from the rest of the document construction.
 /// 
 private static class ImageNameHandler implements IResourceLoadingCallback {
     public int resourceLoading(final ResourceLoadingArgs args) throws URISyntaxException, IOException {
         if (args.getResourceType() == ResourceType.IMAGE) {
             // If this callback encounters one of the image shorthands while loading an image,
             // it will apply unique logic for each defined shorthand instead of treating it as a URI.
             if ("Google logo".equals(args.getOriginalUri())) {
                 args.setData(DocumentHelper.getBytesFromStream(new URI("http://www.google.com/images/logos/ps_logo2.png").toURL().openStream()));
                 return ResourceLoadingAction.USER_PROVIDED;
             }
             if ("Aspose logo".equals(args.getOriginalUri())) {
                 args.setData(DocumentHelper.getBytesFromStream(getAsposelogoUri().toURL().openStream()));
                 return ResourceLoadingAction.USER_PROVIDED;
             }
             if ("Watermark".equals(args.getOriginalUri())) {
                 InputStream imageStream = new FileInputStream(getImageDir() + "Transparent background logo.png");
                 args.setData(DocumentHelper.getBytesFromStream(imageStream));
                 return ResourceLoadingAction.USER_PROVIDED;
             }
         }
         return ResourceLoadingAction.DEFAULT;
     }
 }
 
Returns: int - The corresponding int value. The returned value is one of ResourceType constants.
getUri()
public String getUri()
URI of the resource which is used for downloading if IResourceLoadingCallback.resourceLoading(com.aspose.words.ResourceLoadingArgs) returns ResourceLoadingAction.DEFAULT.
Initially it’s set to absolute URI of the resource, but user can redefine it to any value.
Returns: java.lang.String - The corresponding java.lang.String value.
setData(byte[] data)
public void setData(byte[] data)
Sets user provided data of the resource which is used if IResourceLoadingCallback.resourceLoading(com.aspose.words.ResourceLoadingArgs) returns ResourceLoadingAction.USER_PROVIDED.
Examples:
Shows how to customize the process of loading external resources into a document.
 public void resourceLoadingCallback() throws Exception {
     Document doc = new Document();
     doc.setResourceLoadingCallback(new ImageNameHandler());
     DocumentBuilder builder = new DocumentBuilder(doc);
     // Images usually are inserted using a URI, or a byte array.
     // Every instance of a resource load will call our callback's ResourceLoading method.
     builder.insertImage("Google logo");
     builder.insertImage("Aspose logo");
     builder.insertImage("Watermark");
     Assert.assertEquals(3, doc.getChildNodes(NodeType.SHAPE, true).getCount());
     doc.save(getArtifactsDir() + "DocumentBase.ResourceLoadingCallback.docx");
 }
 /// 
 /// Allows us to load images into a document using predefined shorthands, as opposed to URIs.
 /// This will separate image loading logic from the rest of the document construction.
 /// 
 private static class ImageNameHandler implements IResourceLoadingCallback {
     public int resourceLoading(final ResourceLoadingArgs args) throws URISyntaxException, IOException {
         if (args.getResourceType() == ResourceType.IMAGE) {
             // If this callback encounters one of the image shorthands while loading an image,
             // it will apply unique logic for each defined shorthand instead of treating it as a URI.
             if ("Google logo".equals(args.getOriginalUri())) {
                 args.setData(DocumentHelper.getBytesFromStream(new URI("http://www.google.com/images/logos/ps_logo2.png").toURL().openStream()));
                 return ResourceLoadingAction.USER_PROVIDED;
             }
             if ("Aspose logo".equals(args.getOriginalUri())) {
                 args.setData(DocumentHelper.getBytesFromStream(getAsposelogoUri().toURL().openStream()));
                 return ResourceLoadingAction.USER_PROVIDED;
             }
             if ("Watermark".equals(args.getOriginalUri())) {
                 InputStream imageStream = new FileInputStream(getImageDir() + "Transparent background logo.png");
                 args.setData(DocumentHelper.getBytesFromStream(imageStream));
                 return ResourceLoadingAction.USER_PROVIDED;
             }
         }
         return ResourceLoadingAction.DEFAULT;
     }
 }
 
Parameters:
| Parameter | Type | Description | 
|---|---|---|
| data | byte[] | 
setUri(String value)
public void setUri(String value)
URI of the resource which is used for downloading if IResourceLoadingCallback.resourceLoading(com.aspose.words.ResourceLoadingArgs) returns ResourceLoadingAction.DEFAULT.
Initially it’s set to absolute URI of the resource, but user can redefine it to any value.
Parameters:
| Parameter | Type | Description | 
|---|---|---|
| value | java.lang.String | The corresponding java.lang.String value. |