📄 categorypath.java
字号:
/* * Copyright (C) The Apache Software Foundation. All rights reserved. * * This software is published under the terms of the Apache Software * License version 1.1, a copy of which has been included with this * distribution in the LICENSE.txt file. */package org.apache.log4j.lf5.viewer.categoryexplorer;import java.util.LinkedList;import java.util.StringTokenizer;/** * CategoryPath is a collection of CategoryItems which represent a * path of categories. * * @author Michael J. Sikorsky * @author Robert Shaw */// Contributed by ThoughtWorks Inc.public class CategoryPath { //-------------------------------------------------------------------------- // Constants: //-------------------------------------------------------------------------- //-------------------------------------------------------------------------- // Protected Variables: //-------------------------------------------------------------------------- protected LinkedList _categoryElements = new LinkedList(); //-------------------------------------------------------------------------- // Private Variables: //-------------------------------------------------------------------------- //-------------------------------------------------------------------------- // Constructors: //-------------------------------------------------------------------------- public CategoryPath() { super(); } /** * Construct a CategoryPath. If the category is null, it defaults to "Debug". */ public CategoryPath(String category) { String processedCategory = category; if (processedCategory == null) { processedCategory = "Debug"; } processedCategory.replace('/', '.'); processedCategory = processedCategory.replace('\\', '.'); StringTokenizer st = new StringTokenizer(processedCategory, "."); while (st.hasMoreTokens()) { String element = st.nextToken(); addCategoryElement(new CategoryElement(element)); } } //-------------------------------------------------------------------------- // Public Methods: //-------------------------------------------------------------------------- /** * returns the number of CategoryElements. */ public int size() { int count = _categoryElements.size(); return (count); } public boolean isEmpty() { boolean empty = false; if (_categoryElements.size() == 0) { empty = true; } return (empty); } /** * Removes all categoryElements. */ public void removeAllCategoryElements() { _categoryElements.clear(); } /** * Adds the specified categoryElement to the end of the categoryElement set. */ public void addCategoryElement(CategoryElement categoryElement) { _categoryElements.addLast(categoryElement); } /** * Returns the CategoryElement at the specified index. */ public CategoryElement categoryElementAt(int index) { return ((CategoryElement) _categoryElements.get(index)); } public String toString() { StringBuffer out = new StringBuffer(100); out.append("\n"); out.append("===========================\n"); out.append("CategoryPath: \n"); out.append("---------------------------\n"); out.append("\nCategoryPath:\n\t"); if (this.size() > 0) { for (int i = 0; i < this.size(); i++) { out.append(this.categoryElementAt(i).toString()); out.append("\n\t"); } } else { out.append("<<NONE>>"); } out.append("\n"); out.append("===========================\n"); return (out.toString()); } //-------------------------------------------------------------------------- // Protected Methods: //-------------------------------------------------------------------------- //-------------------------------------------------------------------------- // Private Methods: //-------------------------------------------------------------------------- //-------------------------------------------------------------------------- // Nested Top-Level Classes or Interfaces: //--------------------------------------------------------------------------}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -