• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Camelcade / Perl5-IDEA / #525521653

26 Jul 2025 06:20AM UTC coverage: 82.193% (-0.09%) from 82.281%
#525521653

push

github

hurricup
#3058 Implemented synchronizer for the TemplateToolkitSettings

Configurable moved to the backend, because it is a part of the backend-only Perl5SettingsConfigurable

2 of 4 new or added lines in 2 files covered. (50.0%)

34 existing lines in 14 files now uncovered.

30981 of 37693 relevant lines covered (82.19%)

0.82 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

93.75
/plugin/common/src/main/java/com/perl5/lang/perl/idea/configuration/settings/PerlLocalSettings.java
1
/*
2
 * Copyright 2015-2025 Alexandr Evstigneev
3
 *
4
 * Licensed under the Apache License, Version 2.0 (the "License");
5
 * you may not use this file except in compliance with the License.
6
 * You may obtain a copy of the License at
7
 *
8
 * http://www.apache.org/licenses/LICENSE-2.0
9
 *
10
 * Unless required by applicable law or agreed to in writing, software
11
 * distributed under the License is distributed on an "AS IS" BASIS,
12
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
 * See the License for the specific language governing permissions and
14
 * limitations under the License.
15
 */
16

17
package com.perl5.lang.perl.idea.configuration.settings;
18

19
import com.intellij.openapi.components.PersistentStateComponent;
20
import com.intellij.openapi.components.State;
21
import com.intellij.openapi.components.Storage;
22
import com.intellij.openapi.project.Project;
23
import com.intellij.util.xmlb.XmlSerializerUtil;
24
import com.perl5.lang.perl.idea.PerlPathMacros;
25
import org.jetbrains.annotations.NotNull;
26
import org.jetbrains.annotations.Nullable;
27

28
import java.util.ArrayList;
29
import java.util.List;
30

31

32
@State(
33
  name = "Perl5LocalSettings",
34
  storages = @Storage(PerlPathMacros.PERL5_PROJECT_SETTINGS_FILE),
35
  perClient = true
36
)
37
public class PerlLocalSettings implements PersistentStateComponent<PerlLocalSettings> {
1✔
38
  public boolean DISABLE_NO_INTERPRETER_WARNING = false;
1✔
39
  public boolean ENABLE_REGEX_INJECTIONS = false;
1✔
40
  private String myPerlInterpreter;
41
  private List<String> myExternalLibrariesPaths = new ArrayList<>();
1✔
42

43
  public List<String> getExternalLibrariesPaths() {
44
    return myExternalLibrariesPaths;
1✔
45
  }
46

47
  public void setExternalLibrariesPaths(List<String> externalLibrariesPaths) {
48
    myExternalLibrariesPaths = new ArrayList<>(externalLibrariesPaths);
1✔
49
  }
1✔
50

51
  public String getPerlInterpreter() {
52
    return myPerlInterpreter;
1✔
53
  }
54

55
  public void setPerlInterpreter(String perlInterpreter) {
56
    myPerlInterpreter = perlInterpreter;
1✔
57
  }
1✔
58

59
  @Override
60
  public @Nullable PerlLocalSettings getState() {
UNCOV
61
    return this;
×
62
  }
63

64
  @Override
65
  public void loadState(@NotNull PerlLocalSettings state) {
66
    XmlSerializerUtil.copyBean(state, this);
1✔
67
  }
1✔
68

69
  @Override
70
  public void noStateLoaded() {
71
    loadState(new PerlLocalSettings());
1✔
72
  }
1✔
73

74
  public static @NotNull PerlLocalSettings getInstance(@NotNull Project project) {
75
    return project.getService(PerlLocalSettings.class);
1✔
76
  }
77
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc