Project

General

Profile

1
/**
2
 *  '$RCSfile$'
3
 *    Purpose: A Class that represents all node info from the database
4
 *  Copyright: 2000 Regents of the University of California and the
5
 *             National Center for Ecological Analysis and Synthesis
6
 *    Authors: Matt Jones
7
 *    Release: @release@
8
 *
9
 *   '$Author: tao $'
10
 *     '$Date: 2003-04-12 20:09:12 -0700 (Sat, 12 Apr 2003) $'
11
 * '$Revision: 1548 $'
12
 *
13
 * This program is free software; you can redistribute it and/or modify
14
 * it under the terms of the GNU General Public License as published by
15
 * the Free Software Foundation; either version 2 of the License, or
16
 * (at your option) any later version.
17
 *
18
 * This program is distributed in the hope that it will be useful,
19
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21
 * GNU General Public License for more details.
22
 *
23
 * You should have received a copy of the GNU General Public License
24
 * along with this program; if not, write to the Free Software
25
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
26
 */
27

    
28
package edu.ucsb.nceas.metacat;
29

    
30
/**
31
 * A utility class that encapsulates a node and its data
32
 */
33
public class NodeRecord {
34
  public long nodeid = -1;
35
  public long parentnodeid = -1;
36
  public long nodeindex = -1;
37
  public String nodename = null;
38
  public String nodeprefix = null;
39
  public String nodetype = null;
40
  public String nodedata = null;
41

    
42
  /**
43
   * Constructor
44
   */
45
  public NodeRecord(long nodeid, long parentnodeid, long nodeindex,
46
                    String nodetype, String nodename, String nodeprefix, 
47
                    String nodedata) {
48
    this.nodeid = nodeid;
49
    this.parentnodeid = parentnodeid;
50
    this.nodeindex = nodeindex;
51
    this.nodename = nodename;
52
    this.nodeprefix = nodeprefix;
53
    this.nodetype = nodetype;
54
    this.nodedata = nodedata;
55
  }
56
  
57
  /** Get functions*/
58
  public long getNodeId()
59
  {
60
    return nodeid;
61
  }
62
  
63
  public long getParentNodeId()
64
  {
65
    return parentnodeid;
66
  }
67
  
68
  public long getNodeIndex()
69
  {
70
    return nodeindex;
71
  }
72
  
73
  public String getNodeName()
74
  {
75
    return nodename;
76
  }
77
  
78
  public String getNodeType()
79
  {
80
    return nodetype;
81
  }
82
  
83
  public String getNodePrefix()
84
  {
85
    return nodeprefix;
86
  }
87
  
88
  public String getNodeData()
89
  {
90
    return nodedata;
91
  }
92
  
93
  /** Method compare two records */
94
  public boolean contentEquals(NodeRecord record)
95
  {
96
    boolean flag = true;
97
    MetaCatUtil.debugMessage("First nodetype: "+this.nodetype, 40);
98
    MetaCatUtil.debugMessage("Second nodetype: "+record.getNodeType(), 40);
99
    MetaCatUtil.debugMessage("First nodename: "+this.nodename, 40);
100
    MetaCatUtil.debugMessage("Second nodename: "+record.getNodeName(), 40);
101
    MetaCatUtil.debugMessage("First nodeprefix: "+this.nodeprefix, 40);
102
    MetaCatUtil.debugMessage("Second nodeprefix: "+record.getNodePrefix(), 40);
103
    MetaCatUtil.debugMessage("First nodedata: "+this.nodedata, 40);
104
    MetaCatUtil.debugMessage("Second nodedata: "+record.getNodeData(), 40);
105
    if ((this.nodename == null && record.getNodeName() != null) ||
106
        (this.nodename != null && record.getNodeName() == null) ||
107
        (this.nodename != null && record.getNodeName() != null &&
108
        !(this.nodename).equals(record.getNodeName())))
109
    {
110
      //compare nodename
111
      flag = false;
112
    }
113
    else if ((this.nodetype == null && record.getNodeType() != null) ||
114
             (this.nodetype != null && record.getNodeType() == null) ||
115
             (this.nodetype != null && record.getNodeType() != null &&
116
             !(this.nodetype).equals(record.getNodeType())))
117
    {
118
      // compare node type
119
      flag = false;
120
    }
121
    else if ((this.nodeprefix == null && record.getNodePrefix() != null) ||
122
             (this.nodeprefix != null && record.getNodePrefix() == null) ||
123
             (this.nodeprefix != null && record.getNodePrefix() != null &&
124
             !(this.nodeprefix).equals(record.getNodePrefix())))
125
    {
126
      // compare node prefix
127
      flag = false;
128
    }
129
    else if ((this.nodedata == null && record.getNodeData() != null) ||
130
             (this.nodedata != null && record.getNodeData() == null) ||
131
             (this.nodedata != null && record.getNodeData() != null &&
132
             !(this.nodedata).equals(record.getNodeData())))
133
    {
134
      // compare node data
135
      flag = false;
136
    }
137
    return flag;
138
    
139
  }//contentEquals
140
}
(47-47/62)