001//////////////////////////////////////////////////////////////////////////////// 002// checkstyle: Checks Java source code for adherence to a set of rules. 003// Copyright (C) 2001-2017 the original author or authors. 004// 005// This library is free software; you can redistribute it and/or 006// modify it under the terms of the GNU Lesser General Public 007// License as published by the Free Software Foundation; either 008// version 2.1 of the License, or (at your option) any later version. 009// 010// This library is distributed in the hope that it will be useful, 011// but WITHOUT ANY WARRANTY; without even the implied warranty of 012// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 013// Lesser General Public License for more details. 014// 015// You should have received a copy of the GNU Lesser General Public 016// License along with this library; if not, write to the Free Software 017// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 018//////////////////////////////////////////////////////////////////////////////// 019 020package com.puppycrawl.tools.checkstyle.api; 021 022import java.util.Set; 023import java.util.SortedSet; 024import java.util.TreeSet; 025 026/** 027 * Collection of messages. 028 * @author Oliver Burn 029 */ 030public final class LocalizedMessages { 031 /** Contains the messages logged. **/ 032 private final Set<LocalizedMessage> messages = new TreeSet<>(); 033 034 /** 035 * Gets the logged messages. 036 * @return the logged messages 037 */ 038 public SortedSet<LocalizedMessage> getMessages() { 039 return new TreeSet<>(messages); 040 } 041 042 /** Reset the object. **/ 043 public void reset() { 044 messages.clear(); 045 } 046 047 /** 048 * Logs a message to be reported. 049 * @param message the message to log 050 **/ 051 public void add(LocalizedMessage message) { 052 messages.add(message); 053 } 054 055 /** 056 * Gets the number of messages. 057 * @return the number of messages 058 */ 059 public int size() { 060 return messages.size(); 061 } 062}