Mercurial > hg > soundsoftware-site
annotate lib/redmine/views/builders.rb @ 1022:f2ec92061fca browsing
Merge from live branch
author | Chris Cannam <chris.cannam@soundsoftware.ac.uk> |
---|---|
date | Tue, 13 Nov 2012 10:35:40 +0000 |
parents | cbb26bc654de |
children | 433d4f72a19b |
rev | line source |
---|---|
Chris@119 | 1 # Redmine - project management software |
Chris@909 | 2 # Copyright (C) 2006-2011 Jean-Philippe Lang |
Chris@119 | 3 # |
Chris@119 | 4 # This program is free software; you can redistribute it and/or |
Chris@119 | 5 # modify it under the terms of the GNU General Public License |
Chris@119 | 6 # as published by the Free Software Foundation; either version 2 |
Chris@119 | 7 # of the License, or (at your option) any later version. |
Chris@909 | 8 # |
Chris@119 | 9 # This program is distributed in the hope that it will be useful, |
Chris@119 | 10 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
Chris@119 | 11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
Chris@119 | 12 # GNU General Public License for more details. |
Chris@909 | 13 # |
Chris@119 | 14 # You should have received a copy of the GNU General Public License |
Chris@119 | 15 # along with this program; if not, write to the Free Software |
Chris@119 | 16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
Chris@119 | 17 |
Chris@119 | 18 module Redmine |
Chris@119 | 19 module Views |
Chris@119 | 20 module Builders |
Chris@119 | 21 def self.for(format, &block) |
Chris@119 | 22 builder = case format |
Chris@119 | 23 when 'xml', :xml; Builders::Xml.new |
Chris@119 | 24 when 'json', :json; Builders::Json.new |
Chris@119 | 25 else; raise "No builder for format #{format}" |
Chris@119 | 26 end |
Chris@119 | 27 if block |
Chris@119 | 28 block.call(builder) |
Chris@119 | 29 else |
Chris@119 | 30 builder |
Chris@119 | 31 end |
Chris@119 | 32 end |
Chris@119 | 33 end |
Chris@119 | 34 end |
Chris@119 | 35 end |