/******************************************************************************* * Copyright (c) 2010-2014 SAP AG and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * SAP AG - initial API and implementation *******************************************************************************/ package org.eclipse.skalli.core.group; import java.util.ArrayList; import java.util.List; import org.eclipse.skalli.model.Group; import com.thoughtworks.xstream.annotations.XStreamAlias; import com.thoughtworks.xstream.annotations.XStreamImplicit; /** * Configuration of a collection of user groups. */ @XStreamAlias("groups") public class GroupsConfig { // do not remove: required by xstream public GroupsConfig() { } public GroupsConfig(List<GroupConfig> groups) { getGroups().addAll(groups); } @XStreamImplicit private ArrayList<GroupConfig> groups = new ArrayList<GroupConfig>(); public List<GroupConfig> getGroups() { if (groups == null) { groups = new ArrayList<GroupConfig>(); } return groups; } public List<Group> getModelGroups() { ArrayList<Group> modelGroups = new ArrayList<Group>(); for (GroupConfig skalliCoreGroup : getGroups()) { modelGroups.add(skalliCoreGroup.getAsModelGroup()); } return modelGroups; } }