This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

View | Details | Raw Unified | Return to bug 46833
Collapse All | Expand All

(-)ide/applemenu/manifest.mf (+1 lines)
Lines 4-9 Link Here
4
OpenIDE-Module-Install: org/netbeans/modules/applemenu/Install.class
4
OpenIDE-Module-Install: org/netbeans/modules/applemenu/Install.class
5
OpenIDE-Module-Layer: org/netbeans/modules/applemenu/layer.xml
5
OpenIDE-Module-Layer: org/netbeans/modules/applemenu/layer.xml
6
OpenIDE-Module-Specification-Version: 1.1
6
OpenIDE-Module-Specification-Version: 1.1
7
OpenIDE-Module-Requires: org.openide.modules.os.MacOSX
7
8
8
9
9
10
(-)ide/applemenu/nbproject/project.properties (+1 lines)
Lines 11-13 Link Here
11
11
12
nbm.needs.restart=true
12
nbm.needs.restart=true
13
cp.extra=eawtstub/dist/eawtstub.jar
13
cp.extra=eawtstub/dist/eawtstub.jar
14
is.eager=true
(-)core/src/org/netbeans/core/modules/Module.java (+12 lines)
Lines 438-443 Link Here
438
                    throw new IllegalArgumentException("Duplicate entries in OpenIDE-Module-Provides: " + providesS); // NOI18N
438
                    throw new IllegalArgumentException("Duplicate entries in OpenIDE-Module-Provides: " + providesS); // NOI18N
439
                }
439
                }
440
            }
440
            }
441
            String[] additionalProvides = mgr.refineProvides (this);
442
            if (additionalProvides != null) {
443
                if (provides == null) {
444
                    provides = additionalProvides;
445
                } else {
446
                    ArrayList l = new ArrayList ();
447
                    l.addAll (Arrays.asList (provides));
448
                    l.addAll (Arrays.asList (additionalProvides));
449
                    provides = (String[])l.toArray (provides);
450
                }
451
            }
452
            
441
            // Exports
453
            // Exports
442
            String exportsS = attr.getValue("OpenIDE-Module-Public-Packages"); // NOI18N
454
            String exportsS = attr.getValue("OpenIDE-Module-Public-Packages"); // NOI18N
443
            if (exportsS != null) {
455
            if (exportsS != null) {
(-)core/src/org/netbeans/core/modules/ModuleInstaller.java (+8 lines)
Lines 156-161 Link Here
156
    public void refineClassLoader(Module m, List parents) {
156
    public void refineClassLoader(Module m, List parents) {
157
        // do nothing
157
        // do nothing
158
    }
158
    }
159
160
    /** Optionally adds additional token for the module.
161
     * @param m the module to add token to 
162
     * @return null or list of tokens this module provides
163
     */
164
    public String[] refineProvides (Module m) {
165
        return null;
166
    }
159
    
167
    
160
    /** Is this package special in that the package domain cache should be disabled for it?
168
    /** Is this package special in that the package domain cache should be disabled for it?
161
     * The result must never change between subsequent calls for the same argument.
169
     * The result must never change between subsequent calls for the same argument.
(-)core/src/org/netbeans/core/modules/ModuleManager.java (+5 lines)
Lines 500-505 Link Here
500
    void refineDependencies(Module m, Set dependencies) {
500
    void refineDependencies(Module m, Set dependencies) {
501
        installer.refineDependencies(m, dependencies);
501
        installer.refineDependencies(m, dependencies);
502
    }
502
    }
503
    /** Allows the installer to add provides (used to provide name of platform we run on)
504
     */
505
    String[] refineProvides (Module m) {
506
        return installer.refineProvides (m);
507
    }
503
    /** Used by Module to communicate with the ModuleInstaller re. classloader. */
508
    /** Used by Module to communicate with the ModuleInstaller re. classloader. */
504
    void refineClassLoader(Module m, List parents) {
509
    void refineClassLoader(Module m, List parents) {
505
        // #27853:
510
        // #27853:
(-)core/src/org/netbeans/core/modules/NbInstaller.java (+22 lines)
Lines 721-726 Link Here
721
        }
721
        }
722
    }
722
    }
723
    
723
    
724
    public String[] refineProvides (Module m) {
725
        if (m.getCodeNameBase ().equals ("org.openide")) { // NOI18N
726
            ArrayList tokens = new ArrayList ();
727
            if (org.openide.util.Utilities.isUnix ()) {
728
                tokens.add ("org.openide.modules.os.Unix"); // NOI18N
729
            } 
730
            
731
            if (org.openide.util.Utilities.isWindows ()) {
732
                tokens.add ("org.openide.modules.os.Windows"); // NOI18N
733
            } 
734
            
735
            if ((org.openide.util.Utilities.getOperatingSystem () & org.openide.util.Utilities.OS_MAC) != 0) {
736
                tokens.add ("org.openide.modules.os.MacOSX"); // NOI18N
737
            }
738
            
739
            return tokens.isEmpty() ? null : (String[])tokens.toArray (new String[0]);
740
            
741
        }
742
        return null;
743
    }
744
    
745
    
724
    private void addLoadersRecursively(List parents, Dependency[] deps, Set parentModules, Module master, Set addedParentNames) {
746
    private void addLoadersRecursively(List parents, Dependency[] deps, Set parentModules, Module master, Set addedParentNames) {
725
        for (int i = 0; i < deps.length; i++) {
747
        for (int i = 0; i < deps.length; i++) {
726
            if (deps[i].getType() != Dependency.TYPE_MODULE) {
748
            if (deps[i].getType() != Dependency.TYPE_MODULE) {

Return to bug 46833