Skip to content

Commit 3f8a8e7

Browse files
author
Vitaliy Boyko
committed
Removed singleton
1 parent 08f3c1b commit 3f8a8e7

File tree

5 files changed

+16
-16
lines changed

5 files changed

+16
-16
lines changed

src/com/magento/idea/magento2plugin/indexes/EventIndex.java

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,19 +21,13 @@
2121

2222
public class EventIndex {
2323

24-
private static EventIndex INSTANCE; //NOPMD
25-
private Project project;
24+
private final Project project;
2625

2726
/**
2827
* Gets singleton instance.
2928
*/
30-
public static EventIndex getInstance(final Project project) {
31-
if (null == INSTANCE) { //NOPMD
32-
INSTANCE = new EventIndex();
33-
}
34-
INSTANCE.project = project;
35-
36-
return INSTANCE;
29+
public EventIndex(final Project project) {
30+
this.project = project;
3731
}
3832

3933
/**

src/com/magento/idea/magento2plugin/inspections/xml/ObserverDeclarationInspection.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ public class ObserverDeclarationInspection extends PhpInspection {
4444

4545
@NotNull
4646
@Override
47+
@SuppressWarnings({"PMD.AvoidInstantiatingObjectsInLoops"})
4748
public PsiElementVisitor buildVisitor(
4849
final @NotNull ProblemsHolder problemsHolder,
4950
final boolean isOnTheFly
@@ -66,12 +67,12 @@ public void visitFile(final PsiFile file) {
6667
return;
6768
}
6869

69-
final EventIndex eventIndex = EventIndex.getInstance(file.getProject());
70+
final EventIndex eventIndex = new EventIndex(file.getProject());
7071
final HashMap<String, XmlTag> targetObserversHash = new HashMap<>();
7172

7273
for (final XmlTag eventXmlTag: xmlTags) {
7374
final HashMap<String, XmlTag> eventProblems = new HashMap<>();
74-
if (!eventXmlTag.getName().equals("event")) {
75+
if (!eventXmlTag.getName().equals(ModuleEventsXml.EVENT_TAG)) {
7576
continue;
7677
}
7778

@@ -236,7 +237,7 @@ private List<XmlTag> fetchObserverTagsFromEventTag(final XmlTag eventXmlTag) {
236237
}
237238

238239
for (final XmlTag observerXmlTag: observerXmlTags) {
239-
if (!observerXmlTag.getName().equals("observer")) {
240+
if (!observerXmlTag.getName().equals(ModuleEventsXml.OBSERVER_TAG)) {
240241
continue;
241242
}
242243

@@ -257,10 +258,11 @@ private void addModuleNameWhereSameObserverUsed(
257258
return;
258259
}
259260

260-
if (!moduleDeclarationTag.getName().equals("module")) {
261+
if (!moduleDeclarationTag.getName().equals(ModuleEventsXml.MODULE_TAG)) {
261262
return;
262263
}
263-
final XmlAttribute moduleNameAttribute = moduleDeclarationTag.getAttribute("name");
264+
final XmlAttribute moduleNameAttribute
265+
= moduleDeclarationTag.getAttribute(ModuleEventsXml.NAME_ATTRIBUTE);
264266
if (moduleNameAttribute == null) {
265267
return;
266268
}

src/com/magento/idea/magento2plugin/magento/files/ModuleEventsXml.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,10 @@ public class ModuleEventsXml implements ModuleFileInterface {
1919
public static final String OBSERVER_TAG = "observer";
2020
public static final String INSTANCE_ATTRIBUTE = "instance";
2121
public static final String EVENT_TAG = "event";
22+
public static final String MODULE_TAG = "module";
23+
24+
//attributes
25+
public static final String NAME_ATTRIBUTE = "name";
2226

2327
private static final ModuleEventsXml INSTANCE = new ModuleEventsXml();
2428

src/com/magento/idea/magento2plugin/reference/provider/EventDispatchReferenceProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public PsiReference[] getReferencesByElement(
2929
) {
3030
final String value = StringUtil.unquoteString(element.getText());
3131
final List<PsiReference> psiReferences = new ArrayList<>();
32-
final Collection<PsiElement> targets = EventIndex.getInstance(element.getProject())
32+
final Collection<PsiElement> targets = new EventIndex(element.getProject())
3333
.getEventElements(
3434
value,
3535
GlobalSearchScope.getScopeRestrictedByFileTypes(

src/com/magento/idea/magento2plugin/reference/provider/ObserverNameReferenceProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public class ObserverNameReferenceProvider extends PsiReferenceProvider {
3030

3131
final String observerName = ((XmlAttributeValueImpl) element).getValue();
3232
final Collection<PsiElement> observers
33-
= EventIndex.getInstance(element.getProject()).getObservers(
33+
= new EventIndex(element.getProject()).getObservers(
3434
eventName, observerName, GlobalSearchScope.allScope(element.getProject())
3535
);
3636

0 commit comments

Comments
 (0)