Skip to content

Commit f300caf

Browse files
committed
Merge branch 'nb120'
2 parents 06c557f + 48b1218 commit f300caf

File tree

57 files changed

+544
-281
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+544
-281
lines changed

README.md

Lines changed: 24 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,27 @@
1-
# NetBeans CakePHP3 Plugin (Dev)
1+
# NetBeans CakePHP3/4 Plugin
22

3-
This plugin provides support for CakePHP3.
3+
This plugin provides support for CakePHP3/4.
44

55
## Requirements
66

7-
- NetBeans 8.1+
7+
- NetBeans 12.0+
88

99
## Downloads
1010

1111
- https://github.com/junichi11/cakephp3-netbeans/releases
12+
- https://plugins.netbeans.apache.org/catalogue/?id=27
1213

1314
## How To Install
1415

16+
### Via NetBeans Plugin Portal Update Center
17+
18+
- Tools > Plugins > Available Plugins
19+
- Click the "Check for Newest" button
20+
- Check "CakePHP3/4 Framework"
21+
- Click the "Install" button
22+
23+
### Use downloaded nbms
24+
1525
- Download a nbm (e.g. org-netbeans-modules-php-cake3-0.0.1-dev-201408251540.nbm)
1626
- Tools > Plugins > Downloaded > Add Plugins
1727
- Select the nbm
@@ -21,16 +31,14 @@ This plugin provides support for CakePHP3.
2131

2232
You can update to the new version by the same way as the install. You don't have to uninstall the old version.
2333

24-
Currently, this plugin is not available on NetBeans Plugin Portal. But you can update directly from NetBeans IDE when it's available on it later.
25-
2634
## How To Enable
2735

2836
- Open the project properties dialog (Right-Click your project > properties)
29-
- Frameworks > CakePHP3 > Check `Enabled`
37+
- Frameworks > CakePHP3/4 > Check `Enabled`
3038

3139
## Use Your Custom Directory Structure
3240

33-
If you just installed Cake3 via Composer, you don't have to do anything.
41+
If you just installed Cake3/4 via Composer, you don't have to do anything.
3442

3543
- Open the project properties
3644
- Set relative paths from your Source Directory to Path settings
@@ -138,12 +146,12 @@ $this->Html->docType('[Ctrl+Space]');
138146
```
139147

140148
**NOTE**
141-
At first, add a semicolon(<kbd>;</kbd>) if you want to use code completions for parameters. Tips: You can add it like the following: <kbd>Ctrl</kbd>+<kbd>;</kbd>
149+
Please add a semicolon(<kbd>;</kbd>) if you want to use code completions for parameters. Tips: You can add it like the following: <kbd>Ctrl</kbd>+<kbd>;</kbd>
142150

143151
### Smart Go To
144152

145153
This feature is not enabled by default. If you want to use it, please set the KeyMap to it.
146-
(Tools > Options > Keymap > Search `CakePHP` > CakePHP3: Smart Go To > e.g. set <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>J</kbd>)
154+
(Tools > Options > Keymap > Search `CakePHP` > CakePHP3/4: Smart Go To > e.g. set <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>J</kbd>)
147155

148156
Files related to the current editor are shown when you run this action.
149157
e.g. If your current file is a Controller, template, table, entity, testcase, conponent and helper file(s) will be shown.
@@ -224,11 +232,11 @@ The file format is the following:
224232
### Custom nodes
225233

226234
You can add some directories(nodes) under the your project tree. Controller, Model, e.t.c. are shown by default.
227-
If you want to hide/show them, please change the options.(Tools > Options > PHP > Frameworks and Tools > CakePHP3 > Custom nodes)
235+
If you want to hide/show them, please change the options.(Tools > Options > PHP > Frameworks and Tools > CakePHP3/4 > Custom nodes)
228236

229237
## Actions
230238

231-
Right-click a project > CakePHP3
239+
Right-click a project > CakePHP3/4
232240

233241
- Run Command
234242
- Run server
@@ -251,6 +259,11 @@ Refresh the version number and category paths.
251259

252260
- https://github.com/sponsors/junichi11
253261

262+
## Issues
263+
264+
If you have issues, please submit them to [GitHub Issues](https://github.com/junichi11/cakephp3-netbeans/issues) .
265+
Please don't create PRs soon.
266+
254267
## License
255268

256269
Apache License, Version 2.0

build.xml

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<property name="groupId" value="com.junichi11.netbeans.modules" />
1414
<property name="artifactId" value="netbeans-cakephp3" />
1515
<!-- also change the version of pom.xml -->
16-
<property name="version" value="0.8.0" />
16+
<property name="version" value="0.9.0" />
1717
<!-- defined maven snapshots and staging repository id and url -->
1818
<property name="ossrh-snapshots-repository-url"
1919
value="https://oss.sonatype.org/content/repositories/snapshots/" />
@@ -22,7 +22,18 @@
2222
<!-- there server id in the Maven settings.xml -->
2323
<property name="ossrh-server-id" value="ossrh" />
2424

25-
<target name="deploy" depends="nbm" description="deploy release version to Maven repository">
25+
<target name="update-version-number">
26+
<replaceregexp file="pom.xml"
27+
match="(^ &lt;version&gt;).+(&lt;/version&gt;)"
28+
replace="\1${version}\2"
29+
byline="true" />
30+
<replaceregexp file="manifest.mf"
31+
match="(OpenIDE-Module-Specification-Version:[ ]*).+"
32+
replace="\1${version}"
33+
byline="true" />
34+
</target>
35+
36+
<target name="deploy" depends="update-version-number,nbm" description="deploy release version to Maven repository">
2637
<move file="${build}/org-netbeans-modules-php-cake3.nbm" toFile="${build}/${artifactId}-${version}.nbm"/>
2738
<artifact:mvn>
2839
<arg value="org.apache.maven.plugins:maven-gpg-plugin:1.3:sign-and-deploy-file" />

manifest.mf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ AutoUpdate-Show-In-Client: true
33
OpenIDE-Module: org.netbeans.modules.php.cake3
44
OpenIDE-Module-Layer: org/netbeans/modules/php/cake3/resources/layer.xml
55
OpenIDE-Module-Localizing-Bundle: org/netbeans/modules/php/cake3/Bundle.properties
6-
OpenIDE-Module-Specification-Version: 0.8.0
6+
OpenIDE-Module-Specification-Version: 0.9.0

pom.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44
<groupId>com.junichi11.netbeans.modules</groupId>
55
<artifactId>netbeans-cakephp3</artifactId>
66
<!-- change the version of build.xml -->
7-
<version>0.8.0</version>
7+
<version>0.9.0</version>
88
<packaging>nbm</packaging>
9-
<name>NetBeans CakePHP3 Framework</name>
9+
<name>NetBeans CakePHP3/4 Framework</name>
1010
<url>https://github.com/junichi11/</url>
11-
<description>This plugin provides support for CakePHP3.</description>
11+
<description>This plugin provides support for CakePHP3/4.</description>
1212
<developers>
1313
<developer>
1414
<id>junichi11</id>
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
OpenIDE-Module-Display-Category=PHP
22
OpenIDE-Module-Long-Description=\
3-
Provides support for CakePHP3
4-
OpenIDE-Module-Name=CakePHP3 Framework
5-
OpenIDE-Module-Short-Description=Provides support for CakePHP3
3+
Provides support for CakePHP3/4.<br/><br/>Details: See <a href="https://github.com/junichi11/cakephp3-netbeans/blob/master/README.md">README.md</a>.
4+
OpenIDE-Module-Name=CakePHP3/4 Framework
5+
OpenIDE-Module-Short-Description=Provides support for CakePHP3/4

src/org/netbeans/modules/php/cake3/CakePHP3ActionsExtender.java

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@
2121
import javax.swing.Action;
2222
import org.netbeans.modules.php.api.phpmodule.PhpModule;
2323
import org.netbeans.modules.php.cake3.dotcake.Dotcake;
24-
import org.netbeans.modules.php.cake3.modules.CakePHP3Module;
25-
import org.netbeans.modules.php.cake3.modules.CakePHP3Module.Category;
24+
import org.netbeans.modules.php.cake3.modules.CakePHPModule;
25+
import org.netbeans.modules.php.cake3.modules.CakePHPModule.Category;
2626
import org.netbeans.modules.php.cake3.ui.actions.CakePHP3BaseAction;
2727
import org.netbeans.modules.php.cake3.ui.actions.CakePHP3GoToActionAction;
2828
import org.netbeans.modules.php.cake3.ui.actions.CakePHP3GoToViewAction;
@@ -50,11 +50,16 @@ public CakePHP3ActionsExtender(PhpModule phpModule) {
5050
}
5151

5252
@NbBundle.Messages({
53-
"CakePHP3ActionsExtender.menuName=CakePHP3"
53+
"# {0} - version",
54+
"CakePHP3ActionsExtender.menuName=CakePHP{0}"
5455
})
5556
@Override
5657
public String getMenuName() {
57-
return Bundle.CakePHP3ActionsExtender_menuName();
58+
CakePHPModule cakeModule = CakePHPModule.forPhpModule(phpModule);
59+
int majorVersion = cakeModule.getVersion().getMajor();
60+
assert majorVersion >= 3 : "Invalid major version:" + majorVersion; // NOI18N
61+
String version = majorVersion < 3 ? "" : String.valueOf(majorVersion);
62+
return Bundle.CakePHP3ActionsExtender_menuName(version);
5863
}
5964

6065
@Override
@@ -64,7 +69,7 @@ public List<? extends Action> getActions() {
6469
new CakePHP3RefreshModuleAction()
6570
);
6671
List<CakePHP3BaseAction> actions = new ArrayList<>(defaultActions);
67-
CakePHP3Module cakeModule = CakePHP3Module.forPhpModule(phpModule);
72+
CakePHPModule cakeModule = CakePHPModule.forPhpModule(phpModule);
6873
Dotcake dotcake = cakeModule.getDotcake();
6974
if (dotcake != null) {
7075
actions.add(new OpenDotcakeAction());
@@ -84,14 +89,14 @@ public GoToActionAction getGoToActionAction(FileObject fo, int offset) {
8489

8590
@Override
8691
public boolean isActionWithView(FileObject fo) {
87-
CakePHP3Module cakeModule = CakePHP3Module.forFileObject(fo);
88-
CakePHP3Module.Category category = cakeModule.getCategory(fo);
92+
CakePHPModule cakeModule = CakePHPModule.forFileObject(fo);
93+
CakePHPModule.Category category = cakeModule.getCategory(fo);
8994
return category == Category.CONTROLLER;
9095
}
9196

9297
@Override
9398
public boolean isViewWithAction(FileObject fo) {
94-
CakePHP3Module cakeModule = CakePHP3Module.forFileObject(fo);
99+
CakePHPModule cakeModule = CakePHPModule.forFileObject(fo);
95100
return cakeModule.isTemplateFile(fo);
96101
}
97102

src/org/netbeans/modules/php/cake3/CakePHP3FrameworkProvider.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import org.netbeans.modules.php.api.phpmodule.PhpModuleProperties;
2222
import org.netbeans.modules.php.cake3.commands.CakePHP3FrameworkCommandSupport;
2323
import org.netbeans.modules.php.cake3.editor.CakePHP3EditorExtender;
24-
import org.netbeans.modules.php.cake3.modules.CakePHP3ModuleFactory;
24+
import org.netbeans.modules.php.cake3.modules.CakePHPModuleFactory;
2525
import org.netbeans.modules.php.cake3.preferences.CakePHP3Preferences;
2626
import org.netbeans.modules.php.spi.editor.EditorExtender;
2727
import org.netbeans.modules.php.spi.framework.PhpFrameworkProvider;
@@ -46,8 +46,8 @@ public class CakePHP3FrameworkProvider extends PhpFrameworkProvider {
4646
private final BadgeIcon badgeIcon;
4747

4848
@NbBundle.Messages({
49-
"CakePHP3FrameworkProvider.name=CakePHP3",
50-
"CakePHP3FrameworkProvider.description=CakePHP3"
49+
"CakePHP3FrameworkProvider.name=CakePHP3/4",
50+
"CakePHP3FrameworkProvider.description=CakePHP3/4"
5151
})
5252
private CakePHP3FrameworkProvider() {
5353
super("cakephp3", // NOI18N
@@ -122,8 +122,8 @@ public EditorExtender getEditorExtender(PhpModule phpModule) {
122122

123123
@Override
124124
public void phpModuleClosed(PhpModule phpModule) {
125-
// release CakePHP3Module
126-
CakePHP3ModuleFactory factory = CakePHP3ModuleFactory.getInstance();
125+
// release CakePHPModule
126+
CakePHPModuleFactory factory = CakePHPModuleFactory.getInstance();
127127
factory.remove(phpModule);
128128
}
129129

src/org/netbeans/modules/php/cake3/CakePHP3ModuleCustomizerExtender.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import javax.swing.event.ChangeListener;
2222
import org.netbeans.modules.php.api.phpmodule.PhpModule;
2323
import org.netbeans.modules.php.api.validation.ValidationResult;
24-
import org.netbeans.modules.php.cake3.modules.CakePHP3ModuleFactory;
24+
import org.netbeans.modules.php.cake3.modules.CakePHPModuleFactory;
2525
import org.netbeans.modules.php.cake3.preferences.CakePHP3Preferences;
2626
import org.netbeans.modules.php.cake3.ui.customizer.CakePHP3CustomizerPanel;
2727
import org.netbeans.modules.php.cake3.validators.CakePHP3CustomizerValidator;
@@ -65,7 +65,7 @@ public CakePHP3ModuleCustomizerExtender(PhpModule phpModule) {
6565
}
6666

6767
@NbBundle.Messages({
68-
"CakePHP3ModuleCustomizerExtender.displayName=CakePHP3"
68+
"CakePHP3ModuleCustomizerExtender.displayName=CakePHP3/4"
6969
})
7070
@Override
7171
public String getDisplayName() {
@@ -149,7 +149,7 @@ public EnumSet<Change> save(PhpModule phpModule) {
149149
CakePHP3Preferences.setJsUrl(phpModule, p.getJs());
150150
CakePHP3Preferences.setDotcakePath(phpModule, p.getDotcakePath());
151151
// release CakePHP3Module
152-
CakePHP3ModuleFactory.getInstance().remove(phpModule);
152+
CakePHPModuleFactory.getInstance().remove(phpModule);
153153
return EnumSet.of(Change.FRAMEWORK_CHANGE);
154154
}
155155

src/org/netbeans/modules/php/cake3/ConfigurationFiles.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import java.util.List;
2222
import javax.swing.event.ChangeListener;
2323
import org.netbeans.modules.php.api.phpmodule.PhpModule;
24-
import org.netbeans.modules.php.cake3.modules.CakePHP3Module;
24+
import org.netbeans.modules.php.cake3.modules.CakePHPModule;
2525
import org.netbeans.modules.php.spi.phpmodule.ImportantFilesImplementation;
2626
import org.openide.filesystems.FileChangeAdapter;
2727
import org.openide.filesystems.FileEvent;
@@ -64,8 +64,8 @@ public Collection<FileInfo> getFiles() {
6464
}
6565

6666
private synchronized List<FileObject> getConfigDirectories() {
67-
CakePHP3Module cakeModule = CakePHP3Module.forPhpModule(phpModule);
68-
List<FileObject> directories = cakeModule.getDirectories(CakePHP3Module.Base.APP, CakePHP3Module.Category.CONFIG, null);
67+
CakePHPModule cakeModule = CakePHPModule.forPhpModule(phpModule);
68+
List<FileObject> directories = cakeModule.getDirectories(CakePHPModule.Base.APP, CakePHPModule.Category.CONFIG, null);
6969
if (!isInitialized) {
7070
isInitialized = true;
7171
for (FileObject directory : directories) {

src/org/netbeans/modules/php/cake3/commands/Cake3Script.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@
4040
import org.netbeans.modules.php.api.phpmodule.PhpModule;
4141
import org.netbeans.modules.php.api.util.UiUtils;
4242
import org.netbeans.modules.php.cake3.CakeVersion;
43-
import org.netbeans.modules.php.cake3.modules.CakePHP3Module;
44-
import org.netbeans.modules.php.cake3.modules.CakePHP3Module.Base;
43+
import org.netbeans.modules.php.cake3.modules.CakePHPModule;
44+
import org.netbeans.modules.php.cake3.modules.CakePHPModule.Base;
4545
import org.netbeans.modules.php.spi.framework.commands.FrameworkCommand;
4646
import org.openide.DialogDisplayer;
4747
import org.openide.NotifyDescriptor;
@@ -117,7 +117,7 @@ public static Cake3Script forPhpModule(PhpModule phpModule, boolean warn) throws
117117
}
118118

119119
private static FileObject getScript(PhpModule phpModule) {
120-
CakePHP3Module module = CakePHP3Module.forPhpModule(phpModule);
120+
CakePHPModule module = CakePHPModule.forPhpModule(phpModule);
121121
if (module == null) {
122122
return null;
123123
}
@@ -276,10 +276,11 @@ private List<FrameworkCommand> getFrameworkCommandsInternalXml(PhpModule phpModu
276276

277277
private List<String> getCommandListParams(PhpModule phpModule) {
278278
List<String> params = new ArrayList<>();
279-
CakePHP3Module cakeModule = CakePHP3Module.forPhpModule(phpModule);
279+
CakePHPModule cakeModule = CakePHPModule.forPhpModule(phpModule);
280280
CakeVersion version = cakeModule.getVersion();
281281
if (version != null) {
282-
if (version.getMajor() >= 3 && version.getMinor() >= 5) {
282+
if ((version.getMajor() >= 3 && version.getMinor() >= 5)
283+
|| version.getMajor() >= 4) { // cakephp 4
283284
params.addAll(COMMAND_LIST_XML_COMMAND_350);
284285
} else {
285286
params.addAll(COMMAND_LIST_XML_COMMAND);
@@ -326,7 +327,7 @@ private ExecutionDescriptor getSilentDescriptor() {
326327
}
327328

328329
private PhpExecutable createPhpExecutable(PhpModule phpModule) {
329-
CakePHP3Module module = CakePHP3Module.forPhpModule(phpModule);
330+
CakePHPModule module = CakePHPModule.forPhpModule(phpModule);
330331
List<FileObject> directories = module.getDirectories(Base.APP);
331332
PhpExecutable phpExecutable = new PhpExecutable(cakePath)
332333
.viaAutodetection(true);

0 commit comments

Comments
 (0)