summaryrefslogtreecommitdiff
path: root/csharp/SequenceStats.cs
blob: bcc39d67c781f17a64e3f4dad4836ba3f9d9b87d (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
/*-
 * See the file LICENSE for redistribution information.
 *
 * Copyright (c) 2009 Oracle.  All rights reserved.
 *
 */
using System;
using System.Collections.Generic;
using System.Text;

namespace BerkeleyDB {
    /// <summary>
    /// Statistical information about a Sequence
    /// </summary>
    public class SequenceStats {
        private Internal.SequenceStatStruct st;
        internal SequenceStats(Internal.SequenceStatStruct stats) {
            st = stats;
        }

        /// <summary>
        /// Cache size. 
        /// </summary>
        public int CacheSize { get { return st.st_cache_size; } }
        /// <summary>
        /// Current cached value. 
        /// </summary>
        public long CachedValue { get { return st.st_value; } }
        /// <summary>
        /// Flag value. 
        /// </summary>
        public uint Flags { get { return st.st_flags; } }
        /// <summary>
        /// Last cached value. 
        /// </summary>
        public long LastCachedValue { get { return st.st_last_value; } }
        /// <summary>
        /// Sequence lock granted w/o wait. 
        /// </summary>
        public ulong LockWait { get { return st.st_wait; } }
        /// <summary>
        /// Sequence lock granted after wait. 
        /// </summary>
        public ulong LockNoWait { get { return st.st_nowait; } }
        /// <summary>
        /// Maximum value. 
        /// </summary>
        public long Max { get { return st.st_max; } }
        /// <summary>
        /// Minimum value. 
        /// </summary>
        public long Min { get { return st.st_min; } }
        /// <summary>
        /// Current value in db. 
        /// </summary>
        public long StoredValue { get { return st.st_current; } }
    }
}