<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<link rel="canonical" href="https://ignite.apache.org/releases/2.8.1/javadoc/org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

<!-- Generated by javadoc (1.8.0_221) on Thu May 21 17:45:07 MSK 2020 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>UriDeploymentSpi (Ignite 2.8.1)</title>
<meta name="date" content="2020-05-21">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<link rel='shortcut icon' href='https://ignite.apache.org/favicon.ico'/>

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</script></head>

<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="UriDeploymentSpi (Ignite 2.8.1)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/UriDeploymentSpi.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpiMBean.html" title="interface in org.apache.ignite.spi.deployment.uri"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" target="_top">Frames</a></li>
<li><a href="UriDeploymentSpi.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.ignite.spi.deployment.uri</div>
<h2 title="Class UriDeploymentSpi" class="title">Class UriDeploymentSpi</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html" title="class in org.apache.ignite.spi">org.apache.ignite.spi.IgniteSpiAdapter</a></li>
<li>
<ul class="inheritance">
<li>org.apache.ignite.spi.deployment.uri.UriDeploymentSpi</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html" title="interface in org.apache.ignite.spi.deployment">DeploymentSpi</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpi.html" title="interface in org.apache.ignite.spi">IgniteSpi</a></dd>
</dl>
<hr>
<br>
<pre><a href="../../../../../../org/apache/ignite/spi/IgniteSpiMultipleInstancesSupport.html" title="annotation in org.apache.ignite.spi">@IgniteSpiMultipleInstancesSupport</a>(<a href="../../../../../../org/apache/ignite/spi/IgniteSpiMultipleInstancesSupport.html#value--">value</a>=true)
 <a href="../../../../../../org/apache/ignite/spi/IgniteSpiConsistencyChecked.html" title="annotation in org.apache.ignite.spi">@IgniteSpiConsistencyChecked</a>(<a href="../../../../../../org/apache/ignite/spi/IgniteSpiConsistencyChecked.html#optional--">optional</a>=false)
public class <span class="typeNameLabel">UriDeploymentSpi</span>
extends <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html" title="class in org.apache.ignite.spi">IgniteSpiAdapter</a>
implements <a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html" title="interface in org.apache.ignite.spi.deployment">DeploymentSpi</a></pre>
<div class="block">Implementation of <a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html" title="interface in org.apache.ignite.spi.deployment"><code>DeploymentSpi</code></a> which can deploy tasks from
 different sources like file system folders, email and HTTP.
 There are different ways to deploy tasks in grid and every deploy method
 depends on selected source protocol. This SPI is configured to work
 with a list of URI's. Every URI contains all data about protocol/transport
 plus configuration parameters like credentials, scan frequency, and others.
 <p>
 When SPI establishes a connection with an URI, it downloads deployable units
 to the temporary directory in order to prevent it from any changes while
 scanning. Use method <a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setTemporaryDirectoryPath-java.lang.String-"><code>setTemporaryDirectoryPath(String)</code></a>)
 to set custom temporary folder for downloaded deployment units. SPI will
 create folder under the path with name identical to local node ID.
 <p>
 SPI tracks all changes of every given URI. This means that if any file is
 changed or deleted, SPI will re-deploy or delete corresponding tasks.
 Note that the very first apply to <a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#findResource-java.lang.String-"><code>findResource(String)</code></a>
 is blocked until SPI finishes scanning all URI's at least once.
 <p>
 There are several deployable unit types supported:
 <ul>
 <li>JAR file.</li>
 <li>GAR file.</li>
 <li>Local disk folder with structure of an unpacked deployment archive.</li>
 <li>Local disk folder containing only compiled Java classes.</li>
 </ul>
 <h1 class="header">Deployment package</h1>
 Deployment package can be represented as a regular JAR file with a specific structure similar to WAR format.
 Package files can have <code>'.jar'</code> or <code>'.gar'</code> extension.
 <p>
 Package structure:
   <pre class="snippet">
      META-INF/
              |
               - ignite.xml
               - ...
      lib/
         |
          -some-lib.jar
          - ...
      xyz.class
      ...</pre>
 <ul>
 <li>
 <code>META-INF/</code> entry may contain <code>ignite.xml</code> file which is a
 task descriptor file. The purpose of task descriptor XML file is to specify
 all tasks to be deployed. This file is a regular
 <a href="https://spring.io/docs">Spring</a> XML
 definition file.  <code>META-INF/</code> entry may also contain any other file
 specified by JAR format.
 </li>
 <li>
 <code>lib/</code> entry contains all library dependencies.
 </li>
 <li>Compiled Java classes must be placed in the root of a package file.</li>
 </ul>
 A package may be deployed without a descriptor file. If there is no descriptor file, SPI
 will scan all classes in archive and instantiate those that implement
 <a href="../../../../../../org/apache/ignite/compute/ComputeTask.html" title="interface in org.apache.ignite.compute"><code>ComputeTask</code></a> interface. In that case, all grid task classes must have a
 public no-argument constructor. Use <a href="../../../../../../org/apache/ignite/compute/ComputeTaskAdapter.html" title="class in org.apache.ignite.compute"><code>ComputeTaskAdapter</code></a> adapter for
 convenience when creating grid tasks.
 <p>
 By default, all downloaded packages that have digital signature in <code>META-INF</code>
 folder will be verified and deployed only if signature is valid.
 <p>
 <h1 class="header">URI</h1>
 This SPI uses a hierarchical URI definition. For more information about standard URI
 syntax refer to <a href="http://docs.oracle.com/javase/8/docs/api/java/net/URI.html?is-external=true" title="class or interface in java.net"><code>java.net.URI</code></a> documentation.
 <blockquote class="snippet">
 [<i>scheme</i><tt><b>:</b></tt>][<tt><b>//</b></tt><i>authority</i>][<i>path</i>][<tt><b>?</b></tt><i>query</i>][<tt><b>#</b></tt><i>fragment</i>]
 </blockquote>
 <p>
 Every URI defines its own deployment repository which will be scanned for any changes.
 URI itself has all information about protocol, connectivity, scan intervals and other
 parameters.
 <p>
 URI's may contain special characters, like spaces. If <code>encodeUri</code>
 flag is set to <code>true</code> (see <a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setEncodeUri-boolean-"><code>setEncodeUri(boolean)</code></a>), then
 URI 'path' field will be automatically encoded. By default this flag is
 set to <code>true</code>.
 <p>
 <h1 class="header">Code Example</h1>
 The following example demonstrates how the deployment SPI can be used. It expects that you have a package file
 in 'home/username/ignite/work/my_deployment/file' folder which contains 'myproject.HelloWorldTask' class.
 <pre name="code" class="java">
 IgniteConfiguration cfg = new IgniteConfiguration();

 DeploymentSpi deploymentSpi = new UriDeploymentSpi();

 deploymentSpi.setUriList(Arrays.asList("file:///home/username/ignite/work/my_deployment/file"));

 cfg.setDeploymentSpi(deploymentSpi);

 try (Ignite ignite = Ignition.start(cfg)) {
     ignite.compute().execute("myproject.HelloWorldTask", "my args");
 }
 </pre>
 <h1 class="header">Configuration</h1>
 <code>UriDeploymentSpi</code> has the following optional configuration
 parameters (there are no mandatory parameters):
 <ul>
 <li>
 Array of <code>UriDeploymentScanner</code>-s which will be used to deploy resources
 (see <a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setScanners-org.apache.ignite.spi.deployment.uri.scanners.UriDeploymentScanner...-"><code>setScanners(UriDeploymentScanner...)</code></a>). If not specified, preconfigured <code>UriDeploymentFileScanner</code>
 and <code>UriDeploymentHttpScanner</code> are used. You can implement your own scanner
 by implementing <code>UriDeploymentScanner</code> interface.
 </li>
 <li>
 Temporary directory path where scanned packages are
 copied to (see <a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setTemporaryDirectoryPath-java.lang.String-"><code>setTemporaryDirectoryPath(String)</code></a>).
 </li>
 <li>
 List of URIs to scan (see <a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setUriList-java.util.List-"><code>setUriList(List)</code></a>). If not
 specified, then URI specified by <a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#DFLT_DEPLOY_DIR"><code>DFLT_DEPLOY_DIR</code></a> is used.
 </li>
 <li>
 Flag to control encoding of the <code>'path'</code> portion of URI
 (see <a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setEncodeUri-boolean-"><code>setEncodeUri(boolean)</code></a>).
 </li>
 </ul>
 <h1 class="header">Protocols</h1>
 Following protocols are supported by this SPI out of the box:
 <ul>
 <li><a href="#file">file://</a> - File protocol</li>
 <li><a href="#http">http://</a> - HTTP protocol</li>
 <li><a href="#http">https://</a> - Secure HTTP protocol</li>
 </ul>
 <strong>Custom Protocols.</strong>
 <p>
 You can add support for additional protocols if needed. To do this implement UriDeploymentScanner interface and
 plug your implementation into the SPI via <a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setScanners-org.apache.ignite.spi.deployment.uri.scanners.UriDeploymentScanner...-"><code>setScanners(UriDeploymentScanner...)</code></a> method.
 <p>
 In addition to SPI configuration parameters, all necessary configuration
 parameters for selected URI should be defined in URI. Different protocols
 have different configuration parameters described below. Parameters are
 separated by '<code>;</code>' character.
 <p>
 <h1 class="header">File</h1>
 For this protocol SPI will scan folder specified by URI on file system and
 download any deplloyment files or directories that end with .jar or .gar from source
 directory defined in URI. For file system URI must have scheme equal to <code>file</code>.
 <p>
 Following parameters are supported:
 <table class="doctable">
  <tr>
      <th>Parameter</th>
      <th>Description</th>
      <th>Optional</th>
      <th>Default</th>
  </tr>
  <tr>
      <td>freq</td>
      <td>Scanning frequency in milliseconds.</td>
      <td>Yes</td>
      <td><code>5000</code> ms specified in <code>UriDeploymentFileScanner.DFLT_SCAN_FREQ</code>.</td>
  </tr>
 </table>
 <h2 class="header">File URI Example</h2>
 The following example will scan <code>'c:/Program files/ignite/deployment'</code>
 folder on local box every <code>'1000'</code> milliseconds. Note that since path
 has spaces, <a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setEncodeUri-boolean-"><code>setEncodeUri(boolean)</code></a> parameter must
 be set to <code>true</code> (which is default behavior).
 <blockquote class="snippet">
 <code>file://freq=2000@localhost/c:/Program files/ignite/deployment</code>
 </blockquote>
 <a name="classes"></a>
 <h2 class="header">HTTP/HTTPS</h2>
 URI deployment scanner tries to read DOM of the html it points to and parses out href attributes of all <span class='angle_bracket'>&lt;</span>a<span class='angle_bracket'>&gt;</span> tags
 - this becomes the collection of URLs to deployment package files that should be deployed. It's important that
 HTTP scanner uses <code>URLConnection.getLastModified()</code> method to check if there were any changes since last
 iteration for each deployment file before redeploying.
 <p>
 Following parameters are supported:
 <table class="doctable">
  <tr>
      <th>Parameter</th>
      <th>Description</th>
      <th>Optional</th>
      <th>Default</th>
  </tr>
  <tr>
      <td>freq</td>
      <td>Scanning frequency in milliseconds.</td>
      <td>Yes</td>
      <td><code>300000</code> ms specified in <code>UriDeploymentHttpScanner.DFLT_SCAN_FREQ</code>.</td>
  </tr>
 </table>
 <h2 class="header">HTTP URI Example</h2>
 The following example will download the page `www.mysite.com/ignite/deployment`, parse it and download and deploy
 all deployment packages specified by href attributes of <span class='angle_bracket'>&lt;</span>a<span class='angle_bracket'>&gt;</span> elements on the page using authentication
 <code>'username:password'</code> every '10000' milliseconds (only new/updated packages).
 <blockquote class="snippet">
 <code>http://username:password;freq=10000@www.mysite.com:110/ignite/deployment</code>
 </blockquote>
 <h2 class="header">Java Example</h2>
 UriDeploymentSpi needs to be explicitly configured to override default local deployment SPI.
 <pre name="code" class="java">
 UriDeploymentSpi deploySpi = new UriDeploymentSpi();

 IgniteConfiguration cfg = new IgniteConfiguration();

 // Set URIs.
 deploySpi.setUriList(Arrays.asList("http://www.site.com/tasks",
     "file://freq=20000@localhost/c:/Program files/gg-deployment"));

 // Override temporary directory path.
 deploySpi.setTemporaryDirectoryPath("c:/tmp/grid");

 //  Override default deployment SPI.
 cfg.setDeploymentSpi(deploySpi);

 //  Start grid.
 Ignition.start(cfg);
 </pre>
 <p>
 <h2 class="header">Spring Example</h2>
 UriDeploymentSpi can be configured from Spring XML configuration file:
 <pre name="code" class="xml">
 &lt;bean id="grid.custom.cfg" class="org.apache.ignite.configuration.IgniteConfiguration" singleton="true"&gt;
         ...
         &lt;property name="deploymentSpi"&gt;
             &lt;bean class="org.apache.ignite.grid.spi.deployment.uri.UriDeploymentSpi"&gt;
                 &lt;property name="temporaryDirectoryPath" value="c:/tmp/grid"/&gt;
                 &lt;property name="uriList"&gt;
                     &lt;list&gt;
                         &lt;value&gt;http://www.site.com/tasks&lt;/value&gt;
                         &lt;value&gt;file://freq=20000@localhost/c:/Program files/gg-deployment&lt;/value&gt;
                     &lt;/list&gt;
                 &lt;/property&gt;
             &lt;/bean&gt;
         &lt;/property&gt;
         ...
 &lt;/bean&gt;
 </pre>
 <p>
 <img src="http://ignite.apache.org/images/spring-small.png">
 <br>
 For information about Spring framework visit <a href="http://www.springframework.org/">www.springframework.org</a></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html" title="interface in org.apache.ignite.spi.deployment"><code>DeploymentSpi</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#DEPLOY_TMP_ROOT_NAME">DEPLOY_TMP_ROOT_NAME</a></span></code>
<div class="block">Default temporary directory name relative to file path
 <a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setTemporaryDirectoryPath-java.lang.String-"><code>setTemporaryDirectoryPath(String)</code></a>} (value is <code>gg.uri.deployment.tmp</code>).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#DFLT_DEPLOY_DIR">DFLT_DEPLOY_DIR</a></span></code>
<div class="block">Default deployment directory where SPI will pick up packages.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#XML_DESCRIPTOR_PATH">XML_DESCRIPTOR_PATH</a></span></code>
<div class="block">Default task description file path and name (value is <code>META-INF/ignite.xml</code>).</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.ignite.spi.IgniteSpiAdapter">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.ignite.spi.<a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html" title="class in org.apache.ignite.spi">IgniteSpiAdapter</a></h3>
<code><a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#ignite">ignite</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#igniteInstanceName">igniteInstanceName</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#UriDeploymentSpi--">UriDeploymentSpi</a></span>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>@Nullable <a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentResource.html" title="interface in org.apache.ignite.spi.deployment">DeploymentResource</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#findResource-java.lang.String-">findResource</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rsrcName)</code>
<div class="block">Finds class loader for the given class.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>org.apache.ignite.spi.deployment.uri.scanners.UriDeploymentScanner[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#getScanners--">getScanners</a></span>()</code>
<div class="block">Gets scanners.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#getTemporaryDirectoryPath--">getTemporaryDirectoryPath</a></span>()</code>
<div class="block">Gets temporary directory path.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a><span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#getUriList--">getUriList</a></span>()</code>
<div class="block">Gets list of URIs that are processed by SPI.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#isCheckMd5--">isCheckMd5</a></span>()</code>
<div class="block">Gets <code>checkMd5</code> property.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#register-java.lang.ClassLoader-java.lang.Class-">register</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a>&nbsp;ldr,
        <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><span class='angle_bracket'>&lt;</span>?<span class='angle_bracket'>&gt;</span>&nbsp;rsrc)</code>
<div class="block">Registers a class loader with this SPI.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" title="class in org.apache.ignite.spi.deployment.uri">UriDeploymentSpi</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setCheckMd5-boolean-">setCheckMd5</a></span>(boolean&nbsp;checkMd5)</code>
<div class="block">If set to <code>true</code> then SPI should exclude files with same md5s from deployment.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" title="class in org.apache.ignite.spi.deployment.uri">UriDeploymentSpi</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setEncodeUri-boolean-">setEncodeUri</a></span>(boolean&nbsp;encodeUri)</code>
<div class="block">Indicates that URI must be encoded before usage.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setListener-org.apache.ignite.spi.deployment.DeploymentListener-">setListener</a></span>(@Nullable <a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentListener.html" title="interface in org.apache.ignite.spi.deployment">DeploymentListener</a>&nbsp;lsnr)</code>
<div class="block">Sets or unsets deployment event listener.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html" title="class in org.apache.ignite.spi">IgniteSpiAdapter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setName-java.lang.String-">setName</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
<div class="block">Sets SPI name.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" title="class in org.apache.ignite.spi.deployment.uri">UriDeploymentSpi</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setScanners-org.apache.ignite.spi.deployment.uri.scanners.UriDeploymentScanner...-">setScanners</a></span>(org.apache.ignite.spi.deployment.uri.scanners.UriDeploymentScanner...&nbsp;scanners)</code>
<div class="block">Sets scanners.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" title="class in org.apache.ignite.spi.deployment.uri">UriDeploymentSpi</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setTemporaryDirectoryPath-java.lang.String-">setTemporaryDirectoryPath</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tmpDirPath)</code>
<div class="block">Sets absolute path to temporary directory which will be used by
 deployment SPI to keep all deployed classes in.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" title="class in org.apache.ignite.spi.deployment.uri">UriDeploymentSpi</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setUriList-java.util.List-">setUriList</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a><span class='angle_bracket'>&gt;</span>&nbsp;uriList)</code>
<div class="block">Sets list of URI which point to a directory with packages and which should be
 scanned by SPI for the new tasks.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#spiStart-java.lang.String-">spiStart</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;igniteInstanceName)</code>
<div class="block">This method is called to start SPI.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#spiStop--">spiStop</a></span>()</code>
<div class="block">This method is called to stop SPI.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#toString--">toString</a></span>()</code></td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#unregister-java.lang.String-">unregister</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rsrcName)</code>
<div class="block">Unregisters all class loaders that have a class with given name or have
 a class with give <a href="../../../../../../org/apache/ignite/compute/ComputeTaskName.html" title="annotation in org.apache.ignite.compute"><code>ComputeTaskName</code></a> value.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.ignite.spi.IgniteSpiAdapter">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.ignite.spi.<a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html" title="class in org.apache.ignite.spi">IgniteSpiAdapter</a></h3>
<code><a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#addTimeoutObject-org.apache.ignite.spi.IgniteSpiTimeoutObject-">addTimeoutObject</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#assertParameter-boolean-java.lang.String-">assertParameter</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#checkConfigurationConsistency0-org.apache.ignite.spi.IgniteSpiContext-org.apache.ignite.cluster.ClusterNode-boolean-">checkConfigurationConsistency0</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#clientFailureDetectionTimeout--">clientFailureDetectionTimeout</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#configInfo-java.lang.String-java.lang.Object-">configInfo</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#createSpiAttributeName-java.lang.String-">createSpiAttributeName</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#failureDetectionTimeout--">failureDetectionTimeout</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#failureDetectionTimeoutEnabled--">failureDetectionTimeoutEnabled</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#failureDetectionTimeoutEnabled-boolean-">failureDetectionTimeoutEnabled</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#getConsistentAttributeNames--">getConsistentAttributeNames</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#getExceptionRegistry--">getExceptionRegistry</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#getLocalNode--">getLocalNode</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#getName--">getName</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#getNodeAttributes--">getNodeAttributes</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#getSpiContext--">getSpiContext</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#ignite--">ignite</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#initFailureDetectionTimeout--">initFailureDetectionTimeout</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#injectables--">injectables</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#injectResources-org.apache.ignite.Ignite-">injectResources</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#isNodeStopping--">isNodeStopping</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#onBeforeStart--">onBeforeStart</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#onClientDisconnected-org.apache.ignite.lang.IgniteFuture-">onClientDisconnected</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#onClientReconnected-boolean-">onClientReconnected</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#onContextDestroyed--">onContextDestroyed</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#onContextDestroyed0--">onContextDestroyed0</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#onContextInitialized-org.apache.ignite.spi.IgniteSpiContext-">onContextInitialized</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#onContextInitialized0-org.apache.ignite.spi.IgniteSpiContext-">onContextInitialized0</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#registerMBean-java.lang.String-T-java.lang.Class-">registerMBean</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#removeTimeoutObject-org.apache.ignite.spi.IgniteSpiTimeoutObject-">removeTimeoutObject</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#started--">started</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#startInfo--">startInfo</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#startStopwatch--">startStopwatch</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#stopInfo--">stopInfo</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#unregisterMBean--">unregisterMBean</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.ignite.spi.IgniteSpi">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.ignite.spi.<a href="../../../../../../org/apache/ignite/spi/IgniteSpi.html" title="interface in org.apache.ignite.spi">IgniteSpi</a></h3>
<code><a href="../../../../../../org/apache/ignite/spi/IgniteSpi.html#getName--">getName</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpi.html#getNodeAttributes--">getNodeAttributes</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpi.html#onClientDisconnected-org.apache.ignite.lang.IgniteFuture-">onClientDisconnected</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpi.html#onClientReconnected-boolean-">onClientReconnected</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpi.html#onContextDestroyed--">onContextDestroyed</a>, <a href="../../../../../../org/apache/ignite/spi/IgniteSpi.html#onContextInitialized-org.apache.ignite.spi.IgniteSpiContext-">onContextInitialized</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="DFLT_DEPLOY_DIR">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_DEPLOY_DIR</h4>
<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> DFLT_DEPLOY_DIR</pre>
<div class="block">Default deployment directory where SPI will pick up packages. Note that this path is relative to
 <code>IGNITE_HOME/work</code> folder if <code>IGNITE_HOME</code> system or environment variable specified,
 otherwise it is relative to <code>work</code> folder under system <code>java.io.tmpdir</code> folder.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getWorkDirectory--"><code>IgniteConfiguration.getWorkDirectory()</code></a>, 
<a href="../../../../../../constant-values.html#org.apache.ignite.spi.deployment.uri.UriDeploymentSpi.DFLT_DEPLOY_DIR">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="XML_DESCRIPTOR_PATH">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>XML_DESCRIPTOR_PATH</h4>
<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> XML_DESCRIPTOR_PATH</pre>
<div class="block">Default task description file path and name (value is <code>META-INF/ignite.xml</code>).</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.apache.ignite.spi.deployment.uri.UriDeploymentSpi.XML_DESCRIPTOR_PATH">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DEPLOY_TMP_ROOT_NAME">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DEPLOY_TMP_ROOT_NAME</h4>
<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> DEPLOY_TMP_ROOT_NAME</pre>
<div class="block">Default temporary directory name relative to file path
 <a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html#setTemporaryDirectoryPath-java.lang.String-"><code>setTemporaryDirectoryPath(String)</code></a>} (value is <code>gg.uri.deployment.tmp</code>).</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.apache.ignite.spi.deployment.uri.UriDeploymentSpi.DEPLOY_TMP_ROOT_NAME">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="UriDeploymentSpi--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>UriDeploymentSpi</h4>
<pre>public&nbsp;UriDeploymentSpi()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="setTemporaryDirectoryPath-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTemporaryDirectoryPath</h4>
<pre><a href="../../../../../../org/apache/ignite/spi/IgniteSpiConfiguration.html" title="annotation in org.apache.ignite.spi">@IgniteSpiConfiguration</a>(<a href="../../../../../../org/apache/ignite/spi/IgniteSpiConfiguration.html#optional--">optional</a>=true)
public&nbsp;<a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" title="class in org.apache.ignite.spi.deployment.uri">UriDeploymentSpi</a>&nbsp;setTemporaryDirectoryPath(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tmpDirPath)</pre>
<div class="block">Sets absolute path to temporary directory which will be used by
 deployment SPI to keep all deployed classes in.
 <p>
 If not provided, default value is <code>java.io.tmpdir</code> system property value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>tmpDirPath</code> - Temporary directory path.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for chaining.</dd>
</dl>
</li>
</ul>
<a name="setUriList-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUriList</h4>
<pre><a href="../../../../../../org/apache/ignite/spi/IgniteSpiConfiguration.html" title="annotation in org.apache.ignite.spi">@IgniteSpiConfiguration</a>(<a href="../../../../../../org/apache/ignite/spi/IgniteSpiConfiguration.html#optional--">optional</a>=true)
public&nbsp;<a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" title="class in org.apache.ignite.spi.deployment.uri">UriDeploymentSpi</a>&nbsp;setUriList(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a><span class='angle_bracket'>&gt;</span>&nbsp;uriList)</pre>
<div class="block">Sets list of URI which point to a directory with packages and which should be
 scanned by SPI for the new tasks.
 <p>
 If not provided, default value is list with
 <code>file://${IGNITE_HOME}/work/deployment/file</code> element.
 Note that system property <code>IGNITE_HOME</code> must be set.
 For unknown <code>IGNITE_HOME</code> list of URI must be provided explicitly.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>uriList</code> - Package file URIs.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for chaining.</dd>
</dl>
</li>
</ul>
<a name="setCheckMd5-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCheckMd5</h4>
<pre><a href="../../../../../../org/apache/ignite/spi/IgniteSpiConfiguration.html" title="annotation in org.apache.ignite.spi">@IgniteSpiConfiguration</a>(<a href="../../../../../../org/apache/ignite/spi/IgniteSpiConfiguration.html#optional--">optional</a>=true)
public&nbsp;<a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" title="class in org.apache.ignite.spi.deployment.uri">UriDeploymentSpi</a>&nbsp;setCheckMd5(boolean&nbsp;checkMd5)</pre>
<div class="block">If set to <code>true</code> then SPI should exclude files with same md5s from deployment.
 Otherwise it should try to load new unit regardless to possible file duplication.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>checkMd5</code> - new value for the property</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for chaining.</dd>
</dl>
</li>
</ul>
<a name="isCheckMd5--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCheckMd5</h4>
<pre>public&nbsp;boolean&nbsp;isCheckMd5()</pre>
<div class="block">Gets <code>checkMd5</code> property.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>value of the <code>checkMd5</code> property.</dd>
</dl>
</li>
</ul>
<a name="setEncodeUri-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setEncodeUri</h4>
<pre><a href="../../../../../../org/apache/ignite/spi/IgniteSpiConfiguration.html" title="annotation in org.apache.ignite.spi">@IgniteSpiConfiguration</a>(<a href="../../../../../../org/apache/ignite/spi/IgniteSpiConfiguration.html#optional--">optional</a>=true)
public&nbsp;<a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" title="class in org.apache.ignite.spi.deployment.uri">UriDeploymentSpi</a>&nbsp;setEncodeUri(boolean&nbsp;encodeUri)</pre>
<div class="block">Indicates that URI must be encoded before usage. Encoding means replacing
 all occurrences of space with '%20', percent sign with '%25'
 and semicolon with '%3B'.
 <p>
 If not provided, default value is <code>true</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>encodeUri</code> - <code>true</code> if every URI should be encoded and
      <code>false</code> otherwise.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for chaining.</dd>
</dl>
</li>
</ul>
<a name="getTemporaryDirectoryPath--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTemporaryDirectoryPath</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTemporaryDirectoryPath()</pre>
<div class="block">Gets temporary directory path.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Temporary directory path.</dd>
</dl>
</li>
</ul>
<a name="getUriList--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUriList</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a><span class='angle_bracket'>&gt;</span>&nbsp;getUriList()</pre>
<div class="block">Gets list of URIs that are processed by SPI.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List of URIs.</dd>
</dl>
</li>
</ul>
<a name="setListener-org.apache.ignite.spi.deployment.DeploymentListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setListener</h4>
<pre>public&nbsp;void&nbsp;setListener(@Nullable
                        @Nullable <a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentListener.html" title="interface in org.apache.ignite.spi.deployment">DeploymentListener</a>&nbsp;lsnr)</pre>
<div class="block">Sets or unsets deployment event listener. Grid implementation will use this listener
 to properly add and remove various deployments.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html#setListener-org.apache.ignite.spi.deployment.DeploymentListener-">setListener</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html" title="interface in org.apache.ignite.spi.deployment">DeploymentSpi</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lsnr</code> - Listener for deployment events. <code>null</code> to unset the listener.</dd>
</dl>
</li>
</ul>
<a name="getScanners--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getScanners</h4>
<pre>public&nbsp;org.apache.ignite.spi.deployment.uri.scanners.UriDeploymentScanner[]&nbsp;getScanners()</pre>
<div class="block">Gets scanners.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Scanners.</dd>
</dl>
</li>
</ul>
<a name="setScanners-org.apache.ignite.spi.deployment.uri.scanners.UriDeploymentScanner...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setScanners</h4>
<pre><a href="../../../../../../org/apache/ignite/spi/IgniteSpiConfiguration.html" title="annotation in org.apache.ignite.spi">@IgniteSpiConfiguration</a>(<a href="../../../../../../org/apache/ignite/spi/IgniteSpiConfiguration.html#optional--">optional</a>=true)
public&nbsp;<a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" title="class in org.apache.ignite.spi.deployment.uri">UriDeploymentSpi</a>&nbsp;setScanners(org.apache.ignite.spi.deployment.uri.scanners.UriDeploymentScanner...&nbsp;scanners)</pre>
<div class="block">Sets scanners.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>scanners</code> - Scanners.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for chaining.</dd>
</dl>
</li>
</ul>
<a name="spiStop--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>spiStop</h4>
<pre>public&nbsp;void&nbsp;spiStop()
             throws <a href="../../../../../../org/apache/ignite/spi/IgniteSpiException.html" title="class in org.apache.ignite.spi">IgniteSpiException</a></pre>
<div class="block">This method is called to stop SPI. After this method returns kernel
 assumes that this SPI is finished and all resources acquired by it
 are released.
 <p>
 <b>
 Note that this method can be called at any point including during
 recovery of failed start. It should make no assumptions on what state SPI
 will be in when this method is called.
 </b></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/ignite/spi/IgniteSpi.html#spiStop--">spiStop</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/ignite/spi/IgniteSpi.html" title="interface in org.apache.ignite.spi">IgniteSpi</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/ignite/spi/IgniteSpiException.html" title="class in org.apache.ignite.spi">IgniteSpiException</a></code> - Thrown in case of any error during SPI stop.</dd>
</dl>
</li>
</ul>
<a name="spiStart-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>spiStart</h4>
<pre>public&nbsp;void&nbsp;spiStart(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;igniteInstanceName)
              throws <a href="../../../../../../org/apache/ignite/spi/IgniteSpiException.html" title="class in org.apache.ignite.spi">IgniteSpiException</a></pre>
<div class="block">This method is called to start SPI. After this method returns
 successfully kernel assumes that SPI is fully operational.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/ignite/spi/IgniteSpi.html#spiStart-java.lang.String-">spiStart</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/ignite/spi/IgniteSpi.html" title="interface in org.apache.ignite.spi">IgniteSpi</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>igniteInstanceName</code> - Name of Ignite instance this SPI is being started for
    (<code>null</code> for default Ignite instance).</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/ignite/spi/IgniteSpiException.html" title="class in org.apache.ignite.spi">IgniteSpiException</a></code> - Throws in case of any error during SPI start.</dd>
</dl>
</li>
</ul>
<a name="findResource-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findResource</h4>
<pre>@Nullable
public&nbsp;@Nullable <a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentResource.html" title="interface in org.apache.ignite.spi.deployment">DeploymentResource</a>&nbsp;findResource(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rsrcName)</pre>
<div class="block">Finds class loader for the given class.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html#findResource-java.lang.String-">findResource</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html" title="interface in org.apache.ignite.spi.deployment">DeploymentSpi</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rsrcName</code> - Class name or class alias to find class loader for.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Deployed class loader, or <code>null</code> if not deployed.</dd>
</dl>
</li>
</ul>
<a name="register-java.lang.ClassLoader-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>register</h4>
<pre>public&nbsp;boolean&nbsp;register(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a>&nbsp;ldr,
                        <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><span class='angle_bracket'>&lt;</span>?<span class='angle_bracket'>&gt;</span>&nbsp;rsrc)
                 throws <a href="../../../../../../org/apache/ignite/spi/IgniteSpiException.html" title="class in org.apache.ignite.spi">IgniteSpiException</a></pre>
<div class="block">Registers a class loader with this SPI. This method exists
 to be able to add external class loaders to deployment SPI.
 Deployment SPI may also have its own class loaders. For example,
 in case of GAR deployment, every GAR file is loaded and deployed
 with a separate class loader maintained internally by the SPI.
 <p>
 The array of classes passed in should be checked for presence of
 <a href="../../../../../../org/apache/ignite/compute/ComputeTaskName.html" title="annotation in org.apache.ignite.compute"><code>ComputeTaskName</code></a> annotations. The classes that have this annotation
 should be accessible by this name from <a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html#findResource-java.lang.String-"><code>DeploymentSpi.findResource(String)</code></a> method.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html#register-java.lang.ClassLoader-java.lang.Class-">register</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html" title="interface in org.apache.ignite.spi.deployment">DeploymentSpi</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ldr</code> - Class loader to register.</dd>
<dd><code>rsrc</code> - Class that should be checked for aliases.
      Currently the only alias in the system is <a href="../../../../../../org/apache/ignite/compute/ComputeTaskName.html" title="annotation in org.apache.ignite.compute"><code>ComputeTaskName</code></a> for
      task classes; in future, there may be others.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>True</code> if resource was registered.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/ignite/spi/IgniteSpiException.html" title="class in org.apache.ignite.spi">IgniteSpiException</a></code> - If registration failed.</dd>
</dl>
</li>
</ul>
<a name="unregister-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unregister</h4>
<pre>public&nbsp;boolean&nbsp;unregister(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rsrcName)</pre>
<div class="block">Unregisters all class loaders that have a class with given name or have
 a class with give <a href="../../../../../../org/apache/ignite/compute/ComputeTaskName.html" title="annotation in org.apache.ignite.compute"><code>ComputeTaskName</code></a> value.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html#unregister-java.lang.String-">unregister</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/ignite/spi/deployment/DeploymentSpi.html" title="interface in org.apache.ignite.spi.deployment">DeploymentSpi</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rsrcName</code> - Either class name or <a href="../../../../../../org/apache/ignite/compute/ComputeTaskName.html" title="annotation in org.apache.ignite.compute"><code>ComputeTaskName</code></a> value for a class
      whose class loader needs to be unregistered.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>True</code> if resource was unregistered.</dd>
</dl>
</li>
</ul>
<a name="setName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setName</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html" title="class in org.apache.ignite.spi">IgniteSpiAdapter</a>&nbsp;setName(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
<div class="block">Sets SPI name.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html#setName-java.lang.String-">setName</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/ignite/spi/IgniteSpiAdapter.html" title="class in org.apache.ignite.spi">IgniteSpiAdapter</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - SPI name.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for chaining.</dd>
</dl>
</li>
</ul>
<a name="toString--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/UriDeploymentSpi.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../../../org/apache/ignite/spi/deployment/uri/UriDeploymentSpiMBean.html" title="interface in org.apache.ignite.spi.deployment.uri"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html" target="_top">Frames</a></li>
<li><a href="UriDeploymentSpi.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><table width="100%" border="0" cellspacing=0 cellpadding=0 style="padding: 5px">                                     <tr>                                         <td>                                             <table style="padding-left: 0; margin: 0">                                                 <tbody style="padding: 0; margin: 0">                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <a target=_blank href="https://ignite.apache.org"><nobr>2020 Copyright &#169; Apache Software Foundation</nobr></a>                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                         <td width="100%" align="right" valign="center">                                             <a href="https://twitter.com/ApacheIgnite" class="twitter-follow-button" data-show-count="false" data-size="large">Follow @ApacheIgnite</a>                                         </td>                                     </tr>                                     <tr>                                         <td colspan="2" valign="top" align="left">                                             <table style="padding-left: 0; margin: 0">                                                 <tbody style="padding: 0; margin: 0">                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Ignite Database and Caching Platform</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             ver. <strong>2.8.1</strong>                                                         </td>                                                     </tr>                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Release Date</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             May 21 2020                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                     </tr>                                     </table></small></p>
</body>
</html>
