// -*- mode: java; c-basic-offset: 2; -*- // Copyright 2009-2011 Google, All Rights reserved // Copyright 2011-2012 MIT, All rights reserved // Released under the Apache License, Version 2.0 // http://www.apache.org/licenses/LICENSE-2.0 package com.google.appinventor.server.util; import com.google.appinventor.common.youngandroid.YaHttpServerConstants; import com.google.common.io.Files; import com.google.common.io.Resources; import java.io.File; import java.io.IOException; import java.net.URL; /** * Helper methods for resources. * * @author lizlooney@google.com (Liz Looney) */ public final class ResourceUtil { // Jar file containing Codeblocks for Young Android public static final String CODEBLOCKS_JAR = "BlocksEditor.jar"; // Main class for Codeblocks public static final String CODEBLOCKS_MAIN = "com.google.appinventor.blockseditor.youngandroid.YaHttpServerMain"; // Apk file containing starter app private static final String STARTER_APP_APK = YaHttpServerConstants.STARTER_PHONEAPP_NAME + ".apk"; private ResourceUtil() { } /** * Returns a byte array containing the binary content of the signed * codeblocks jar. */ public static byte[] downloadSignedCodeblocksJar() throws IOException { // The codeblocks jar was signed at build time. // We expect the jar file to be in our class directory URL url = ResourceUtil.class.getResource(CODEBLOCKS_JAR); return Resources.toByteArray(url); } /** * Returns a byte array containing the binary content of the starter app apk. */ public static byte[] downloadStarterAppApk() throws IOException { // We expect the start app apk file to be in our class directory return Resources.toByteArray(ResourceUtil.class.getResource(STARTER_APP_APK)); } }