Repository: incubator-samoa Updated Branches: refs/heads/master 8f888b715 -> c1d42d2f3
SAMOA-31: Remove unused Utils class Close #49 Project: http://git-wip-us.apache.org/repos/asf/incubator-samoa/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-samoa/commit/c1d42d2f Tree: http://git-wip-us.apache.org/repos/asf/incubator-samoa/tree/c1d42d2f Diff: http://git-wip-us.apache.org/repos/asf/incubator-samoa/diff/c1d42d2f Branch: refs/heads/master Commit: c1d42d2f3c066d1e00845146e8d58b376501570e Parents: 8f888b7 Author: Gianmarco De Francisci Morales <[email protected]> Authored: Sun Mar 6 11:52:05 2016 +0300 Committer: Gianmarco De Francisci Morales <[email protected]> Committed: Sun Mar 13 10:59:04 2016 +0300 ---------------------------------------------------------------------- .../main/java/org/apache/samoa/utils/Utils.java | 183 ------------------- 1 file changed, 183 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-samoa/blob/c1d42d2f/samoa-api/src/main/java/org/apache/samoa/utils/Utils.java ---------------------------------------------------------------------- diff --git a/samoa-api/src/main/java/org/apache/samoa/utils/Utils.java b/samoa-api/src/main/java/org/apache/samoa/utils/Utils.java deleted file mode 100644 index f8ae5ef..0000000 --- a/samoa-api/src/main/java/org/apache/samoa/utils/Utils.java +++ /dev/null @@ -1,183 +0,0 @@ -package org.apache.samoa.utils; - -/* - * #%L - * SAMOA - * %% - * Copyright (C) 2014 - 2015 Apache Software Foundation - * %% - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * #L% - */ - -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; -import java.util.jar.Attributes; -import java.util.jar.JarOutputStream; -import java.util.jar.Manifest; -import java.util.zip.ZipEntry; - -/** - * Utils class for building and deploying applications programmatically. - * - * @author severien - * - */ -public class Utils { - - public static void buildSamoaPackage() { - try { - String output = "/tmp/samoa/samoa.jar";// System.getProperty("user.home") + "/samoa.jar"; - Manifest manifest = createManifest(); - - BufferedOutputStream bo; - - bo = new BufferedOutputStream(new FileOutputStream(output)); - JarOutputStream jo = new JarOutputStream(bo, manifest); - - String baseDir = System.getProperty("user.dir"); - System.out.println(baseDir); - - File samoaJar = new File(baseDir + "/target/samoa-0.0.1-SNAPSHOT.jar"); - addEntry(jo, samoaJar, baseDir + "/target/", "/app/"); - addLibraries(jo); - - jo.close(); - bo.close(); - } catch (IOException e) { - e.printStackTrace(); - } - - } - - // TODO should get the modules file from the parameters - public static void buildModulesPackage(List<String> modulesNames) { - System.out.println(System.getProperty("user.dir")); - try { - String baseDir = System.getProperty("user.dir"); - List<File> filesArray = new ArrayList<>(); - for (String module : modulesNames) { - module = "/" + module.replace(".", "/") + ".class"; - filesArray.add(new File(baseDir + module)); - } - String output = System.getProperty("user.home") + "/modules.jar"; - - Manifest manifest = new Manifest(); - manifest.getMainAttributes().put(Attributes.Name.MANIFEST_VERSION, - "1.0"); - manifest.getMainAttributes().put(Attributes.Name.IMPLEMENTATION_URL, - "http://samoa.yahoo.com"); - manifest.getMainAttributes().put( - Attributes.Name.IMPLEMENTATION_VERSION, "0.1"); - manifest.getMainAttributes().put(Attributes.Name.IMPLEMENTATION_VENDOR, - "Yahoo"); - manifest.getMainAttributes().put( - Attributes.Name.IMPLEMENTATION_VENDOR_ID, "SAMOA"); - - BufferedOutputStream bo; - - bo = new BufferedOutputStream(new FileOutputStream(output)); - JarOutputStream jo = new JarOutputStream(bo, manifest); - - File[] files = filesArray.toArray(new File[filesArray.size()]); - addEntries(jo, files, baseDir, ""); - - jo.close(); - bo.close(); - } catch (IOException e) { - e.printStackTrace(); - } - - } - - private static void addLibraries(JarOutputStream jo) { - try { - String baseDir = System.getProperty("user.dir"); - String libDir = baseDir + "/target/lib"; - File inputFile = new File(libDir); - - File[] files = inputFile.listFiles(); - for (File file : files) { - addEntry(jo, file, baseDir, "lib"); - } - jo.close(); - - } catch (IOException e) { - e.printStackTrace(); - } - } - - private static void addEntries(JarOutputStream jo, File[] files, String baseDir, String rootDir) { - for (File file : files) { - - if (!file.isDirectory()) { - addEntry(jo, file, baseDir, rootDir); - } else { - File dir = new File(file.getAbsolutePath()); - addEntries(jo, dir.listFiles(), baseDir, rootDir); - } - } - } - - private static void addEntry(JarOutputStream jo, File file, String baseDir, String rootDir) { - try { - BufferedInputStream bi = new BufferedInputStream(new FileInputStream(file)); - - String path = file.getAbsolutePath().replaceFirst(baseDir, rootDir); - jo.putNextEntry(new ZipEntry(path)); - - byte[] buf = new byte[1024]; - int anz; - while ((anz = bi.read(buf)) != -1) { - jo.write(buf, 0, anz); - } - bi.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - public static Manifest createManifest() { - Manifest manifest = new Manifest(); - manifest.getMainAttributes().put(Attributes.Name.MANIFEST_VERSION, "1.0"); - manifest.getMainAttributes().put(Attributes.Name.IMPLEMENTATION_URL, "http://samoa.yahoo.com"); - manifest.getMainAttributes().put(Attributes.Name.IMPLEMENTATION_VERSION, "0.1"); - manifest.getMainAttributes().put(Attributes.Name.IMPLEMENTATION_VENDOR, "Yahoo"); - manifest.getMainAttributes().put(Attributes.Name.IMPLEMENTATION_VENDOR_ID, "SAMOA"); - Attributes s4Attributes = new Attributes(); - s4Attributes.putValue("S4-App-Class", "path.to.Class"); - Attributes.Name name = new Attributes.Name("S4-App-Class"); - Attributes.Name S4Version = new Attributes.Name("S4-Version"); - manifest.getMainAttributes().put(name, "samoa.topology.impl.DoTaskApp"); - manifest.getMainAttributes().put(S4Version, "0.6.0-incubating"); - return manifest; - } - - public static Object getInstance(String className) { - Class<?> cls; - Object obj = null; - try { - cls = Class.forName(className); - obj = cls.newInstance(); - } catch (ClassNotFoundException | InstantiationException | IllegalAccessException e) { - e.printStackTrace(); - } - return obj; - } -}
