updated length test in writeLockState and fixed last of the compile issues

Committer:
roywant
Date:
Mon Sep 19 00:59:11 2016 +0000
Revision:
0:ed0152b5c495
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
roywant 0:ed0152b5c495 1 Apache License
roywant 0:ed0152b5c495 2 Version 2.0, January 2004
roywant 0:ed0152b5c495 3 http://www.apache.org/licenses/
roywant 0:ed0152b5c495 4
roywant 0:ed0152b5c495 5 TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
roywant 0:ed0152b5c495 6
roywant 0:ed0152b5c495 7 1. Definitions.
roywant 0:ed0152b5c495 8
roywant 0:ed0152b5c495 9 "License" shall mean the terms and conditions for use, reproduction,
roywant 0:ed0152b5c495 10 and distribution as defined by Sections 1 through 9 of this document.
roywant 0:ed0152b5c495 11
roywant 0:ed0152b5c495 12 "Licensor" shall mean the copyright owner or entity authorized by
roywant 0:ed0152b5c495 13 the copyright owner that is granting the License.
roywant 0:ed0152b5c495 14
roywant 0:ed0152b5c495 15 "Legal Entity" shall mean the union of the acting entity and all
roywant 0:ed0152b5c495 16 other entities that control, are controlled by, or are under common
roywant 0:ed0152b5c495 17 control with that entity. For the purposes of this definition,
roywant 0:ed0152b5c495 18 "control" means (i) the power, direct or indirect, to cause the
roywant 0:ed0152b5c495 19 direction or management of such entity, whether by contract or
roywant 0:ed0152b5c495 20 otherwise, or (ii) ownership of fifty percent (50%) or more of the
roywant 0:ed0152b5c495 21 outstanding shares, or (iii) beneficial ownership of such entity.
roywant 0:ed0152b5c495 22
roywant 0:ed0152b5c495 23 "You" (or "Your") shall mean an individual or Legal Entity
roywant 0:ed0152b5c495 24 exercising permissions granted by this License.
roywant 0:ed0152b5c495 25
roywant 0:ed0152b5c495 26 "Source" form shall mean the preferred form for making modifications,
roywant 0:ed0152b5c495 27 including but not limited to software source code, documentation
roywant 0:ed0152b5c495 28 source, and configuration files.
roywant 0:ed0152b5c495 29
roywant 0:ed0152b5c495 30 "Object" form shall mean any form resulting from mechanical
roywant 0:ed0152b5c495 31 transformation or translation of a Source form, including but
roywant 0:ed0152b5c495 32 not limited to compiled object code, generated documentation,
roywant 0:ed0152b5c495 33 and conversions to other media types.
roywant 0:ed0152b5c495 34
roywant 0:ed0152b5c495 35 "Work" shall mean the work of authorship, whether in Source or
roywant 0:ed0152b5c495 36 Object form, made available under the License, as indicated by a
roywant 0:ed0152b5c495 37 copyright notice that is included in or attached to the work
roywant 0:ed0152b5c495 38 (an example is provided in the Appendix below).
roywant 0:ed0152b5c495 39
roywant 0:ed0152b5c495 40 "Derivative Works" shall mean any work, whether in Source or Object
roywant 0:ed0152b5c495 41 form, that is based on (or derived from) the Work and for which the
roywant 0:ed0152b5c495 42 editorial revisions, annotations, elaborations, or other modifications
roywant 0:ed0152b5c495 43 represent, as a whole, an original work of authorship. For the purposes
roywant 0:ed0152b5c495 44 of this License, Derivative Works shall not include works that remain
roywant 0:ed0152b5c495 45 separable from, or merely link (or bind by name) to the interfaces of,
roywant 0:ed0152b5c495 46 the Work and Derivative Works thereof.
roywant 0:ed0152b5c495 47
roywant 0:ed0152b5c495 48 "Contribution" shall mean any work of authorship, including
roywant 0:ed0152b5c495 49 the original version of the Work and any modifications or additions
roywant 0:ed0152b5c495 50 to that Work or Derivative Works thereof, that is intentionally
roywant 0:ed0152b5c495 51 submitted to Licensor for inclusion in the Work by the copyright owner
roywant 0:ed0152b5c495 52 or by an individual or Legal Entity authorized to submit on behalf of
roywant 0:ed0152b5c495 53 the copyright owner. For the purposes of this definition, "submitted"
roywant 0:ed0152b5c495 54 means any form of electronic, verbal, or written communication sent
roywant 0:ed0152b5c495 55 to the Licensor or its representatives, including but not limited to
roywant 0:ed0152b5c495 56 communication on electronic mailing lists, source code control systems,
roywant 0:ed0152b5c495 57 and issue tracking systems that are managed by, or on behalf of, the
roywant 0:ed0152b5c495 58 Licensor for the purpose of discussing and improving the Work, but
roywant 0:ed0152b5c495 59 excluding communication that is conspicuously marked or otherwise
roywant 0:ed0152b5c495 60 designated in writing by the copyright owner as "Not a Contribution."
roywant 0:ed0152b5c495 61
roywant 0:ed0152b5c495 62 "Contributor" shall mean Licensor and any individual or Legal Entity
roywant 0:ed0152b5c495 63 on behalf of whom a Contribution has been received by Licensor and
roywant 0:ed0152b5c495 64 subsequently incorporated within the Work.
roywant 0:ed0152b5c495 65
roywant 0:ed0152b5c495 66 2. Grant of Copyright License. Subject to the terms and conditions of
roywant 0:ed0152b5c495 67 this License, each Contributor hereby grants to You a perpetual,
roywant 0:ed0152b5c495 68 worldwide, non-exclusive, no-charge, royalty-free, irrevocable
roywant 0:ed0152b5c495 69 copyright license to reproduce, prepare Derivative Works of,
roywant 0:ed0152b5c495 70 publicly display, publicly perform, sublicense, and distribute the
roywant 0:ed0152b5c495 71 Work and such Derivative Works in Source or Object form.
roywant 0:ed0152b5c495 72
roywant 0:ed0152b5c495 73 3. Grant of Patent License. Subject to the terms and conditions of
roywant 0:ed0152b5c495 74 this License, each Contributor hereby grants to You a perpetual,
roywant 0:ed0152b5c495 75 worldwide, non-exclusive, no-charge, royalty-free, irrevocable
roywant 0:ed0152b5c495 76 (except as stated in this section) patent license to make, have made,
roywant 0:ed0152b5c495 77 use, offer to sell, sell, import, and otherwise transfer the Work,
roywant 0:ed0152b5c495 78 where such license applies only to those patent claims licensable
roywant 0:ed0152b5c495 79 by such Contributor that are necessarily infringed by their
roywant 0:ed0152b5c495 80 Contribution(s) alone or by combination of their Contribution(s)
roywant 0:ed0152b5c495 81 with the Work to which such Contribution(s) was submitted. If You
roywant 0:ed0152b5c495 82 institute patent litigation against any entity (including a
roywant 0:ed0152b5c495 83 cross-claim or counterclaim in a lawsuit) alleging that the Work
roywant 0:ed0152b5c495 84 or a Contribution incorporated within the Work constitutes direct
roywant 0:ed0152b5c495 85 or contributory patent infringement, then any patent licenses
roywant 0:ed0152b5c495 86 granted to You under this License for that Work shall terminate
roywant 0:ed0152b5c495 87 as of the date such litigation is filed.
roywant 0:ed0152b5c495 88
roywant 0:ed0152b5c495 89 4. Redistribution. You may reproduce and distribute copies of the
roywant 0:ed0152b5c495 90 Work or Derivative Works thereof in any medium, with or without
roywant 0:ed0152b5c495 91 modifications, and in Source or Object form, provided that You
roywant 0:ed0152b5c495 92 meet the following conditions:
roywant 0:ed0152b5c495 93
roywant 0:ed0152b5c495 94 (a) You must give any other recipients of the Work or
roywant 0:ed0152b5c495 95 Derivative Works a copy of this License; and
roywant 0:ed0152b5c495 96
roywant 0:ed0152b5c495 97 (b) You must cause any modified files to carry prominent notices
roywant 0:ed0152b5c495 98 stating that You changed the files; and
roywant 0:ed0152b5c495 99
roywant 0:ed0152b5c495 100 (c) You must retain, in the Source form of any Derivative Works
roywant 0:ed0152b5c495 101 that You distribute, all copyright, patent, trademark, and
roywant 0:ed0152b5c495 102 attribution notices from the Source form of the Work,
roywant 0:ed0152b5c495 103 excluding those notices that do not pertain to any part of
roywant 0:ed0152b5c495 104 the Derivative Works; and
roywant 0:ed0152b5c495 105
roywant 0:ed0152b5c495 106 (d) If the Work includes a "NOTICE" text file as part of its
roywant 0:ed0152b5c495 107 distribution, then any Derivative Works that You distribute must
roywant 0:ed0152b5c495 108 include a readable copy of the attribution notices contained
roywant 0:ed0152b5c495 109 within such NOTICE file, excluding those notices that do not
roywant 0:ed0152b5c495 110 pertain to any part of the Derivative Works, in at least one
roywant 0:ed0152b5c495 111 of the following places: within a NOTICE text file distributed
roywant 0:ed0152b5c495 112 as part of the Derivative Works; within the Source form or
roywant 0:ed0152b5c495 113 documentation, if provided along with the Derivative Works; or,
roywant 0:ed0152b5c495 114 within a display generated by the Derivative Works, if and
roywant 0:ed0152b5c495 115 wherever such third-party notices normally appear. The contents
roywant 0:ed0152b5c495 116 of the NOTICE file are for informational purposes only and
roywant 0:ed0152b5c495 117 do not modify the License. You may add Your own attribution
roywant 0:ed0152b5c495 118 notices within Derivative Works that You distribute, alongside
roywant 0:ed0152b5c495 119 or as an addendum to the NOTICE text from the Work, provided
roywant 0:ed0152b5c495 120 that such additional attribution notices cannot be construed
roywant 0:ed0152b5c495 121 as modifying the License.
roywant 0:ed0152b5c495 122
roywant 0:ed0152b5c495 123 You may add Your own copyright statement to Your modifications and
roywant 0:ed0152b5c495 124 may provide additional or different license terms and conditions
roywant 0:ed0152b5c495 125 for use, reproduction, or distribution of Your modifications, or
roywant 0:ed0152b5c495 126 for any such Derivative Works as a whole, provided Your use,
roywant 0:ed0152b5c495 127 reproduction, and distribution of the Work otherwise complies with
roywant 0:ed0152b5c495 128 the conditions stated in this License.
roywant 0:ed0152b5c495 129
roywant 0:ed0152b5c495 130 5. Submission of Contributions. Unless You explicitly state otherwise,
roywant 0:ed0152b5c495 131 any Contribution intentionally submitted for inclusion in the Work
roywant 0:ed0152b5c495 132 by You to the Licensor shall be under the terms and conditions of
roywant 0:ed0152b5c495 133 this License, without any additional terms or conditions.
roywant 0:ed0152b5c495 134 Notwithstanding the above, nothing herein shall supersede or modify
roywant 0:ed0152b5c495 135 the terms of any separate license agreement you may have executed
roywant 0:ed0152b5c495 136 with Licensor regarding such Contributions.
roywant 0:ed0152b5c495 137
roywant 0:ed0152b5c495 138 6. Trademarks. This License does not grant permission to use the trade
roywant 0:ed0152b5c495 139 names, trademarks, service marks, or product names of the Licensor,
roywant 0:ed0152b5c495 140 except as required for reasonable and customary use in describing the
roywant 0:ed0152b5c495 141 origin of the Work and reproducing the content of the NOTICE file.
roywant 0:ed0152b5c495 142
roywant 0:ed0152b5c495 143 7. Disclaimer of Warranty. Unless required by applicable law or
roywant 0:ed0152b5c495 144 agreed to in writing, Licensor provides the Work (and each
roywant 0:ed0152b5c495 145 Contributor provides its Contributions) on an "AS IS" BASIS,
roywant 0:ed0152b5c495 146 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
roywant 0:ed0152b5c495 147 implied, including, without limitation, any warranties or conditions
roywant 0:ed0152b5c495 148 of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
roywant 0:ed0152b5c495 149 PARTICULAR PURPOSE. You are solely responsible for determining the
roywant 0:ed0152b5c495 150 appropriateness of using or redistributing the Work and assume any
roywant 0:ed0152b5c495 151 risks associated with Your exercise of permissions under this License.
roywant 0:ed0152b5c495 152
roywant 0:ed0152b5c495 153 8. Limitation of Liability. In no event and under no legal theory,
roywant 0:ed0152b5c495 154 whether in tort (including negligence), contract, or otherwise,
roywant 0:ed0152b5c495 155 unless required by applicable law (such as deliberate and grossly
roywant 0:ed0152b5c495 156 negligent acts) or agreed to in writing, shall any Contributor be
roywant 0:ed0152b5c495 157 liable to You for damages, including any direct, indirect, special,
roywant 0:ed0152b5c495 158 incidental, or consequential damages of any character arising as a
roywant 0:ed0152b5c495 159 result of this License or out of the use or inability to use the
roywant 0:ed0152b5c495 160 Work (including but not limited to damages for loss of goodwill,
roywant 0:ed0152b5c495 161 work stoppage, computer failure or malfunction, or any and all
roywant 0:ed0152b5c495 162 other commercial damages or losses), even if such Contributor
roywant 0:ed0152b5c495 163 has been advised of the possibility of such damages.
roywant 0:ed0152b5c495 164
roywant 0:ed0152b5c495 165 9. Accepting Warranty or Additional Liability. While redistributing
roywant 0:ed0152b5c495 166 the Work or Derivative Works thereof, You may choose to offer,
roywant 0:ed0152b5c495 167 and charge a fee for, acceptance of support, warranty, indemnity,
roywant 0:ed0152b5c495 168 or other liability obligations and/or rights consistent with this
roywant 0:ed0152b5c495 169 License. However, in accepting such obligations, You may act only
roywant 0:ed0152b5c495 170 on Your own behalf and on Your sole responsibility, not on behalf
roywant 0:ed0152b5c495 171 of any other Contributor, and only if You agree to indemnify,
roywant 0:ed0152b5c495 172 defend, and hold each Contributor harmless for any liability
roywant 0:ed0152b5c495 173 incurred by, or claims asserted against, such Contributor by reason
roywant 0:ed0152b5c495 174 of your accepting any such warranty or additional liability.
roywant 0:ed0152b5c495 175
roywant 0:ed0152b5c495 176 END OF TERMS AND CONDITIONS
roywant 0:ed0152b5c495 177
roywant 0:ed0152b5c495 178 APPENDIX: How to apply the Apache License to your work.
roywant 0:ed0152b5c495 179
roywant 0:ed0152b5c495 180 To apply the Apache License to your work, attach the following
roywant 0:ed0152b5c495 181 boilerplate notice, with the fields enclosed by brackets "{}"
roywant 0:ed0152b5c495 182 replaced with your own identifying information. (Don't include
roywant 0:ed0152b5c495 183 the brackets!) The text should be enclosed in the appropriate
roywant 0:ed0152b5c495 184 comment syntax for the file format. We also recommend that a
roywant 0:ed0152b5c495 185 file or class name and description of purpose be included on the
roywant 0:ed0152b5c495 186 same "printed page" as the copyright notice for easier
roywant 0:ed0152b5c495 187 identification within third-party archives.
roywant 0:ed0152b5c495 188
roywant 0:ed0152b5c495 189 Copyright {yyyy} {name of copyright owner}
roywant 0:ed0152b5c495 190
roywant 0:ed0152b5c495 191 Licensed under the Apache License, Version 2.0 (the "License");
roywant 0:ed0152b5c495 192 you may not use this file except in compliance with the License.
roywant 0:ed0152b5c495 193 You may obtain a copy of the License at
roywant 0:ed0152b5c495 194
roywant 0:ed0152b5c495 195 http://www.apache.org/licenses/LICENSE-2.0
roywant 0:ed0152b5c495 196
roywant 0:ed0152b5c495 197 Unless required by applicable law or agreed to in writing, software
roywant 0:ed0152b5c495 198 distributed under the License is distributed on an "AS IS" BASIS,
roywant 0:ed0152b5c495 199 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
roywant 0:ed0152b5c495 200 See the License for the specific language governing permissions and
roywant 0:ed0152b5c495 201 limitations under the License.