mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

smaguin
26.41.2008 3028da7d20b0e76c08b385a475b3c26e5ca8f23c
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
112
113
114
115
116
117
118
119
120
121
122
123
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE stax SYSTEM "../../../../shared/stax.dtd">
<!--
 ! CDDL HEADER START
 !
 ! The contents of this file are subject to the terms of the
 ! Common Development and Distribution License, Version 1.0 only
 ! (the "License").  You may not use this file except in compliance
 ! with the License.
 !
 ! You can obtain a copy of the license at
 ! trunk/opends/resource/legal-notices/OpenDS.LICENSE
 ! or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 ! See the License for the specific language governing permissions
 ! and limitations under the License.
 !
 ! When distributing Covered Code, include this CDDL HEADER in each
 ! file and include the License file at
 ! trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 ! add the following below this CDDL HEADER, with the fields enclosed
 ! by brackets "[]" replaced with your own identifying information:
 !      Portions Copyright [yyyy] [name of copyright owner]
 !
 ! CDDL HEADER END
 !
 !      Copyright 2008 Sun Microsystems, Inc.
 ! -->
<stax>
 
  <!-- ************************************************************ -->
  <function name="verdict4OpendsInstance" scope="local">
    <function-map-args>
      <function-arg-def name="instance" type="required">
      </function-arg-def>
      <function-arg-def name="instances" type="required">
        <function-arg-description>
          opends instances objects list
        </function-arg-description>
      </function-arg-def>
      <function-arg-def name="suffix" type="required">
      </function-arg-def>
      <function-arg-def name="fileFd" type="required">
      </function-arg-def>
    </function-map-args>
    
    <sequence>
      <script>
        _errNum = 0
      </script>
      
      <!--==== Check server is alive =========-->
      <call function="'isAlive'">
        { 'location'         : instance.getHost(),
          'noOfLoops'        : 1,
          'noOfMilliSeconds' : 2000,
          'dsPath'           : instance.getInstallDir(),
          'dsInstanceHost'   : instance.getHost(),
          'dsInstancePort'   : instance.getLDAPPort(),
          'fileFd'           : fileFd
        }
      </call>
      <script>isAliveResult = STAXResult</script>
      <if expr="isAliveResult == FALSE">
        <sequence>
          <call function="'writeMessage'">
            { 
              'content' : 'Server does not responding',
              'fileFd'  : fileFd
            }
          </call>
          <script> _errNum +=  1 </script>
        </sequence>
      </if>
      
      
      <!--==== Check replication synchronization =========-->
      <if expr="len(instances) > 1">
        <sequence>
          <call function="'checkOpendsReplication'">
              {
                'instance'  : instance,
                'instances' : instances,
                'suffix'    : suffix,
                'fileFd'    : fileFd
              }
          </call>
          <script> _errNum += STAXResult </script>
        </sequence>
      </if>
      
      
      <!--==== Compare entries =========-->
      <call function="'verifyTrees'">
        {
          'location'   : instance.getHost(),
          'instance'   : instance,
          'instances'  : instances,
          'suffixDn'   : suffix.getSuffixDn(),
          'filePrefix' : 'verdict',
          'fileFd'     : fileFd
        }
      </call>
      <if expr="STAXResult[0] == FALSE">
        <script> _errNum += 1 </script>
      </if>
      
      
      <!--== Check error/access logs =========-->
      <call function="'checkLogs'">
        {
          'location'   : instance.getHost(),
          'installDir' : instance.getInstallDir(),
          'fileFd'     : fileFd
        }
      </call>
      <script> _errNum += STAXResult </script>
      
      
      <return> _errNum </return>
    </sequence>
  </function>
  
</stax>