瀏覽代碼

sdk plugins: enable NBMs to be signed with jME signature

Kirill Vainer 10 年之前
父節點
當前提交
bcbbf001ce

+ 2 - 0
sdk/jme3-core-updatecenters/nbproject/project.xml

@@ -8,6 +8,8 @@
             <module-dependencies>
                 <dependency>
                     <code-name-base>org.netbeans.modules.autoupdate.services</code-name-base>
+                    <build-prerequisite/>
+                    <compile-dependency/>
                     <run-dependency>
                         <specification-version>1.47.2</specification-version>
                     </run-dependency>

+ 1 - 0
sdk/jme3-core-updatecenters/src/META-INF/services/org.netbeans.spi.autoupdate.KeyStoreProvider

@@ -0,0 +1 @@
+com.jme3.gde.core.updatecenters.keystore.JmeKeyStoreProvider

+ 47 - 0
sdk/jme3-core-updatecenters/src/com/jme3/gde/core/updatecenters/keystore/JmeKeyStoreProvider.java

@@ -0,0 +1,47 @@
+package com.jme3.gde.core.updatecenters.keystore;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.security.KeyStore;
+import java.security.KeyStoreException;
+import java.security.NoSuchAlgorithmException;
+import java.security.cert.CertificateException;
+import org.netbeans.spi.autoupdate.KeyStoreProvider;
+import org.openide.util.Exceptions;
+
+/**
+ * Loads the jMonkeyEngine SDK Plugins certificates into the AutoUpdate system.
+ *
+ * @author Kirill Vainer
+ */
+public class JmeKeyStoreProvider implements KeyStoreProvider {
+
+    @Override
+    public KeyStore getKeyStore() {
+        InputStream in = null;
+        try {
+            in = JmeKeyStoreProvider.class.getResourceAsStream("trustedcerts.jks");
+            KeyStore store = KeyStore.getInstance("JKS");
+            store.load(in, "trustedcerts".toCharArray());
+            return store;
+        } catch (KeyStoreException ex) {
+            Exceptions.printStackTrace(ex);
+        } catch (IOException ex) {
+            Exceptions.printStackTrace(ex);
+        } catch (NoSuchAlgorithmException ex) {
+            Exceptions.printStackTrace(ex);
+        } catch (CertificateException ex) {
+            Exceptions.printStackTrace(ex);
+        } finally {
+            if (in != null) {
+                try {
+                    in.close();
+                } catch (IOException ex) {
+                    Exceptions.printStackTrace(ex);
+                }
+            }
+        }
+        return null;
+    }
+
+}

二進制
sdk/jme3-core-updatecenters/src/com/jme3/gde/core/updatecenters/keystore/trustedcerts.jks