1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2000, 2010 Oracle and/or its affiliates.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * This file is part of OpenOffice.org.
10  *
11  * OpenOffice.org is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * OpenOffice.org is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU Lesser General Public License version 3 for more details
19  * (a copy is included in the LICENSE file that accompanied this code).
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * version 3 along with OpenOffice.org.  If not, see
23  * <http://www.openoffice.org/license.html>
24  * for a copy of the LGPLv3 License.
25  *
26  ************************************************************************/
27 
28 #ifndef _SCRIPTING_STORAGE_SCRIPTINFOIMPL_HXX_
29 #define _SCRIPTING_STORAGE_SCRIPTINFOIMPL_HXX_
30 
31 #include <vector>
32 #include <map>
33 
34 #include <cppu/macros.hxx>
35 #include <rtl/ustring.hxx>
36 
37 
38 typedef ::std::pair< ::rtl::OUString, ::rtl::OUString > str_pair;
39 typedef ::std::map< ::rtl::OUString, str_pair,
40     ::std::equal_to< ::rtl::OUString > > strpair_map;
41 typedef ::std::vector< str_pair > props_vec;
42 typedef ::std::map< ::rtl::OUString, ::std::pair< props_vec, strpair_map >,
43     ::std::equal_to< ::rtl::OUString > > filesets_map;
44 
45 namespace scripting_impl
46 {
47 
48 struct ScriptInfoImpl
49 {
50 
51     inline ScriptInfoImpl::ScriptInfoImpl() SAL_THROW( () )
52        : parcelURI()
53        , language()
54        , locales()
55        , functionname()
56        , logicalname()
57        , languagedepprops()
58        , filesets()
59        {
60        }
61 
62    inline ScriptInfoImpl::ScriptInfoImpl( const ::rtl::OUString __parcelURI,
63        const ::rtl::OUString& __language,
64        const strpair_map& __locales,
65        const ::rtl::OUString& __functionname,
66        const ::rtl::OUString& __logicalname,
67        const langdepprops_vec& __languagedepprops,
68        const filesets_map& __filesets ) SAL_THROW( () )
69        : parcelURI( __parcelURI )
70        , language( __language )
71        , locales( __locales )
72        , functionname( __functionname )
73        , logicalname( __logicalname )
74        , languagedepprops( __languagedepprops )
75        , filesets( __filesets )
76    {
77    }
78 
79    ::rtl::OUString parcelURI;
80    ::rtl::OUString language;
81    strpair_map locales;
82    ::rtl::OUString functionname;
83    ::rtl::OUString logicalname;
84    props_vec languagedepprops;
85    filesets_map filesets;
86 
87 };
88 
89 
90 } // namespace scripting_impl
91 
92 #endif // _SCRIPTING_STORAGE_SCRIPTINFOIMPL_HXX_
93 
94