<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<META NAME="ROBOTS" CONTENT="NOINDEX">
<link rel="canonical" href="https://ignite.apache.org/releases/1.0.0-rc3/javadoc/org/apache/ignite/events/CacheEvent.html" />
<!-- Generated by javadoc (version 1.7.0_21) on Tue Mar 24 10:27:30 MSK 2015 -->
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>CacheEvent (Ignite 1.0.0-RC3)</title>
<meta name="date" content="2015-03-24">
<link rel="stylesheet" type="text/css" href="../../../../javadoc.css" title="Style">
<link rel='shortcut icon' href='http://gridgain.com/wp-content/uploads/2014/09/favicon.ico'/>
<link type='text/css' rel='stylesheet' href='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shCore.css'/>
<link type='text/css' rel='stylesheet' href='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shThemeDefault.css'/>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shCore.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shLegacy.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJava.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPlain.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJScript.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushBash.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushXml.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushScala.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushGroovy.js'></script>

<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"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="CacheEvent (Ignite 1.0.0-RC3)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><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/CacheEvent.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 class="aboutLanguage"><em>Apache Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li><a href="../../../../org/apache/ignite/events/CacheQueryExecutedEvent.html" title="class in org.apache.ignite.events"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/ignite/events/CacheEvent.html" target="_top">Frames</a></li>
<li><a href="CacheEvent.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All 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>Field&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>Field&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.events</div>
<h2 title="Class CacheEvent" class="title">Class CacheEvent</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/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/events/EventAdapter.html" title="class in org.apache.ignite.events">org.apache.ignite.events.EventAdapter</a></li>
<li>
<ul class="inheritance">
<li>org.apache.ignite.events.CacheEvent</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a><span class='angle_bracket'>&lt;</span><a href="../../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>, <a href="../../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">CacheEvent</span>
extends <a href="../../../../org/apache/ignite/events/EventAdapter.html" title="class in org.apache.ignite.events">EventAdapter</a></pre>
<div class="block">In-memory database (cache) event.
 <p>
 Grid events are used for notification about what happens within the grid. Note that by
 design Ignite keeps all events generated on the local node locally and it provides
 APIs for performing a distributed queries across multiple nodes:
 <ul>
      <li>
          <a href="../../../../org/apache/ignite/IgniteEvents.html#remoteQuery(org.apache.ignite.lang.IgnitePredicate, long, int...)"><code>IgniteEvents.remoteQuery(org.apache.ignite.lang.IgnitePredicate, long, int...)</code></a> -
          asynchronously querying events occurred on the nodes specified, including remote nodes.
      </li>
      <li>
          <a href="../../../../org/apache/ignite/IgniteEvents.html#localQuery(org.apache.ignite.lang.IgnitePredicate, int...)"><code>IgniteEvents.localQuery(org.apache.ignite.lang.IgnitePredicate, int...)</code></a> -
          querying only local events stored on this local node.
      </li>
      <li>
          <a href="../../../../org/apache/ignite/IgniteEvents.html#localListen(org.apache.ignite.lang.IgnitePredicate, int...)"><code>IgniteEvents.localListen(org.apache.ignite.lang.IgnitePredicate, int...)</code></a> -
          listening to local grid events (events from remote nodes not included).
      </li>
 </ul>
 User can also wait for events using method <a href="../../../../org/apache/ignite/IgniteEvents.html#waitForLocal(org.apache.ignite.lang.IgnitePredicate, int...)"><code>IgniteEvents.waitForLocal(org.apache.ignite.lang.IgnitePredicate, int...)</code></a>.
 <h1 class="header">Events and Performance</h1>
 Note that by default all events in Ignite are enabled and therefore generated and stored
 by whatever event storage SPI is configured. Ignite can and often does generate thousands events per seconds
 under the load and therefore it creates a significant additional load on the system. If these events are
 not needed by the application this load is unnecessary and leads to significant performance degradation.
 <p>
 It is <b>highly recommended</b> to enable only those events that your application logic requires
 by using <a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getIncludeEventTypes()"><code>IgniteConfiguration.getIncludeEventTypes()</code></a> method in Ignite configuration. Note that certain
 events are required for Ignite's internal operations and such events will still be generated but not stored by
 event storage SPI if they are disabled in Ignite configuration.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_ENTRY_CREATED"><code>EventType.EVT_CACHE_ENTRY_CREATED</code></a>, 
<a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_ENTRY_DESTROYED"><code>EventType.EVT_CACHE_ENTRY_DESTROYED</code></a>, 
<a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_ENTRY_EVICTED"><code>EventType.EVT_CACHE_ENTRY_EVICTED</code></a>, 
<a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_OBJECT_PUT"><code>EventType.EVT_CACHE_OBJECT_PUT</code></a>, 
<a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_OBJECT_READ"><code>EventType.EVT_CACHE_OBJECT_READ</code></a>, 
<a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_OBJECT_REMOVED"><code>EventType.EVT_CACHE_OBJECT_REMOVED</code></a>, 
<a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_OBJECT_LOCKED"><code>EventType.EVT_CACHE_OBJECT_LOCKED</code></a>, 
<a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_OBJECT_UNLOCKED"><code>EventType.EVT_CACHE_OBJECT_UNLOCKED</code></a>, 
<a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_OBJECT_SWAPPED"><code>EventType.EVT_CACHE_OBJECT_SWAPPED</code></a>, 
<a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_OBJECT_UNSWAPPED"><code>EventType.EVT_CACHE_OBJECT_UNSWAPPED</code></a>, 
<a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_OBJECT_EXPIRED"><code>EventType.EVT_CACHE_OBJECT_EXPIRED</code></a>, 
<a href="../../../../serialized-form.html#org.apache.ignite.events.CacheEvent">Serialized Form</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" 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><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#CacheEvent(java.lang.String, org.apache.ignite.cluster.ClusterNode, org.apache.ignite.cluster.ClusterNode, java.lang.String, int, int, boolean, java.lang.Object, org.apache.ignite.lang.IgniteUuid, java.lang.Object, java.lang.Object, boolean, java.lang.Object, boolean, java.util.UUID, java.lang.String, java.lang.String)">CacheEvent</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;cacheName,
          <a href="../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a>&nbsp;node,
          <a href="../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a>&nbsp;evtNode,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
          int&nbsp;type,
          int&nbsp;part,
          boolean&nbsp;near,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;key,
          <a href="../../../../org/apache/ignite/lang/IgniteUuid.html" title="class in org.apache.ignite.lang">IgniteUuid</a>&nbsp;xid,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;lockId,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;newVal,
          boolean&nbsp;hasNewVal,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;oldVal,
          boolean&nbsp;hasOldVal,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;subjId,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;cloClsName,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;taskName)</code>
<div class="block">Constructs cache event.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#cacheName()">cacheName</a></strong>()</code>
<div class="block">Gets cache name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#closureClassName()">closureClassName</a></strong>()</code>
<div class="block">Gets closure class name (applicable only for TRANSFORM operations).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#eventNode()">eventNode</a></strong>()</code>
<div class="block">Gets node which initiated cache operation or <code>null</code> if that node is not available.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#hasNewValue()">hasNewValue</a></strong>()</code>
<div class="block">Gets flag indicating whether cache entry has new value in case if
 we only have new value in serialized form in which case <a href="../../../../org/apache/ignite/events/CacheEvent.html#newValue()"><code>newValue()</code></a>
 will return <code>null</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#hasOldValue()">hasOldValue</a></strong>()</code>
<div class="block">Gets flag indicating whether cache entry has old value in case if
 we only have old value in serialized form in which case <a href="../../../../org/apache/ignite/events/CacheEvent.html#oldValue()"><code>oldValue()</code></a>
 will return <code>null</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#isNear()">isNear</a></strong>()</code>
<div class="block">Gets flag indicating whether event happened on <code>near</code> or <code>partitioned</code> cache.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><span class='angle_bracket'>&lt;</span>K<span class='angle_bracket'>&gt;</span>&nbsp;K</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#key()">key</a></strong>()</code>
<div class="block">Gets cache entry associated with event.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#lockId()">lockId</a></strong>()</code>
<div class="block">ID of the lock if held or <tt>null</tt> if no lock held.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#newValue()">newValue</a></strong>()</code>
<div class="block">Gets new value for this event.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#oldValue()">oldValue</a></strong>()</code>
<div class="block">Gets old value associated with this event.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#partition()">partition</a></strong>()</code>
<div class="block">Gets partition for the event which is the partition the key belongs to.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#shortDisplay()">shortDisplay</a></strong>()</code>
<div class="block">Gets a shortened version of <code>toString()</code> result.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#subjectId()">subjectId</a></strong>()</code>
<div class="block">Gets security subject ID initiated this cache event, if available.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#taskName()">taskName</a></strong>()</code>
<div class="block">Gets task name if cache event was caused by an operation initiated within task execution.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#toString()">toString</a></strong>()</code></td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/ignite/lang/IgniteUuid.html" title="class in org.apache.ignite.lang">IgniteUuid</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/events/CacheEvent.html#xid()">xid</a></strong>()</code>
<div class="block">ID of surrounding cache cache transaction or <tt>null</tt> if there is
 no surrounding transaction.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.ignite.events.EventAdapter">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.ignite.events.<a href="../../../../org/apache/ignite/events/EventAdapter.html" title="class in org.apache.ignite.events">EventAdapter</a></h3>
<code><a href="../../../../org/apache/ignite/events/EventAdapter.html#compareTo(org.apache.ignite.events.Event)">compareTo</a>, <a href="../../../../org/apache/ignite/events/EventAdapter.html#equals(java.lang.Object)">equals</a>, <a href="../../../../org/apache/ignite/events/EventAdapter.html#hashCode()">hashCode</a>, <a href="../../../../org/apache/ignite/events/EventAdapter.html#id()">id</a>, <a href="../../../../org/apache/ignite/events/EventAdapter.html#localOrder()">localOrder</a>, <a href="../../../../org/apache/ignite/events/EventAdapter.html#message()">message</a>, <a href="../../../../org/apache/ignite/events/EventAdapter.html#message(java.lang.String)">message</a>, <a href="../../../../org/apache/ignite/events/EventAdapter.html#name()">name</a>, <a href="../../../../org/apache/ignite/events/EventAdapter.html#node()">node</a>, <a href="../../../../org/apache/ignite/events/EventAdapter.html#node(org.apache.ignite.cluster.ClusterNode)">node</a>, <a href="../../../../org/apache/ignite/events/EventAdapter.html#timestamp()">timestamp</a>, <a href="../../../../org/apache/ignite/events/EventAdapter.html#type()">type</a>, <a href="../../../../org/apache/ignite/events/EventAdapter.html#type(int)">type</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/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="CacheEvent(java.lang.String, org.apache.ignite.cluster.ClusterNode, org.apache.ignite.cluster.ClusterNode, java.lang.String, int, int, boolean, java.lang.Object, org.apache.ignite.lang.IgniteUuid, java.lang.Object, java.lang.Object, boolean, java.lang.Object, boolean, java.util.UUID, java.lang.String, java.lang.String)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>CacheEvent</h4>
<pre>public&nbsp;CacheEvent(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;cacheName,
          <a href="../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a>&nbsp;node,
          @Nullable
          <a href="../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a>&nbsp;evtNode,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
          int&nbsp;type,
          int&nbsp;part,
          boolean&nbsp;near,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;key,
          <a href="../../../../org/apache/ignite/lang/IgniteUuid.html" title="class in org.apache.ignite.lang">IgniteUuid</a>&nbsp;xid,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;lockId,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;newVal,
          boolean&nbsp;hasNewVal,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;oldVal,
          boolean&nbsp;hasOldVal,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;subjId,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;cloClsName,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;taskName)</pre>
<div class="block">Constructs cache event.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cacheName</code> - Cache name.</dd><dd><code>node</code> - Local node.</dd><dd><code>evtNode</code> - Event node ID.</dd><dd><code>msg</code> - Event message.</dd><dd><code>type</code> - Event type.</dd><dd><code>part</code> - Partition for the event (usually the partition the key belongs to).</dd><dd><code>near</code> - Flag indicating whether event happened on <code>near</code> or <code>partitioned</code> cache.</dd><dd><code>key</code> - Cache key.</dd><dd><code>xid</code> - Transaction ID.</dd><dd><code>lockId</code> - Lock ID.</dd><dd><code>newVal</code> - New value.</dd><dd><code>hasNewVal</code> - Flag indicating whether new value is present in case if we
      don't have it in deserialized form.</dd><dd><code>oldVal</code> - Old value.</dd><dd><code>hasOldVal</code> - Flag indicating whether old value is present in case if we
      don't have it in deserialized form.</dd><dd><code>subjId</code> - Subject ID.</dd><dd><code>cloClsName</code> - Closure class name.</dd></dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="cacheName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cacheName</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;cacheName()</pre>
<div class="block">Gets cache name.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Cache name.</dd></dl>
</li>
</ul>
<a name="partition()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>partition</h4>
<pre>public&nbsp;int&nbsp;partition()</pre>
<div class="block">Gets partition for the event which is the partition the key belongs to.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Partition for the event.</dd></dl>
</li>
</ul>
<a name="isNear()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isNear</h4>
<pre>public&nbsp;boolean&nbsp;isNear()</pre>
<div class="block">Gets flag indicating whether event happened on <code>near</code> or <code>partitioned</code> cache.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Flag indicating whether event happened on <code>near</code> or <code>partitioned</code> cache.</dd></dl>
</li>
</ul>
<a name="eventNode()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>eventNode</h4>
<pre>public&nbsp;<a href="../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a>&nbsp;eventNode()</pre>
<div class="block">Gets node which initiated cache operation or <code>null</code> if that node is not available.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Node which initiated cache operation or <code>null</code> if that node is not available.</dd></dl>
</li>
</ul>
<a name="key()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>key</h4>
<pre>public&nbsp;<span class='angle_bracket'>&lt;</span>K<span class='angle_bracket'>&gt;</span>&nbsp;K&nbsp;key()</pre>
<div class="block">Gets cache entry associated with event.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Cache entry associated with event.</dd></dl>
</li>
</ul>
<a name="xid()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>xid</h4>
<pre>public&nbsp;<a href="../../../../org/apache/ignite/lang/IgniteUuid.html" title="class in org.apache.ignite.lang">IgniteUuid</a>&nbsp;xid()</pre>
<div class="block">ID of surrounding cache cache transaction or <tt>null</tt> if there is
 no surrounding transaction.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>ID of surrounding cache transaction.</dd></dl>
</li>
</ul>
<a name="lockId()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>lockId</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;lockId()</pre>
<div class="block">ID of the lock if held or <tt>null</tt> if no lock held.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>ID of the lock if held.</dd></dl>
</li>
</ul>
<a name="newValue()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newValue</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;newValue()</pre>
<div class="block">Gets new value for this event.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>New value associated with event (<tt>null</tt> if event is
      <a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_OBJECT_REMOVED"><code>EventType.EVT_CACHE_OBJECT_REMOVED</code></a>.</dd></dl>
</li>
</ul>
<a name="oldValue()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>oldValue</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;oldValue()</pre>
<div class="block">Gets old value associated with this event.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Old value associated with event.</dd></dl>
</li>
</ul>
<a name="hasOldValue()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasOldValue</h4>
<pre>public&nbsp;boolean&nbsp;hasOldValue()</pre>
<div class="block">Gets flag indicating whether cache entry has old value in case if
 we only have old value in serialized form in which case <a href="../../../../org/apache/ignite/events/CacheEvent.html#oldValue()"><code>oldValue()</code></a>
 will return <code>null</code>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Flag indicating whether there is old value associated with this event.</dd></dl>
</li>
</ul>
<a name="hasNewValue()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasNewValue</h4>
<pre>public&nbsp;boolean&nbsp;hasNewValue()</pre>
<div class="block">Gets flag indicating whether cache entry has new value in case if
 we only have new value in serialized form in which case <a href="../../../../org/apache/ignite/events/CacheEvent.html#newValue()"><code>newValue()</code></a>
 will return <code>null</code>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Flag indicating whether there is new value associated with this event.</dd></dl>
</li>
</ul>
<a name="subjectId()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subjectId</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;subjectId()</pre>
<div class="block">Gets security subject ID initiated this cache event, if available. This property is available only for
 <a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_OBJECT_PUT"><code>EventType.EVT_CACHE_OBJECT_PUT</code></a>, <a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_OBJECT_REMOVED"><code>EventType.EVT_CACHE_OBJECT_REMOVED</code></a> and
 <a href="../../../../org/apache/ignite/events/EventType.html#EVT_CACHE_OBJECT_READ"><code>EventType.EVT_CACHE_OBJECT_READ</code></a> cache events.
 <p>
 Subject ID will be set either to nodeId initiated cache update or read or client ID initiated
 cache update or read.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Subject ID.</dd></dl>
</li>
</ul>
<a name="closureClassName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>closureClassName</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;closureClassName()</pre>
<div class="block">Gets closure class name (applicable only for TRANSFORM operations).</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Closure class name.</dd></dl>
</li>
</ul>
<a name="taskName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>taskName</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;taskName()</pre>
<div class="block">Gets task name if cache event was caused by an operation initiated within task execution.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Task name.</dd></dl>
</li>
</ul>
<a name="shortDisplay()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shortDisplay</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;shortDisplay()</pre>
<div class="block">Gets a shortened version of <code>toString()</code> result. Suitable for humans to read.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../org/apache/ignite/events/Event.html#shortDisplay()">shortDisplay</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a></code></dd>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../org/apache/ignite/events/EventAdapter.html#shortDisplay()">shortDisplay</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/ignite/events/EventAdapter.html" title="class in org.apache.ignite.events">EventAdapter</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>Shortened version of <code>toString()</code> result.</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/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../org/apache/ignite/events/EventAdapter.html#toString()">toString</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/ignite/events/EventAdapter.html" title="class in org.apache.ignite.events">EventAdapter</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><a href="#skip-navbar_bottom" title="Skip navigation links"></a><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/CacheEvent.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 class="aboutLanguage"><em>Apache Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li><a href="../../../../org/apache/ignite/events/CacheQueryExecutedEvent.html" title="class in org.apache.ignite.events"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/ignite/events/CacheEvent.html" target="_top">Frames</a></li>
<li><a href="CacheEvent.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All 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>Field&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>Field&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://incubator.apache.org/projects/ignite.html"><nobr>2015 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>                                             <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>                                         </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>Apache Ignite Fabric</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             ver. <strong>1.0.0-RC3</strong>                                                         </td>                                                     </tr>                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Release Date</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             March 24 2015                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                     </tr>                                     </table></small></p>
<!--FOOTER--><script type='text/javascript'>SyntaxHighlighter.all();dp.SyntaxHighlighter.HighlightAll('code');</script>
</body>

</html>
