1 /*
2  ************************************************************************
3  *
4  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5  *
6  * Copyright 2000, 2010 Oracle and/or its affiliates.
7  *
8  * OpenOffice.org - a multi-platform office productivity suite
9  *
10  * This file is part of OpenOffice.org.
11  *
12  * OpenOffice.org is free software: you can redistribute it and/or modify
13  * it under the terms of the GNU Lesser General Public License version 3
14  * only, as published by the Free Software Foundation.
15  *
16  * OpenOffice.org is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19  * GNU Lesser General Public License version 3 for more details
20  * (a copy is included in the LICENSE file that accompanied this code).
21  *
22  * You should have received a copy of the GNU Lesser General Public License
23  * version 3 along with OpenOffice.org.  If not, see
24  * <http://www.openoffice.org/license.html>
25  * for a copy of the LGPLv3 License.
26  *
27  ************************************************************************/
28 
29 /*
30  * Created on 31.10.2003
31  *
32  * To change the template for this generated file go to
33  * Window>Preferences>Java>Code Generation>Code and Comments
34  */
35 package com.sun.star.wizards.web.export;
36 
37 import java.util.Iterator;
38 
39 import com.sun.star.wizards.web.data.CGArgument;
40 import com.sun.star.wizards.web.data.CGExporter;
41 
42 /**
43  * @author rpiterman
44  *
45  * To change the template for this generated type comment go to
46  * Window>Preferences>Java>Code Generation>Code and Comments
47  */
48 public class ConfiguredExporter extends FilterExporter
49 {
50 
51     /* (non-Javadoc)
52      * @see com.sun.star.wizards.web.export.Exporter#init(com.sun.star.wizards.web.data.CGExporter)
53      */
54     public void init(CGExporter exporter)
55     {
56         super.init(exporter);
57         for (Iterator i = exporter.cp_Arguments.keys().iterator(); i.hasNext();)
58         {
59             Object key = i.next();
60             if (!key.equals("Filter"))
61             {
62                 Object value = exporter.cp_Arguments.getElement(key);
63                 props.put(key, cast(((CGArgument) value).cp_Value));
64             }
65         }
66     }
67 
68     private Object cast(String s)
69     {
70         String s1 = s.substring(1);
71         char c = s.charAt(0);
72         switch (c)
73         {
74             case '$':
75                 return s1;
76             case '%':
77                 return Integer.valueOf(s1);
78             case '#':
79                 return Short.valueOf(s1);
80             case '&':
81                 return Double.valueOf(s1);
82             case 'f':
83                 if (s.equals("false"))
84                 {
85                     return Boolean.FALSE;
86                 }
87                 break;
88             case 't':
89                 if (s.equals("true"))
90                 {
91                     return Boolean.TRUE;
92                 }
93                 break;
94         }
95         return null;
96     }
97 }
98 
99