cleanup, use warn instead of info to report read error
authorVladimir Krivosheev <vladimir.krivosheev@jetbrains.com>
Tue, 15 Nov 2016 14:47:52 +0000 (15:47 +0100)
committerVladimir Krivosheev <vladimir.krivosheev@jetbrains.com>
Tue, 15 Nov 2016 15:08:14 +0000 (16:08 +0100)
platform/lang-impl/src/com/intellij/codeInsight/template/impl/TemplateContext.java
platform/lang-impl/src/com/intellij/codeInsight/template/impl/TemplateGroup.java
platform/lang-impl/src/com/intellij/codeInsight/template/impl/TemplateImpl.java
platform/lang-impl/src/com/intellij/codeInsight/template/impl/TemplateSettings.java

index ccb3a30ae3a78a6d764e0cac92cb1fb84ad91800..96e49d3bc9268a9f16fb2a5a0aec920926a29336 100644 (file)
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package com.intellij.codeInsight.template.impl;
 
-
 import com.google.common.annotations.VisibleForTesting;
 import com.intellij.codeInsight.template.TemplateContextType;
 import com.intellij.openapi.util.WriteExternalException;
@@ -88,7 +86,7 @@ public class TemplateContext {
 
   // used during initialization => no sync
   @VisibleForTesting
-  public void readTemplateContext(Element element) {
+  public void readTemplateContext(@NotNull Element element) {
     for (Element option : element.getChildren("option")) {
       String name = option.getAttributeValue("name");
       String value = option.getAttributeValue("value");
index cdfc67dc2c87495f25e587f8df037be14d9ff9c7..c9db01b08e51753ce32f9e839dfd21dcee3d3344 100644 (file)
@@ -16,7 +16,6 @@
 package com.intellij.codeInsight.template.impl;
 
 import com.intellij.openapi.options.CompoundScheme;
-import com.intellij.openapi.util.Condition;
 import com.intellij.util.containers.ContainerUtil;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
index 4fc381b5506f38b8f205c886590b5ebed802b7aa..fa99fb3c08a61f4f337e231da0ede85c87393b2b 100644 (file)
@@ -23,7 +23,6 @@ import com.intellij.openapi.options.SchemeElement;
 import com.intellij.openapi.util.text.StringUtil;
 import com.intellij.psi.tree.IElementType;
 import com.intellij.util.SmartList;
-import com.intellij.util.containers.IntArrayList;
 import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -104,8 +103,6 @@ public class TemplateImpl extends Template implements SchemeElement {
 
   private boolean myIsInline = false;
 
-
-
   public TemplateImpl(@NotNull String key, @NotNull String group) {
     this(key, null, group);
     toParseSegments = false;
@@ -119,7 +116,6 @@ public class TemplateImpl extends Template implements SchemeElement {
     myGroupName = group;
   }
 
-
   @Override
   public void addTextSegment(@NotNull String text) {
     text = StringUtil.convertLineSeparators(text);
@@ -201,7 +197,7 @@ public class TemplateImpl extends Template implements SchemeElement {
     for (Property property : Property.values()) {
       boolean value = another.getValue(property);
       if (value != Template.getDefaultValue(property)) {
-        setValue(property, value);
+        setValue(property, true);
       }
     }
     for (Variable variable : another.myVariables) {
@@ -246,7 +242,8 @@ public class TemplateImpl extends Template implements SchemeElement {
     return isDeactivated;
   }
 
-  @NotNull public TemplateContext getTemplateContext() {
+  @NotNull
+  public TemplateContext getTemplateContext() {
     return myTemplateContext;
   }
 
@@ -273,18 +270,6 @@ public class TemplateImpl extends Template implements SchemeElement {
     return -1;
   }
 
-  public IntArrayList getVariableSegmentNumbers(String variableName) {
-    IntArrayList result = new IntArrayList();
-    parseSegments();
-    for (int i = 0; i < mySegments.size(); i++) {
-      Segment segment = mySegments.get(i);
-      if (segment.name.equals(variableName)) {
-        result.add(i);
-      }
-    }
-    return result;
-  }
-
   @NotNull
   @Override
   public String getTemplateText() {
index 95f1883f5f554e83214b3d15be15e964a913eb07..db19233a50ac85388877c0bcd5b2f2eaf07d32e3 100644 (file)
@@ -31,6 +31,7 @@ import com.intellij.openapi.util.Comparing;
 import com.intellij.openapi.util.InvalidDataException;
 import com.intellij.openapi.util.JDOMUtil;
 import com.intellij.openapi.util.WriteExternalException;
+import com.intellij.openapi.util.text.StringUtil;
 import com.intellij.util.JdomKt;
 import com.intellij.util.SmartList;
 import com.intellij.util.containers.MultiMap;
@@ -410,7 +411,8 @@ public class TemplateSettings implements PersistentStateComponent<TemplateSettin
     }
   }
 
-  private static TemplateImpl createTemplate(String key, String string, String group, String description, String shortcut, String id) {
+  @NotNull
+  private static TemplateImpl createTemplate(@NotNull String key, String string, @NotNull String group, String description, @Nullable String shortcut, String id) {
     TemplateImpl template = new TemplateImpl(key, string, group);
     template.setId(id);
     template.setDescription(description);
@@ -476,7 +478,9 @@ public class TemplateSettings implements PersistentStateComponent<TemplateSettin
     }
 
     String groupName = element.getAttributeValue(GROUP);
-    if (groupName == null || groupName.isEmpty()) groupName = defGroupName;
+    if (StringUtil.isEmpty(groupName)) {
+      groupName = defGroupName;
+    }
 
     TemplateGroup result = new TemplateGroup(groupName, element.getAttributeValue("REPLACE"));
 
@@ -488,7 +492,7 @@ public class TemplateSettings implements PersistentStateComponent<TemplateSettin
         template = readTemplateFromElement(groupName, child, classLoader);
       }
       catch (Exception e) {
-        LOG.info("failed to load template " + element.getAttributeValue(NAME), e);
+        LOG.warn("failed to load template " + element.getAttributeValue(NAME), e);
         continue;
       }
 
@@ -549,6 +553,7 @@ public class TemplateSettings implements PersistentStateComponent<TemplateSettin
     else {
       description = element.getAttributeValue(DESCRIPTION);
     }
+
     String shortcut = element.getAttributeValue(SHORTCUT);
     TemplateImpl template = createTemplate(name, value, groupName, description, shortcut, id);
 
@@ -588,9 +593,11 @@ public class TemplateSettings implements PersistentStateComponent<TemplateSettin
     element.setAttribute(VALUE, template.getString());
     if (template.getShortcutChar() == TAB_CHAR) {
       element.setAttribute(SHORTCUT, TAB);
-    } else if (template.getShortcutChar() == ENTER_CHAR) {
+    }
+    else if (template.getShortcutChar() == ENTER_CHAR) {
       element.setAttribute(SHORTCUT, ENTER);
-    } else if (template.getShortcutChar() == SPACE_CHAR) {
+    }
+    else if (template.getShortcutChar() == SPACE_CHAR) {
       element.setAttribute(SHORTCUT, SPACE);
     }
     if (template.getDescription() != null) {
@@ -599,8 +606,7 @@ public class TemplateSettings implements PersistentStateComponent<TemplateSettin
     element.setAttribute(TO_REFORMAT, Boolean.toString(template.isToReformat()));
     element.setAttribute(TO_SHORTEN_FQ_NAMES, Boolean.toString(template.isToShortenLongNames()));
     if (template.getValue(Template.Property.USE_STATIC_IMPORT_IF_POSSIBLE)
-        != Template.getDefaultValue(Template.Property.USE_STATIC_IMPORT_IF_POSSIBLE))
-    {
+        != Template.getDefaultValue(Template.Property.USE_STATIC_IMPORT_IF_POSSIBLE)) {
       element.setAttribute(USE_STATIC_IMPORT, Boolean.toString(template.getValue(Template.Property.USE_STATIC_IMPORT_IF_POSSIBLE)));
     }
     if (template.isDeactivated()) {
@@ -620,7 +626,9 @@ public class TemplateSettings implements PersistentStateComponent<TemplateSettin
       Element contextElement = new Element(CONTEXT);
       template.getTemplateContext().writeTemplateContext(contextElement);
       element.addContent(contextElement);
-    } catch (WriteExternalException ignore) {
+    }
+    catch (WriteExternalException e) {
+      LOG.warn(e);
     }
     return element;
   }