1   /**
2    * Copyright (c) 2000-2010 Liferay, Inc. All rights reserved.
3    *
4    * This library is free software; you can redistribute it and/or modify it under
5    * the terms of the GNU Lesser General Public License as published by the Free
6    * Software Foundation; either version 2.1 of the License, or (at your option)
7    * any later version.
8    *
9    * This library is distributed in the hope that it will be useful, but WITHOUT
10   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11   * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12   * details.
13   */
14  
15  package com.liferay.portal.model;
16  
17  import com.liferay.portal.theme.ThemeCompanyLimit;
18  import com.liferay.portal.theme.ThemeGroupLimit;
19  
20  import java.io.Serializable;
21  
22  import java.util.List;
23  import java.util.Map;
24  import java.util.Properties;
25  
26  /**
27   * <a href="Theme.java.html"><b><i>View Source</i></b></a>
28   *
29   * @author Brian Wing Shun Chan
30   */
31  public interface Theme extends Comparable<Theme>, Plugin, Serializable {
32  
33      public String getThemeId();
34  
35      public ThemeCompanyLimit getThemeCompanyLimit();
36  
37      public void setThemeCompanyLimit(ThemeCompanyLimit themeCompanyLimit);
38  
39      public boolean isCompanyAvailable(long companyId);
40  
41      public ThemeGroupLimit getThemeGroupLimit();
42  
43      public void setThemeGroupLimit(ThemeGroupLimit themeGroupLimit);
44  
45      public boolean isGroupAvailable(long groupId);
46  
47      public long getTimestamp();
48  
49      public void setTimestamp(long timestamp);
50  
51      public String getName();
52  
53      public void setName(String name);
54  
55      public String getRootPath();
56  
57      public void setRootPath(String rootPath);
58  
59      public String getTemplatesPath();
60  
61      public void setTemplatesPath(String templatesPath);
62  
63      public String getCssPath();
64  
65      public void setCssPath(String cssPath);
66  
67      public String getImagesPath();
68  
69      public void setImagesPath(String imagesPath);
70  
71      public String getJavaScriptPath();
72  
73      public void setJavaScriptPath(String javaScriptPath);
74  
75      public String getVirtualPath();
76  
77      public void setVirtualPath(String virtualPath);
78  
79      public String getTemplateExtension();
80  
81      public void setTemplateExtension(String templateExtension);
82  
83      public Properties getSettings();
84  
85      public String getSetting(String key);
86  
87      public void setSetting(String key, String value);
88  
89      public boolean getWapTheme();
90  
91      public boolean isWapTheme();
92  
93      public void setWapTheme(boolean wapTheme);
94  
95      public List<ColorScheme> getColorSchemes();
96  
97      public Map<String, ColorScheme> getColorSchemesMap();
98  
99      public boolean hasColorSchemes();
100 
101     public SpriteImage getSpriteImage(String fileName);
102 
103     public void setSpriteImages(
104         String spriteFileName, Properties spriteProperties);
105 
106     public String getServletContextName();
107 
108     public void setServletContextName(String servletContextName);
109 
110     public boolean getWARFile();
111 
112     public boolean isWARFile();
113 
114     public String getContextPath();
115 
116     public String getFreeMarkerTemplateLoader();
117 
118     public boolean getLoadFromServletContext();
119 
120     public boolean isLoadFromServletContext();
121 
122     public void setLoadFromServletContext(boolean loadFromServletContext);
123 
124     public String getVelocityResourceListener();
125 
126 }