Class: Ape::Samples
- Inherits:
-
Object
- Object
- Ape::Samples
- Defined in:
- lib/ape/samples.rb
Constant Summary collapse
- @@service_schema =
nil
- @@categories_schema =
nil
- @@atom_schema =
nil
Class Method Summary collapse
- .atom_RNC ⇒ Object
- .basic_entry ⇒ Object
- .cat_test_entry ⇒ Object
- .categories_RNC ⇒ Object
- .entry_path(type) ⇒ Object
- .foreign_child ⇒ Object
- .foreign_child_content ⇒ Object
- .foreign_namespace ⇒ Object
- .load_schema(file_name) ⇒ Object
- .load_template(type) ⇒ Object
- .make_id ⇒ Object
- .mini_entry ⇒ Object
- .picture ⇒ Object
- .retitled_entry(new_title, new_id = nil) ⇒ Object
- .service_RNC ⇒ Object
- .unclean_xhtml_entry ⇒ Object
Class Method Details
.atom_RNC ⇒ Object
50 51 52 53 |
# File 'lib/ape/samples.rb', line 50 def Samples.atom_RNC @@atom_schema = load_schema('atom') unless @@atom_schema @@atom_schema end |
.basic_entry ⇒ Object
78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/ape/samples.rb', line 78 def Samples.basic_entry eruby = load_template('basic_entry') context = SamplesContext.new( :title => Escaper.escape('From the <APE> (サル)'), :subject => Names::DcNamespace ) context[:summary] = "Summary from the <b>&lt;&nbsp;APE&nbsp;></b> at #{context.now}" eruby.evaluate(context) end |
.cat_test_entry ⇒ Object
94 95 96 |
# File 'lib/ape/samples.rb', line 94 def Samples.cat_test_entry retitled_entry('Testing category posting') end |
.categories_RNC ⇒ Object
45 46 47 48 |
# File 'lib/ape/samples.rb', line 45 def Samples.categories_RNC @@categories_schema = load_schema('categories') unless @@categories_schema @@categories_schema end |
.entry_path(type) ⇒ Object
63 64 65 66 67 |
# File 'lib/ape/samples.rb', line 63 def Samples.entry_path(type) File.exist?(File.join(::Ape.home, "/#{type}.eruby"))? File.join(::Ape.home, "/#{type}.eruby") : File.join(File.dirname(__FILE__), "/../../samples/#{type}.eruby") end |
.foreign_child ⇒ Object
26 27 28 |
# File 'lib/ape/samples.rb', line 26 def Samples.foreign_child 'subject' end |
.foreign_child_content ⇒ Object
32 33 34 |
# File 'lib/ape/samples.rb', line 32 def Samples.foreign_child_content 'Simians' end |
.foreign_namespace ⇒ Object
29 30 31 |
# File 'lib/ape/samples.rb', line 29 def Samples.foreign_namespace Names::DcNamespace end |
.load_schema(file_name) ⇒ Object
36 37 38 |
# File 'lib/ape/samples.rb', line 36 def Samples.load_schema(file_name) IO.read(File.join(File.dirname(__FILE__), "/../../samples/#{file_name}_schema.txt")) end |
.load_template(type) ⇒ Object
69 70 71 |
# File 'lib/ape/samples.rb', line 69 def Samples.load_template(type) Erubis::FastEruby.new(IO.read(entry_path(type))) end |
.make_id ⇒ Object
57 58 59 60 61 |
# File 'lib/ape/samples.rb', line 57 def Samples.make_id id = '' 5.times { id += rand(1000000).to_s } "tag:tbray.org,2005:#{id}" end |
.mini_entry ⇒ Object
74 75 76 |
# File 'lib/ape/samples.rb', line 74 def Samples.mini_entry load_template('mini_entry').evaluate(SamplesContext.new) end |
.picture ⇒ Object
104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 |
# File 'lib/ape/samples.rb', line 104 def Samples.picture b64 =<<END_OF_PICTURE /9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQE BQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/ 2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAA8AEYDASIAAhEBAxEB/8QA HwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUF BAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkK FhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1 dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXG x8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEB AQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAEC AxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRom JygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU 1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD5fgS0knaT 7C4UddzHINab3lrboz/2ezop5LAnj3qtbK1xJbwbcZYZwc4GeprpZLNZY5Tu Ai8skhjgHk5FfJNtWVm/m/8Agn7M6dOGzSdvzdvKxl2VzaAec2n7uMqDnBHr W1FPEY7YDTrVYXUNl5fw/wAf0qjps0NzbCEMUZMBhnJz9PwqzZbISIpQj27s A+4ZK99w/wAKycU229fm/wDM9aVDlhF09uv9eRrG6jmgeGLTrR2kPG2T5uMe /wDnNcnrGuxpdGMWCM4cR7V+bkehzXSatJBo4S3sZFkmkQ75x0QZ7H1965z7 MjIxDsAEJyTkgY5b9KjlitV+N/yuXSoyrO/T835FKe/Ms8khsMFRtIwR2780 77bGqQObHZORwgz8wHGRz6/yqOxkZmnO1isjYXeMZB4yPyqvrSJa30DF2bdu 4TtycZq7Nbp2stdTgapyqciaerTXp899uhFc6qLmQg23X5iTxz9aKZes0RRX yxA+7n9aK6YcvKrq/wAzkr4W1R8rsu1rnSWD2UcLPIgE3BIDHJPt7ZqBXmiv ZnuSTaMCpUAHy89P8j1pdKtGe7jllI+i84H9TW7JIt/PLYCGREyfKbachu5P P/6q578rf3/1/X/B6mkopTV2/wAv6X4fNRp4ZitLQXsLZlUL8p5LAjg/XFVz fRKky+YMbCd7L19himadPLat9lD5jALKqtyuPT2961bfT4LlELQA+ZuyVXJz nrWMlKKbk9j0KOIVLlp2321f/D9bmH9uihxNJgKNqnjJxjJx+NFuh1RONjRE gkgYIHOFH+eK0tV0m3adDFEjgEbuM5yAc5z+lVpA+nRGOMrGGOPNPAXHO0de abkqvNKP9alLETgoULJfPy+X6kGqWovJRaQqqxx4DzoM9Ow9ag8iNmeN4wXG V3tgluevsa0WlSw0uS5hj82RW2kOp2ITzuPHX6etQ3CJcWkdyymJpGLbTxsI /iXjp9aiOiv8vnv+Wv8AWtT9m6iw6Wq6+d7Wt2vp6+W3NyqtlIEm6c7XKZ9O MGirjz/aUDOFkOfvOOG9+aK9OnhnUipXt8m/0PCq5p7Cbpyim115kv1ROzSy SR3UK5jx8yg8tzXW3Gtw3Gm26QQBbtkCO6DmQjp2yP61yGk34SQIGco5ypHY 9s1q2MS2l1LdKCNg3le3ORj8a5uTbmt5f1/XT5ae1UVZpvr3/r0/4ZpNp76X Os2AZW6KTgZJ6Y9OKgOszpAyu6IEPAKA5IPT2qxFeG/Xz5mbzpAQikFsL6/l WXcp5832e2KuZPmKsCNo9/50KN07nalCmvaTev8AwxqrqNxe2kzI0RkGAFMa 7j1PXHHpVqKZLm3WK+aOUld5IbAb6+9Zl5af2WqnzQ1lN0lQcbsY4PXr61Qa 5JixvIJbCgDGCO9KUFq1szWm4VaSS0kvw/H8jcivItPlSDasqEfJuAAYd1PH A9aoavOt3O4wTC5y74+97cDoMdRUEc39p2brONoiOHOcYb1pmrShII7W2Oc8 LzyB2rPka1fb+v8AP8fSXiVN8qXv7X8lv/lfsmvWhqBF5MiWsqQhF+ZiePoK KpzfuI1C/OqkqV2d/WiuqMqkFaLsjklh8K3erFN9/wCmSaNqBSPdNE5KkMML 1561tJrqSSylbaQh49oXgdjyea5S21W5ReJPb8KvW2sXQlzvByhPI+tdUqDb TaX3v/I+bjjHy2v+C/UmfWjazbYopHToQeorSj1WGGzkRSwuZT+8kdSSB/d6 dKw/t0skr7tp2kAfKKsapqs4kiAKjChshRnOBS9k7ar8f+AavFyqa30Xl/wT RjvtkDW8zs9q+NyMh+96ism4umR9kSSSgEqrn+Jc/pSf23ds0zFwdvIBUYzV aLU55DG5Khj3CipdKTbdlr5/8A1hifZ2af8AX3luDUC0dxCySoJG3byBj8fy qG71KW4nSRomwq7CV4OO2KonVLgblDAAcDAqAanO8+0kADngURoXbdvxZM8Y 001+n/Dk41B8ZaFmx8oyx6UVVn1m5jRCGXOMfdorRU2lqvx/4BhPFzlK6lb5 I//Z END_OF_PICTURE Base64.decode64(b64) end |
.retitled_entry(new_title, new_id = nil) ⇒ Object
98 99 100 101 102 |
# File 'lib/ape/samples.rb', line 98 def Samples.retitled_entry(new_title, new_id = nil) e = basic_entry e.gsub!(/<title>.*<\/title>/, "<title>#{new_title}</title>") e.gsub(/<id>.*<\/id>/, "<id>#{new_id}</id>") if new_id end |
.service_RNC ⇒ Object
40 41 42 43 |
# File 'lib/ape/samples.rb', line 40 def Samples.service_RNC @@service_schema = load_schema('service') unless @@service_schema @@service_schema end |
.unclean_xhtml_entry ⇒ Object
90 91 92 |
# File 'lib/ape/samples.rb', line 90 def Samples.unclean_xhtml_entry load_template('unclean_xhtml_entry').evaluate(SamplesContext.new) end |