fix toString templates. Default template should overload a user's one with the same name

This commit is contained in:
Maxim.Medvedev
2011-10-21 12:46:13 +04:00
parent 48be696fb6
commit 63abcdc97d
3 changed files with 17 additions and 8 deletions
@@ -17,7 +17,7 @@ $member.name=")##
#if ($member.primitiveArray)
.append($member.name == null ? "null" : "");
for (int i = 0; $member.name != null && i < $member.name .length; ++i)
sb.append(i == 0 ? "" : ", ").append($member.name[i]);
sb.append(i == 0 ? "" : ", ").append($member.name[$i]);
#elseif ($member.objectArray)
.append($member.name == null ? "null" : Arrays.asList($member.name).toString());
#elseif ($member.string)
@@ -17,7 +17,7 @@ $member.name=")##
#if ($member.primitiveArray)
.append($member.name == null ? "null" : "");
for (int i = 0; $member.name != null && i < $member.name .length; ++i)
sb.append(i == 0 ? "" : ", ").append($member.name[i]);
sb.append(i == 0 ? "" : ", ").append($member.name[$i]);
#elseif ($member.objectArray)
.append($member.name == null ? "null" : Arrays.asList($member.name).toString());
#elseif ($member.string)
@@ -1,5 +1,5 @@
/*
* Copyright 2000-2009 JetBrains s.r.o.
* Copyright 2000-2011 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.
@@ -69,13 +69,22 @@ public class TemplatesManager implements PersistentStateComponent<TemplatesState
}
}
public Collection<TemplateResource> getAllTemplates() {
Collection<TemplateResource> templates = new LinkedHashSet<TemplateResource>(Arrays.asList(TemplateResourceLocator.getDefaultTemplates()));
templates.addAll(myState.templates);
return templates;
public Collection<TemplateResource> getAllTemplates() {
TemplateResource[] defaultTemplates = TemplateResourceLocator.getDefaultTemplates();
HashSet<String> names = new HashSet<String>();
for (TemplateResource defaultTemplate : defaultTemplates) {
names.add(defaultTemplate.getFileName());
}
Collection<TemplateResource> templates = new LinkedHashSet<TemplateResource>(Arrays.asList(defaultTemplates));
for (TemplateResource template : myState.templates) {
if (!names.contains(template.getFileName())) {
templates.add(template);
}
}
return templates;
}
public TemplateResource getDefaultTemplate() {
public TemplateResource getDefaultTemplate() {
for (TemplateResource template : getAllTemplates()) {
if (Comparing.equal(template.getFileName(), myState.defaultTempalteName)) {
return template;