/** * $URL: https://source.sakaiproject.org/svn/sitestats/trunk/sitestats-api/src/java/org/sakaiproject/sitestats/api/PrefsData.java $ * $Id: PrefsData.java 105078 2012-02-24 23:00:38Z ottenhoff@longsight.com $ * * Copyright (c) 2006-2009 The Sakai Foundation * * Licensed under the Educational Community License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.opensource.org/licenses/ECL-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.sakaiproject.sitestats.api; import java.io.Serializable; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import org.sakaiproject.sitestats.api.event.EventInfo; import org.sakaiproject.sitestats.api.event.ToolInfo; public class PrefsData implements Serializable { private static final long serialVersionUID = 1L; private List<ToolInfo> toolEventsDef = null; private boolean useAllTools = false; private boolean listToolEventsOnlyAvailableInSite = true; private boolean chartIn3D = false; private float chartTransparency = 1.0f; private boolean itemLabelsVisible = true; public PrefsData(){ toolEventsDef = new ArrayList<ToolInfo>(); listToolEventsOnlyAvailableInSite = true; } public List<ToolInfo> getToolEventsDef() { return toolEventsDef; } public List<String> getToolEventsStringList() { List<String> toolEventsStringList = new ArrayList<String>(); Iterator<ToolInfo> iT = getToolEventsDef().iterator(); while(iT.hasNext()){ ToolInfo t = iT.next(); if(t.isSelected()){ Iterator<EventInfo> iE = t.getEvents().iterator(); while(iE.hasNext()){ EventInfo e = iE.next(); if(e.isSelected()) toolEventsStringList.add(e.getEventId()); } } } return toolEventsStringList; } public void setToolEventsDef(List<ToolInfo> toolEventsDef) { this.toolEventsDef = toolEventsDef; } public boolean isListToolEventsOnlyAvailableInSite(){ return listToolEventsOnlyAvailableInSite; } public void setListToolEventsOnlyAvailableInSite(boolean listToolEventsOnlyAvailableInSite){ this.listToolEventsOnlyAvailableInSite = listToolEventsOnlyAvailableInSite; } public void setUseAllTools(boolean value) { this.useAllTools = value; } public boolean isUseAllTools() { return useAllTools; } public void setChartIn3D(boolean value){ this.chartIn3D = value; } public boolean isChartIn3D() { return chartIn3D; } public void setChartTransparency(float value){ this.chartTransparency = value; } public void setChartTransparency(String value){ this.chartTransparency = Float.parseFloat(value); } public float getChartTransparency() { return chartTransparency; } public void setItemLabelsVisible(boolean itemLabelsVisible) { this.itemLabelsVisible = itemLabelsVisible; } public boolean isItemLabelsVisible() { return itemLabelsVisible; } public String toXmlPrefs() { StringBuffer buff = new StringBuffer(); buff.append("<?xml version=\"1.0\" encoding=\"UTF-8\" ?>"); buff.append("<prefs "); buff.append(" listToolEventsOnlyAvailableInSite=\""+ isListToolEventsOnlyAvailableInSite() +"\" "); buff.append(" chartIn3D=\""+ isChartIn3D() +"\" "); buff.append(" chartTransparency=\""+ getChartTransparency() +"\" "); buff.append(" itemLabelsVisible=\""+ isItemLabelsVisible() +"\" "); buff.append(" useAllTools=\""+ isUseAllTools() +"\" "); buff.append(">"); buff.append(" <toolEventsDef>"); Iterator<ToolInfo> iT = getToolEventsDef().iterator(); while(iT.hasNext()){ ToolInfo t = iT.next(); buff.append(" <tool toolId=\""+ t.getToolId() +"\" selected=\""+ t.isSelected() +"\">"); Iterator<EventInfo> iE = t.getEvents().iterator(); while(iE.hasNext()){ EventInfo e = iE.next(); buff.append(" <event eventId=\""+ e.getEventId() +"\" selected=\""+ e.isSelected() +"\" />"); } buff.append(" </tool>"); } buff.append(" </toolEventsDef>"); buff.append("</prefs>"); return buff.toString(); } } /*public interface PrefsData { public List<ToolInfo> getToolEventsDef(); public void setToolEventsDef(List<ToolInfo> toolEventsDef); public List<String> getToolEventsStringList(); public boolean isListToolEventsOnlyAvailableInSite(); public void setListToolEventsOnlyAvailableInSite(boolean listToolEventsOnlyAvailableInSite); public void setChartIn3D(boolean value); public boolean isChartIn3D(); public void setUseAllTools(boolean value); public boolean isUseAllTools(); public void setChartTransparency(float value); public void setChartTransparency(String value); public float getChartTransparency(); public void setItemLabelsVisible(boolean itemLabelsVisible); public boolean isItemLabelsVisible(); public String toXmlPrefs(); }*/