asciidoctor-diagram 1.0.1-java → 1.1.0-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.adoc +22 -0
  3. data/README.adoc +7 -6
  4. data/examples/Gemfile +3 -0
  5. data/examples/README.adoc +6 -0
  6. data/examples/build_example.rb +9 -0
  7. data/examples/design.adoc +78 -0
  8. data/examples/features.adoc +164 -0
  9. data/lib/asciidoctor-diagram.rb +1 -0
  10. data/lib/asciidoctor-diagram/ditaa.rb +1 -0
  11. data/lib/asciidoctor-diagram/ditaa/extension.rb +23 -50
  12. data/lib/asciidoctor-diagram/ditaa/generator.rb +31 -0
  13. data/lib/asciidoctor-diagram/graphviz.rb +8 -0
  14. data/lib/asciidoctor-diagram/graphviz/extension.rb +41 -0
  15. data/lib/asciidoctor-diagram/plantuml.rb +1 -0
  16. data/lib/asciidoctor-diagram/plantuml/extension.rb +33 -71
  17. data/lib/asciidoctor-diagram/plantuml/generator.rb +50 -0
  18. data/lib/asciidoctor-diagram/{binaryio.rb → util/binaryio.rb} +0 -0
  19. data/lib/asciidoctor-diagram/util/diagram.rb +198 -0
  20. data/lib/asciidoctor-diagram/{java.rb → util/java.rb} +0 -0
  21. data/lib/asciidoctor-diagram/{java_jruby.rb → util/java_jruby.rb} +0 -0
  22. data/lib/asciidoctor-diagram/{java_rjb.rb → util/java_rjb.rb} +0 -0
  23. data/lib/asciidoctor-diagram/{png.rb → util/png.rb} +0 -0
  24. data/lib/asciidoctor-diagram/util/svg.rb +46 -0
  25. data/lib/asciidoctor-diagram/version.rb +1 -1
  26. data/spec/ditaa_spec.rb +65 -0
  27. data/spec/graphviz_spec.rb +134 -0
  28. data/spec/plantuml_spec.rb +38 -0
  29. data/spec/test_helper.rb +1 -0
  30. metadata +32 -26
  31. data/.gitignore +0 -19
  32. data/.travis.yml +0 -10
  33. data/Gemfile +0 -4
  34. data/asciidoctor-diagram.gemspec +0 -30
  35. data/ditaamini-license.txt +0 -165
  36. data/lib/asciidoctor-diagram/diagram.rb +0 -111
  37. data/lib/asciidoctor-diagram/svg.rb +0 -18
  38. data/plantuml-license.txt +0 -202
data/.travis.yml DELETED
@@ -1,10 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - 1.9.3
4
- - 2.0.0
5
- - 2.1.0
6
- - jruby
7
-
8
- install:
9
- - sudo apt-get install -qq graphviz
10
- - bundle install
data/Gemfile DELETED
@@ -1,4 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in asciidoctor-diagram.gemspec
4
- gemspec
@@ -1,30 +0,0 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'asciidoctor-diagram/version'
5
-
6
- $platform ||= RUBY_PLATFORM[/java/] || 'ruby'
7
-
8
- Gem::Specification.new do |spec|
9
- spec.name = "asciidoctor-diagram"
10
- spec.version = Asciidoctor::Diagram::VERSION
11
- spec.authors = ["Pepijn Van Eeckhoudt"]
12
- spec.email = ["pepijn@vaneeckhoudt.net"]
13
- spec.description = %q{Asciidoctor diagramming extension}
14
- spec.summary = %q{An extension for asciidoctor that adds support for UML diagram generation using PlantUML}
15
- spec.platform = $platform
16
- spec.homepage = "https://github.com/asciidoctor/asciidoctor-diagram"
17
- spec.license = "MIT"
18
-
19
- spec.files = `git ls-files`.split($/)
20
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
21
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
22
- spec.require_paths = ["lib"]
23
-
24
- spec.add_development_dependency "bundler", "~> 1.3"
25
- spec.add_development_dependency "rake"
26
- spec.add_development_dependency "rspec"
27
-
28
- spec.add_runtime_dependency "asciidoctor", "~> 0.1.4"
29
- spec.add_runtime_dependency "rjb", "~> 1.4.9" unless $platform == 'java'
30
- end
@@ -1,165 +0,0 @@
1
- GNU LESSER GENERAL PUBLIC LICENSE
2
- Version 3, 29 June 2007
3
-
4
- Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
5
- Everyone is permitted to copy and distribute verbatim copies
6
- of this license document, but changing it is not allowed.
7
-
8
-
9
- This version of the GNU Lesser General Public License incorporates
10
- the terms and conditions of version 3 of the GNU General Public
11
- License, supplemented by the additional permissions listed below.
12
-
13
- 0. Additional Definitions.
14
-
15
- As used herein, "this License" refers to version 3 of the GNU Lesser
16
- General Public License, and the "GNU GPL" refers to version 3 of the GNU
17
- General Public License.
18
-
19
- "The Library" refers to a covered work governed by this License,
20
- other than an Application or a Combined Work as defined below.
21
-
22
- An "Application" is any work that makes use of an interface provided
23
- by the Library, but which is not otherwise based on the Library.
24
- Defining a subclass of a class defined by the Library is deemed a mode
25
- of using an interface provided by the Library.
26
-
27
- A "Combined Work" is a work produced by combining or linking an
28
- Application with the Library. The particular version of the Library
29
- with which the Combined Work was made is also called the "Linked
30
- Version".
31
-
32
- The "Minimal Corresponding Source" for a Combined Work means the
33
- Corresponding Source for the Combined Work, excluding any source code
34
- for portions of the Combined Work that, considered in isolation, are
35
- based on the Application, and not on the Linked Version.
36
-
37
- The "Corresponding Application Code" for a Combined Work means the
38
- object code and/or source code for the Application, including any data
39
- and utility programs needed for reproducing the Combined Work from the
40
- Application, but excluding the System Libraries of the Combined Work.
41
-
42
- 1. Exception to Section 3 of the GNU GPL.
43
-
44
- You may convey a covered work under sections 3 and 4 of this License
45
- without being bound by section 3 of the GNU GPL.
46
-
47
- 2. Conveying Modified Versions.
48
-
49
- If you modify a copy of the Library, and, in your modifications, a
50
- facility refers to a function or data to be supplied by an Application
51
- that uses the facility (other than as an argument passed when the
52
- facility is invoked), then you may convey a copy of the modified
53
- version:
54
-
55
- a) under this License, provided that you make a good faith effort to
56
- ensure that, in the event an Application does not supply the
57
- function or data, the facility still operates, and performs
58
- whatever part of its purpose remains meaningful, or
59
-
60
- b) under the GNU GPL, with none of the additional permissions of
61
- this License applicable to that copy.
62
-
63
- 3. Object Code Incorporating Material from Library Header Files.
64
-
65
- The object code form of an Application may incorporate material from
66
- a header file that is part of the Library. You may convey such object
67
- code under terms of your choice, provided that, if the incorporated
68
- material is not limited to numerical parameters, data structure
69
- layouts and accessors, or small macros, inline functions and templates
70
- (ten or fewer lines in length), you do both of the following:
71
-
72
- a) Give prominent notice with each copy of the object code that the
73
- Library is used in it and that the Library and its use are
74
- covered by this License.
75
-
76
- b) Accompany the object code with a copy of the GNU GPL and this license
77
- document.
78
-
79
- 4. Combined Works.
80
-
81
- You may convey a Combined Work under terms of your choice that,
82
- taken together, effectively do not restrict modification of the
83
- portions of the Library contained in the Combined Work and reverse
84
- engineering for debugging such modifications, if you also do each of
85
- the following:
86
-
87
- a) Give prominent notice with each copy of the Combined Work that
88
- the Library is used in it and that the Library and its use are
89
- covered by this License.
90
-
91
- b) Accompany the Combined Work with a copy of the GNU GPL and this license
92
- document.
93
-
94
- c) For a Combined Work that displays copyright notices during
95
- execution, include the copyright notice for the Library among
96
- these notices, as well as a reference directing the user to the
97
- copies of the GNU GPL and this license document.
98
-
99
- d) Do one of the following:
100
-
101
- 0) Convey the Minimal Corresponding Source under the terms of this
102
- License, and the Corresponding Application Code in a form
103
- suitable for, and under terms that permit, the user to
104
- recombine or relink the Application with a modified version of
105
- the Linked Version to produce a modified Combined Work, in the
106
- manner specified by section 6 of the GNU GPL for conveying
107
- Corresponding Source.
108
-
109
- 1) Use a suitable shared library mechanism for linking with the
110
- Library. A suitable mechanism is one that (a) uses at run time
111
- a copy of the Library already present on the user's computer
112
- system, and (b) will operate properly with a modified version
113
- of the Library that is interface-compatible with the Linked
114
- Version.
115
-
116
- e) Provide Installation Information, but only if you would otherwise
117
- be required to provide such information under section 6 of the
118
- GNU GPL, and only to the extent that such information is
119
- necessary to install and execute a modified version of the
120
- Combined Work produced by recombining or relinking the
121
- Application with a modified version of the Linked Version. (If
122
- you use option 4d0, the Installation Information must accompany
123
- the Minimal Corresponding Source and Corresponding Application
124
- Code. If you use option 4d1, you must provide the Installation
125
- Information in the manner specified by section 6 of the GNU GPL
126
- for conveying Corresponding Source.)
127
-
128
- 5. Combined Libraries.
129
-
130
- You may place library facilities that are a work based on the
131
- Library side by side in a single library together with other library
132
- facilities that are not Applications and are not covered by this
133
- License, and convey such a combined library under terms of your
134
- choice, if you do both of the following:
135
-
136
- a) Accompany the combined library with a copy of the same work based
137
- on the Library, uncombined with any other library facilities,
138
- conveyed under the terms of this License.
139
-
140
- b) Give prominent notice with the combined library that part of it
141
- is a work based on the Library, and explaining where to find the
142
- accompanying uncombined form of the same work.
143
-
144
- 6. Revised Versions of the GNU Lesser General Public License.
145
-
146
- The Free Software Foundation may publish revised and/or new versions
147
- of the GNU Lesser General Public License from time to time. Such new
148
- versions will be similar in spirit to the present version, but may
149
- differ in detail to address new problems or concerns.
150
-
151
- Each version is given a distinguishing version number. If the
152
- Library as you received it specifies that a certain numbered version
153
- of the GNU Lesser General Public License "or any later version"
154
- applies to it, you have the option of following the terms and
155
- conditions either of that published version or of any later version
156
- published by the Free Software Foundation. If the Library as you
157
- received it does not specify a version number of the GNU Lesser
158
- General Public License, you may choose any version of the GNU Lesser
159
- General Public License ever published by the Free Software Foundation.
160
-
161
- If the Library as you received it specifies that a proxy can decide
162
- whether future versions of the GNU Lesser General Public License shall
163
- apply, that proxy's public statement of acceptance of any version is
164
- permanent authorization for you to choose that version for the
165
- Library.
@@ -1,111 +0,0 @@
1
- require 'asciidoctor/extensions'
2
- require 'digest'
3
- require 'json'
4
- require_relative 'java'
5
- require_relative 'png'
6
- require_relative 'svg'
7
-
8
- module Asciidoctor
9
- module Diagram
10
- BLOCK_TYPES = {
11
- :svg => :image,
12
- :png => :image,
13
- :txt => :asciiart
14
- }
15
-
16
- IMAGE_PARAMS = {
17
- :svg => {
18
- :encoding => Encoding::UTF_8,
19
- :decoder => SVG
20
- },
21
- :png => {
22
- :encoding => Encoding::ASCII_8BIT,
23
- :decoder => PNG
24
- }
25
- }
26
-
27
- class DiagramBlock < Asciidoctor::Extensions::BlockProcessor
28
- option :contexts, [:listing, :literal, :open]
29
- option :content_model, :simple
30
- option :pos_attrs, ['target', 'format']
31
- option :default_attrs, {'format' => 'png'}
32
-
33
- def process(parent, reader, attributes)
34
- diagram_code = reader.lines.join
35
- format = attributes.delete('format').to_sym
36
-
37
- raise "#{name} does not support output format #{format}" unless allowed_formats.include?(format)
38
-
39
- case BLOCK_TYPES[format]
40
- when :image
41
- create_image_block(parent, diagram_code, attributes, format)
42
- when :asciiart
43
- create_ascii_art_block(parent, diagram_code, attributes)
44
- else
45
- raise "Unsupported output format: #{format}"
46
- end
47
- end
48
-
49
- private
50
-
51
- def create_image_block(parent, diagram_code, attributes, format)
52
- target = attributes.delete('target')
53
-
54
- checksum = code_checksum(diagram_code)
55
-
56
- image_name = "#{target || checksum}.#{format}"
57
- image_dir = File.expand_path(document.attributes['imagesdir'] || '', parent.document.attributes['docdir'])
58
- image_file = File.expand_path(image_name, image_dir)
59
- cache_file = File.expand_path("#{image_name}.cache", image_dir)
60
-
61
- if File.exists? cache_file
62
- metadata = File.open(cache_file, 'r') { |f| JSON.load f }
63
- else
64
- metadata = nil
65
- end
66
-
67
- unless File.exists?(image_file) && metadata && metadata['checksum'] == checksum
68
- params = IMAGE_PARAMS[format]
69
-
70
- result = generate_image(parent, diagram_code, format)
71
-
72
- result.force_encoding(params[:encoding])
73
-
74
- metadata = {'checksum' => checksum}
75
- metadata['width'], metadata['height'] = params[:decoder].get_image_size(result)
76
-
77
- File.open(image_file, 'w') { |f| f.write result }
78
- File.open(cache_file, 'w') { |f| JSON.dump(metadata, f) }
79
- end
80
-
81
- attributes['target'] = image_name
82
- attributes['width'] ||= metadata['width'] if metadata['width']
83
- attributes['height'] ||= metadata['height'] if metadata['height']
84
- attributes['alt'] ||= if (title_text = attributes['title'])
85
- title_text
86
- elsif target
87
- (File.basename target, (File.extname target) || '').tr '_-', ' '
88
- else
89
- 'Diagram'
90
- end
91
-
92
- Asciidoctor::Block.new parent, :image, :content_model => :empty, :attributes => attributes
93
- end
94
-
95
- def create_ascii_art_block(parent, diagram_code, attributes)
96
- attributes.delete('target')
97
-
98
- result = generate_text(parent, diagram_code)
99
-
100
- result.force_encoding(Encoding::UTF_8)
101
- Asciidoctor::Block.new parent, :literal, :source => result, :attributes => attributes
102
- end
103
-
104
- def code_checksum(code)
105
- md5 = Digest::MD5.new
106
- md5 << code
107
- md5.hexdigest
108
- end
109
- end
110
- end
111
- end
@@ -1,18 +0,0 @@
1
- require_relative 'binaryio'
2
-
3
- module Asciidoctor
4
- module Diagram
5
- module SVG
6
- SVG_SIZE_REGEX = /style="width:(?<width>\d+)px;height:(?<height>\d+)px/
7
-
8
- def self.get_image_size(data)
9
- match_data = SVG_SIZE_REGEX.match(data)
10
- if match_data
11
- [match_data[:width].to_i, match_data[:height].to_i]
12
- else
13
- nil
14
- end
15
- end
16
- end
17
- end
18
- end
data/plantuml-license.txt DELETED
@@ -1,202 +0,0 @@
1
-
2
- Apache License
3
- Version 2.0, January 2004
4
- http://www.apache.org/licenses/
5
-
6
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7
-
8
- 1. Definitions.
9
-
10
- "License" shall mean the terms and conditions for use, reproduction,
11
- and distribution as defined by Sections 1 through 9 of this document.
12
-
13
- "Licensor" shall mean the copyright owner or entity authorized by
14
- the copyright owner that is granting the License.
15
-
16
- "Legal Entity" shall mean the union of the acting entity and all
17
- other entities that control, are controlled by, or are under common
18
- control with that entity. For the purposes of this definition,
19
- "control" means (i) the power, direct or indirect, to cause the
20
- direction or management of such entity, whether by contract or
21
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
22
- outstanding shares, or (iii) beneficial ownership of such entity.
23
-
24
- "You" (or "Your") shall mean an individual or Legal Entity
25
- exercising permissions granted by this License.
26
-
27
- "Source" form shall mean the preferred form for making modifications,
28
- including but not limited to software source code, documentation
29
- source, and configuration files.
30
-
31
- "Object" form shall mean any form resulting from mechanical
32
- transformation or translation of a Source form, including but
33
- not limited to compiled object code, generated documentation,
34
- and conversions to other media types.
35
-
36
- "Work" shall mean the work of authorship, whether in Source or
37
- Object form, made available under the License, as indicated by a
38
- copyright notice that is included in or attached to the work
39
- (an example is provided in the Appendix below).
40
-
41
- "Derivative Works" shall mean any work, whether in Source or Object
42
- form, that is based on (or derived from) the Work and for which the
43
- editorial revisions, annotations, elaborations, or other modifications
44
- represent, as a whole, an original work of authorship. For the purposes
45
- of this License, Derivative Works shall not include works that remain
46
- separable from, or merely link (or bind by name) to the interfaces of,
47
- the Work and Derivative Works thereof.
48
-
49
- "Contribution" shall mean any work of authorship, including
50
- the original version of the Work and any modifications or additions
51
- to that Work or Derivative Works thereof, that is intentionally
52
- submitted to Licensor for inclusion in the Work by the copyright owner
53
- or by an individual or Legal Entity authorized to submit on behalf of
54
- the copyright owner. For the purposes of this definition, "submitted"
55
- means any form of electronic, verbal, or written communication sent
56
- to the Licensor or its representatives, including but not limited to
57
- communication on electronic mailing lists, source code control systems,
58
- and issue tracking systems that are managed by, or on behalf of, the
59
- Licensor for the purpose of discussing and improving the Work, but
60
- excluding communication that is conspicuously marked or otherwise
61
- designated in writing by the copyright owner as "Not a Contribution."
62
-
63
- "Contributor" shall mean Licensor and any individual or Legal Entity
64
- on behalf of whom a Contribution has been received by Licensor and
65
- subsequently incorporated within the Work.
66
-
67
- 2. Grant of Copyright License. Subject to the terms and conditions of
68
- this License, each Contributor hereby grants to You a perpetual,
69
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70
- copyright license to reproduce, prepare Derivative Works of,
71
- publicly display, publicly perform, sublicense, and distribute the
72
- Work and such Derivative Works in Source or Object form.
73
-
74
- 3. Grant of Patent License. Subject to the terms and conditions of
75
- this License, each Contributor hereby grants to You a perpetual,
76
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77
- (except as stated in this section) patent license to make, have made,
78
- use, offer to sell, sell, import, and otherwise transfer the Work,
79
- where such license applies only to those patent claims licensable
80
- by such Contributor that are necessarily infringed by their
81
- Contribution(s) alone or by combination of their Contribution(s)
82
- with the Work to which such Contribution(s) was submitted. If You
83
- institute patent litigation against any entity (including a
84
- cross-claim or counterclaim in a lawsuit) alleging that the Work
85
- or a Contribution incorporated within the Work constitutes direct
86
- or contributory patent infringement, then any patent licenses
87
- granted to You under this License for that Work shall terminate
88
- as of the date such litigation is filed.
89
-
90
- 4. Redistribution. You may reproduce and distribute copies of the
91
- Work or Derivative Works thereof in any medium, with or without
92
- modifications, and in Source or Object form, provided that You
93
- meet the following conditions:
94
-
95
- (a) You must give any other recipients of the Work or
96
- Derivative Works a copy of this License; and
97
-
98
- (b) You must cause any modified files to carry prominent notices
99
- stating that You changed the files; and
100
-
101
- (c) You must retain, in the Source form of any Derivative Works
102
- that You distribute, all copyright, patent, trademark, and
103
- attribution notices from the Source form of the Work,
104
- excluding those notices that do not pertain to any part of
105
- the Derivative Works; and
106
-
107
- (d) If the Work includes a "NOTICE" text file as part of its
108
- distribution, then any Derivative Works that You distribute must
109
- include a readable copy of the attribution notices contained
110
- within such NOTICE file, excluding those notices that do not
111
- pertain to any part of the Derivative Works, in at least one
112
- of the following places: within a NOTICE text file distributed
113
- as part of the Derivative Works; within the Source form or
114
- documentation, if provided along with the Derivative Works; or,
115
- within a display generated by the Derivative Works, if and
116
- wherever such third-party notices normally appear. The contents
117
- of the NOTICE file are for informational purposes only and
118
- do not modify the License. You may add Your own attribution
119
- notices within Derivative Works that You distribute, alongside
120
- or as an addendum to the NOTICE text from the Work, provided
121
- that such additional attribution notices cannot be construed
122
- as modifying the License.
123
-
124
- You may add Your own copyright statement to Your modifications and
125
- may provide additional or different license terms and conditions
126
- for use, reproduction, or distribution of Your modifications, or
127
- for any such Derivative Works as a whole, provided Your use,
128
- reproduction, and distribution of the Work otherwise complies with
129
- the conditions stated in this License.
130
-
131
- 5. Submission of Contributions. Unless You explicitly state otherwise,
132
- any Contribution intentionally submitted for inclusion in the Work
133
- by You to the Licensor shall be under the terms and conditions of
134
- this License, without any additional terms or conditions.
135
- Notwithstanding the above, nothing herein shall supersede or modify
136
- the terms of any separate license agreement you may have executed
137
- with Licensor regarding such Contributions.
138
-
139
- 6. Trademarks. This License does not grant permission to use the trade
140
- names, trademarks, service marks, or product names of the Licensor,
141
- except as required for reasonable and customary use in describing the
142
- origin of the Work and reproducing the content of the NOTICE file.
143
-
144
- 7. Disclaimer of Warranty. Unless required by applicable law or
145
- agreed to in writing, Licensor provides the Work (and each
146
- Contributor provides its Contributions) on an "AS IS" BASIS,
147
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148
- implied, including, without limitation, any warranties or conditions
149
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150
- PARTICULAR PURPOSE. You are solely responsible for determining the
151
- appropriateness of using or redistributing the Work and assume any
152
- risks associated with Your exercise of permissions under this License.
153
-
154
- 8. Limitation of Liability. In no event and under no legal theory,
155
- whether in tort (including negligence), contract, or otherwise,
156
- unless required by applicable law (such as deliberate and grossly
157
- negligent acts) or agreed to in writing, shall any Contributor be
158
- liable to You for damages, including any direct, indirect, special,
159
- incidental, or consequential damages of any character arising as a
160
- result of this License or out of the use or inability to use the
161
- Work (including but not limited to damages for loss of goodwill,
162
- work stoppage, computer failure or malfunction, or any and all
163
- other commercial damages or losses), even if such Contributor
164
- has been advised of the possibility of such damages.
165
-
166
- 9. Accepting Warranty or Additional Liability. While redistributing
167
- the Work or Derivative Works thereof, You may choose to offer,
168
- and charge a fee for, acceptance of support, warranty, indemnity,
169
- or other liability obligations and/or rights consistent with this
170
- License. However, in accepting such obligations, You may act only
171
- on Your own behalf and on Your sole responsibility, not on behalf
172
- of any other Contributor, and only if You agree to indemnify,
173
- defend, and hold each Contributor harmless for any liability
174
- incurred by, or claims asserted against, such Contributor by reason
175
- of your accepting any such warranty or additional liability.
176
-
177
- END OF TERMS AND CONDITIONS
178
-
179
- APPENDIX: How to apply the Apache License to your work.
180
-
181
- To apply the Apache License to your work, attach the following
182
- boilerplate notice, with the fields enclosed by brackets "[]"
183
- replaced with your own identifying information. (Don't include
184
- the brackets!) The text should be enclosed in the appropriate
185
- comment syntax for the file format. We also recommend that a
186
- file or class name and description of purpose be included on the
187
- same "printed page" as the copyright notice for easier
188
- identification within third-party archives.
189
-
190
- Copyright [yyyy] [name of copyright owner]
191
-
192
- Licensed under the Apache License, Version 2.0 (the "License");
193
- you may not use this file except in compliance with the License.
194
- You may obtain a copy of the License at
195
-
196
- http://www.apache.org/licenses/LICENSE-2.0
197
-
198
- Unless required by applicable law or agreed to in writing, software
199
- distributed under the License is distributed on an "AS IS" BASIS,
200
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
201
- See the License for the specific language governing permissions and
202
- limitations under the License.