blob: 6f29d43aeeacf15f6153a3d9b4372f8369b1449c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
/*-
* See the file LICENSE for redistribution information.
*
* Copyright (c) 2001-2009 Oracle. All rights reserved.
*
* $Id$
*/
package db.repquote;
import java.util.Vector;
import com.sleepycat.db.ReplicationHostAddress;
import com.sleepycat.db.ReplicationManagerAckPolicy;
import com.sleepycat.db.ReplicationManagerStartPolicy;
import com.sleepycat.db.ReplicationManagerSiteInfo;
public class RepConfig
{
/* Constant values used in the RepQuote application. */
public static final String progname = "RepQuoteExample";
public static final int CACHESIZE = 10 * 1024 * 1024;
public static final int SLEEPTIME = 5000;
/* Member variables containing configuration information. */
public ReplicationManagerAckPolicy ackPolicy;
public boolean bulk; /* Whether bulk transfer should be performed. */
public String home; /* The home directory for rep files. */
public Vector otherHosts; /* Stores an optional set of "other" hosts. */
public int priority; /* Priority within the replication group. */
public ReplicationManagerStartPolicy startPolicy;
public ReplicationHostAddress thisHost; /* Host address to listen to. */
/* Optional value specifying the # of sites in the replication group. */
public int totalSites;
public boolean verbose;
/* Member variables used internally. */
private int currOtherHost;
private boolean gotListenAddress;
public RepConfig()
{
startPolicy = ReplicationManagerStartPolicy.REP_ELECTION;
home = "";
gotListenAddress = false;
totalSites = 0;
priority = 100;
verbose = false;
currOtherHost = 0;
thisHost = new ReplicationHostAddress();
otherHosts = new Vector();
ackPolicy = ReplicationManagerAckPolicy.QUORUM;
bulk = false;
}
public java.io.File getHome()
{
return new java.io.File(home);
}
public void setThisHost(String host, int port)
{
gotListenAddress = true;
thisHost.port = port;
thisHost.host = host;
}
public ReplicationHostAddress getThisHost()
{
if (!gotListenAddress)
System.err.println("Warning: no host specified, returning default.");
return thisHost;
}
public boolean gotListenAddress() {
return gotListenAddress;
}
public void addOtherHost(String host, int port, boolean peer)
{
ReplicationHostAddress newInfo =
new ReplicationHostAddress(host, port);
RepRemoteHost newHost = new RepRemoteHost(newInfo, peer);
otherHosts.add(newHost);
}
public RepRemoteHost getFirstOtherHost()
{
currOtherHost = 0;
if (otherHosts.size() == 0)
return null;
return (RepRemoteHost)otherHosts.get(currOtherHost);
}
public RepRemoteHost getNextOtherHost()
{
currOtherHost++;
if (currOtherHost >= otherHosts.size())
return null;
return (RepRemoteHost)otherHosts.get(currOtherHost);
}
public RepRemoteHost getOtherHost(int i)
{
if (i >= otherHosts.size())
return null;
return (RepRemoteHost)otherHosts.get(i);
}
}
|