From b6dcebb69c49055dbed9ff6812f633e0db0f3967 Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Fri, 2 Oct 2015 14:42:43 +0200 Subject: [PATCH] cleanup --- .../src/com/intellij/ui/RecentsManager.java | 72 ++++++++----------- 1 file changed, 30 insertions(+), 42 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/ui/RecentsManager.java b/platform/platform-impl/src/com/intellij/ui/RecentsManager.java index 87dd41e71e1f..7065e9f7fe3f 100644 --- a/platform/platform-impl/src/com/intellij/ui/RecentsManager.java +++ b/platform/platform-impl/src/com/intellij/ui/RecentsManager.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2012 JetBrains s.r.o. + * Copyright 2000-2015 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,43 +16,37 @@ package com.intellij.ui; import com.intellij.openapi.components.*; -import com.intellij.openapi.components.StoragePathMacros; import com.intellij.openapi.project.Project; -import com.intellij.util.containers.HashMap; +import gnu.trove.THashMap; import org.jdom.Element; import org.jetbrains.annotations.NonNls; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.util.*; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; -/** - * @author ven - */ -@State( - name="RecentsManager", - storages= { - @Storage( - file = StoragePathMacros.WORKSPACE_FILE - )} -) +@State(name = "RecentsManager", storages = @Storage(file = StoragePathMacros.WORKSPACE_FILE)) public class RecentsManager implements PersistentStateComponent { - private final Map> myMap = new HashMap>(); - - private int myRecentsNumberToKeep = 5; @NonNls private static final String KEY_ELEMENT_NAME = "key"; @NonNls private static final String RECENT_ELEMENT_NAME = "recent"; @NonNls protected static final String NAME_ATTR = "name"; - public static RecentsManager getInstance(Project project) { + private final Map> myMap = new THashMap>(); + private int myRecentsNumberToKeep = 5; + + @NotNull + public static RecentsManager getInstance(@NotNull Project project) { return ServiceManager.getService(project, RecentsManager.class); } @Nullable - public List getRecentEntries(String key) { + public List getRecentEntries(@NotNull String key) { return myMap.get(key); } - public void registerRecentEntry(String key, String recentEntry) { + public void registerRecentEntry(@NotNull String key, String recentEntry) { LinkedList recents = myMap.get(key); if (recents == null) { recents = new LinkedList(); @@ -62,45 +56,39 @@ public class RecentsManager implements PersistentStateComponent { add(recents, recentEntry); } - private void add(final LinkedList recentEntrues, final String newEntry) { - final int oldIndex = recentEntrues.indexOf(newEntry); + private void add(final LinkedList recentEntries, final String newEntry) { + final int oldIndex = recentEntries.indexOf(newEntry); if (oldIndex >= 0) { - recentEntrues.remove(oldIndex); + recentEntries.remove(oldIndex); } - else if (recentEntrues.size() == myRecentsNumberToKeep) { - recentEntrues.removeLast(); + else if (recentEntries.size() == myRecentsNumberToKeep) { + recentEntries.removeLast(); } - recentEntrues.addFirst(newEntry); + recentEntries.addFirst(newEntry); } + @Override public void loadState(Element element) { myMap.clear(); - final List keyElements = element.getChildren(KEY_ELEMENT_NAME); - for (Iterator iterator = keyElements.iterator(); iterator.hasNext();) { - Element keyElement = (Element)iterator.next(); - final String key = keyElement.getAttributeValue(NAME_ATTR); + for (Element keyElement : element.getChildren(KEY_ELEMENT_NAME)) { LinkedList recents = new LinkedList(); - final List children = keyElement.getChildren(RECENT_ELEMENT_NAME); - for (Iterator iterator1 = children.iterator(); iterator1.hasNext();) { - recents.addLast(iterator1.next().getAttributeValue(NAME_ATTR)); + for (Element aChildren : keyElement.getChildren(RECENT_ELEMENT_NAME)) { + recents.addLast(aChildren.getAttributeValue(NAME_ATTR)); } - myMap.put(key, recents); + myMap.put(keyElement.getAttributeValue(NAME_ATTR), recents); } } + @Override public Element getState() { Element element = new Element("state"); - final Set>> entries = myMap.entrySet(); - for (Map.Entry> entry : entries) { - final Element keyElement = new Element(KEY_ELEMENT_NAME); + for (Map.Entry> entry : myMap.entrySet()) { + Element keyElement = new Element(KEY_ELEMENT_NAME); keyElement.setAttribute(NAME_ATTR, entry.getKey()); - final LinkedList recents = entry.getValue(); - for (String recent : recents) { - final Element recentElement = new Element(RECENT_ELEMENT_NAME); - recentElement.setAttribute(NAME_ATTR, recent); - keyElement.addContent(recentElement); + for (String recent : entry.getValue()) { + keyElement.addContent(new Element(RECENT_ELEMENT_NAME).setAttribute(NAME_ATTR, recent)); } element.addContent(keyElement); }