001
014
015 package com.liferay.portal.kernel.util;
016
017 import java.io.Serializable;
018
019 import java.util.ArrayList;
020 import java.util.List;
021
022
025 public class ListMergeable<T>
026 implements Mergeable<ListMergeable<T>>, Serializable {
027
028 public void add(T t) {
029 _list.add(t);
030 }
031
032 public boolean contains(T t) {
033 return _list.contains(t);
034 }
035
036 public ListMergeable<T> merge(ListMergeable<T> listMergeable) {
037 if ((listMergeable == null) || (listMergeable == this)) {
038 return this;
039 }
040
041 for (T t : listMergeable._list) {
042 if (!_list.contains(t)) {
043 _list.add(t);
044 }
045 }
046
047 return this;
048 }
049
050 public String mergeToString(String delimiter) {
051 return StringUtil.merge(_list, delimiter);
052 }
053
054 private static final long serialVersionUID = 1L;
055
056 private List<T> _list = new ArrayList<T>();
057
058 }