jaxp/src/com/sun/org/apache/xpath/internal/objects/DTMXRTreeFrag.java
author joehw
Thu, 12 Apr 2012 08:38:26 -0700
changeset 12457 c348e06f0e82
parent 6 jaxp/src/share/classes/com/sun/org/apache/xpath/internal/objects/DTMXRTreeFrag.java@7f561c08de6b
permissions -rw-r--r--
7160496: Rename JDK8 JAXP source directory Summary: moving src/share/classes to src Reviewed-by: ohair
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6
7f561c08de6b Initial load
duke
parents:
diff changeset
     1
/*
7f561c08de6b Initial load
duke
parents:
diff changeset
     2
 * reserved comment block
7f561c08de6b Initial load
duke
parents:
diff changeset
     3
 * DO NOT REMOVE OR ALTER!
7f561c08de6b Initial load
duke
parents:
diff changeset
     4
 */
7f561c08de6b Initial load
duke
parents:
diff changeset
     5
/*
7f561c08de6b Initial load
duke
parents:
diff changeset
     6
 * Copyright 1999-2004 The Apache Software Foundation.
7f561c08de6b Initial load
duke
parents:
diff changeset
     7
 *
7f561c08de6b Initial load
duke
parents:
diff changeset
     8
 * Licensed under the Apache License, Version 2.0 (the "License");
7f561c08de6b Initial load
duke
parents:
diff changeset
     9
 * you may not use this file except in compliance with the License.
7f561c08de6b Initial load
duke
parents:
diff changeset
    10
 * You may obtain a copy of the License at
7f561c08de6b Initial load
duke
parents:
diff changeset
    11
 *
7f561c08de6b Initial load
duke
parents:
diff changeset
    12
 *     http://www.apache.org/licenses/LICENSE-2.0
7f561c08de6b Initial load
duke
parents:
diff changeset
    13
 *
7f561c08de6b Initial load
duke
parents:
diff changeset
    14
 * Unless required by applicable law or agreed to in writing, software
7f561c08de6b Initial load
duke
parents:
diff changeset
    15
 * distributed under the License is distributed on an "AS IS" BASIS,
7f561c08de6b Initial load
duke
parents:
diff changeset
    16
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
7f561c08de6b Initial load
duke
parents:
diff changeset
    17
 * See the License for the specific language governing permissions and
7f561c08de6b Initial load
duke
parents:
diff changeset
    18
 * limitations under the License.
7f561c08de6b Initial load
duke
parents:
diff changeset
    19
 */
7f561c08de6b Initial load
duke
parents:
diff changeset
    20
7f561c08de6b Initial load
duke
parents:
diff changeset
    21
package com.sun.org.apache.xpath.internal.objects;
7f561c08de6b Initial load
duke
parents:
diff changeset
    22
7f561c08de6b Initial load
duke
parents:
diff changeset
    23
import com.sun.org.apache.xml.internal.dtm.DTM;
7f561c08de6b Initial load
duke
parents:
diff changeset
    24
import com.sun.org.apache.xpath.internal.XPathContext;
7f561c08de6b Initial load
duke
parents:
diff changeset
    25
/*
7f561c08de6b Initial load
duke
parents:
diff changeset
    26
 *
7f561c08de6b Initial load
duke
parents:
diff changeset
    27
 * @author igorh
7f561c08de6b Initial load
duke
parents:
diff changeset
    28
 *
7f561c08de6b Initial load
duke
parents:
diff changeset
    29
 * Simple wrapper to DTM and XPathContext objects.
7f561c08de6b Initial load
duke
parents:
diff changeset
    30
 * Used in XRTreeFrag for caching references to the objects.
7f561c08de6b Initial load
duke
parents:
diff changeset
    31
 */
7f561c08de6b Initial load
duke
parents:
diff changeset
    32
 public final class DTMXRTreeFrag {
7f561c08de6b Initial load
duke
parents:
diff changeset
    33
  private DTM m_dtm;
7f561c08de6b Initial load
duke
parents:
diff changeset
    34
  private int m_dtmIdentity = DTM.NULL;
7f561c08de6b Initial load
duke
parents:
diff changeset
    35
  private XPathContext m_xctxt;
7f561c08de6b Initial load
duke
parents:
diff changeset
    36
7f561c08de6b Initial load
duke
parents:
diff changeset
    37
  public DTMXRTreeFrag(int dtmIdentity, XPathContext xctxt){
7f561c08de6b Initial load
duke
parents:
diff changeset
    38
      m_xctxt = xctxt;
7f561c08de6b Initial load
duke
parents:
diff changeset
    39
      m_dtmIdentity = dtmIdentity;
7f561c08de6b Initial load
duke
parents:
diff changeset
    40
      m_dtm = xctxt.getDTM(dtmIdentity);
7f561c08de6b Initial load
duke
parents:
diff changeset
    41
    }
7f561c08de6b Initial load
duke
parents:
diff changeset
    42
7f561c08de6b Initial load
duke
parents:
diff changeset
    43
  public final void destruct(){
7f561c08de6b Initial load
duke
parents:
diff changeset
    44
    m_dtm = null;
7f561c08de6b Initial load
duke
parents:
diff changeset
    45
    m_xctxt = null;
7f561c08de6b Initial load
duke
parents:
diff changeset
    46
 }
7f561c08de6b Initial load
duke
parents:
diff changeset
    47
7f561c08de6b Initial load
duke
parents:
diff changeset
    48
final  DTM getDTM(){return m_dtm;}
7f561c08de6b Initial load
duke
parents:
diff changeset
    49
public final  int getDTMIdentity(){return m_dtmIdentity;}
7f561c08de6b Initial load
duke
parents:
diff changeset
    50
final  XPathContext getXPathContext(){return m_xctxt;}
7f561c08de6b Initial load
duke
parents:
diff changeset
    51
7f561c08de6b Initial load
duke
parents:
diff changeset
    52
public final int hashCode() { return m_dtmIdentity; }
7f561c08de6b Initial load
duke
parents:
diff changeset
    53
public final boolean equals(Object obj) {
7f561c08de6b Initial load
duke
parents:
diff changeset
    54
   if (obj instanceof DTMXRTreeFrag) {
7f561c08de6b Initial load
duke
parents:
diff changeset
    55
       return (m_dtmIdentity == ((DTMXRTreeFrag)obj).getDTMIdentity());
7f561c08de6b Initial load
duke
parents:
diff changeset
    56
   }
7f561c08de6b Initial load
duke
parents:
diff changeset
    57
   return false;
7f561c08de6b Initial load
duke
parents:
diff changeset
    58
 }
7f561c08de6b Initial load
duke
parents:
diff changeset
    59
7f561c08de6b Initial load
duke
parents:
diff changeset
    60
}