forked from magento/magento2-phpstorm-plugin
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathIndexManager.java
57 lines (54 loc) · 1.97 KB
/
IndexManager.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
package com.magento.idea.magento2plugin.indexes;
import com.intellij.util.indexing.FileBasedIndexImpl;
import com.intellij.util.indexing.ID;
import com.magento.idea.magento2plugin.stubs.indexes.*;
import com.magento.idea.magento2plugin.stubs.indexes.PluginIndex;
import com.magento.idea.magento2plugin.stubs.indexes.js.MagentoLibJsIndex;
import com.magento.idea.magento2plugin.stubs.indexes.js.RequireJsIndex;
import com.magento.idea.magento2plugin.stubs.indexes.graphql.GraphQlResolverIndex;
import com.magento.idea.magento2plugin.stubs.indexes.mftf.*;
import com.magento.idea.magento2plugin.stubs.indexes.xml.PhpClassNameIndex;
public class IndexManager {
public static void manualReindex() {
ID<?, ?>[] indexIds = new ID<?, ?>[] {
// php
ModulePackageIndex.KEY,
// xml|di configuration
PluginIndex.KEY,
VirtualTypeIndex.KEY,
// layouts
BlockNameIndex.KEY,
ContainerNameIndex.KEY,
// events
EventNameIndex.KEY,
EventObserverIndex.KEY,
// webapi
WebApiTypeIndex.KEY,
ModuleNameIndex.KEY,
PhpClassNameIndex.KEY,
//require_js
RequireJsIndex.KEY,
MagentoLibJsIndex.KEY,
// mftf
ActionGroupIndex.KEY,
DataIndex.KEY,
PageIndex.KEY,
SectionIndex.KEY,
TestNameIndex.KEY,
//graphql
GraphQlResolverIndex.KEY
};
for (ID<?, ?> id: indexIds) {
try {
FileBasedIndexImpl.getInstance().requestRebuild(id);
FileBasedIndexImpl.getInstance().scheduleRebuild(id, new Throwable());
} catch (NullPointerException exception) {
//that's fine, indexer is not present in map java.util.Map.get
}
}
}
}