Search in sources :

Example 81 with URISyntaxException

use of java.net.URISyntaxException in project flink by apache.

the class FlinkSubmitter method submitTopology.

/**
	 * Submits a topology to run on the cluster. A topology runs forever or until explicitly killed. The given {@link
	 * FlinkProgressListener} is ignored because progress bars are not supported by Flink.
	 *
	 * @param name
	 * 		the name of the storm.
	 * @param stormConf
	 * 		the topology-specific configuration. See {@link Config}.
	 * @param topology
	 * 		the processing to execute.
	 * @throws AlreadyAliveException
	 * 		if a topology with this name is already running
	 * @throws InvalidTopologyException
	 * 		if an invalid topology was submitted
	 */
@SuppressWarnings({ "rawtypes", "unchecked" })
public static void submitTopology(final String name, final Map stormConf, final FlinkTopology topology) throws AlreadyAliveException, InvalidTopologyException {
    if (!Utils.isValidConf(stormConf)) {
        throw new IllegalArgumentException("Storm conf is not valid. Must be json-serializable");
    }
    final Configuration flinkConfig = GlobalConfiguration.loadConfiguration();
    if (!stormConf.containsKey(Config.NIMBUS_HOST)) {
        stormConf.put(Config.NIMBUS_HOST, flinkConfig.getString(ConfigConstants.JOB_MANAGER_IPC_ADDRESS_KEY, "localhost"));
    }
    if (!stormConf.containsKey(Config.NIMBUS_THRIFT_PORT)) {
        stormConf.put(Config.NIMBUS_THRIFT_PORT, new Integer(flinkConfig.getInteger(ConfigConstants.JOB_MANAGER_IPC_PORT_KEY, 6123)));
    }
    final String serConf = JSONValue.toJSONString(stormConf);
    final FlinkClient client = FlinkClient.getConfiguredClient(stormConf);
    try {
        if (client.getTopologyJobId(name) != null) {
            throw new RuntimeException("Topology with name `" + name + "` already exists on cluster");
        }
        String localJar = System.getProperty("storm.jar");
        if (localJar == null) {
            try {
                for (final URL url : ((ContextEnvironment) ExecutionEnvironment.getExecutionEnvironment()).getJars()) {
                    // TODO verify that there is only one jar
                    localJar = new File(url.toURI()).getAbsolutePath();
                }
            } catch (final URISyntaxException e) {
            // ignore
            } catch (final ClassCastException e) {
            // ignore
            }
        }
        logger.info("Submitting topology " + name + " in distributed mode with conf " + serConf);
        client.submitTopologyWithOpts(name, localJar, topology);
    } catch (final InvalidTopologyException e) {
        logger.warn("Topology submission exception: " + e.get_msg());
        throw e;
    } catch (final AlreadyAliveException e) {
        logger.warn("Topology already alive exception", e);
        throw e;
    }
    logger.info("Finished submitting topology: " + name);
}
Also used : ContextEnvironment(org.apache.flink.client.program.ContextEnvironment) Configuration(org.apache.flink.configuration.Configuration) GlobalConfiguration(org.apache.flink.configuration.GlobalConfiguration) InvalidTopologyException(org.apache.storm.generated.InvalidTopologyException) URISyntaxException(java.net.URISyntaxException) AlreadyAliveException(org.apache.storm.generated.AlreadyAliveException) URL(java.net.URL) File(java.io.File)

Example 82 with URISyntaxException

use of java.net.URISyntaxException in project flink by apache.

the class FileSystem method getUnguardedFileSystem.

@Internal
public static FileSystem getUnguardedFileSystem(URI uri) throws IOException {
    FileSystem fs;
    URI asked = uri;
    synchronized (SYNCHRONIZATION_OBJECT) {
        if (uri.getScheme() == null) {
            try {
                if (defaultScheme == null) {
                    defaultScheme = new URI(ConfigConstants.DEFAULT_FILESYSTEM_SCHEME);
                }
                uri = new URI(defaultScheme.getScheme(), null, defaultScheme.getHost(), defaultScheme.getPort(), uri.getPath(), null, null);
            } catch (URISyntaxException e) {
                try {
                    if (defaultScheme.getScheme().equals("file")) {
                        uri = new URI("file", null, new Path(new File(uri.getPath()).getAbsolutePath()).toUri().getPath(), null);
                    }
                } catch (URISyntaxException ex) {
                    // we tried to repair it, but could not. report the scheme error
                    throw new IOException("The URI '" + uri.toString() + "' is not valid.");
                }
            }
        }
        if (uri.getScheme() == null) {
            throw new IOException("The URI '" + uri + "' is invalid.\n" + "The fs.default-scheme = " + defaultScheme + ", the requested URI = " + asked + ", and the final URI = " + uri + ".");
        }
        if (uri.getScheme().equals("file") && uri.getAuthority() != null && !uri.getAuthority().isEmpty()) {
            String supposedUri = "file:///" + uri.getAuthority() + uri.getPath();
            throw new IOException("Found local file path with authority '" + uri.getAuthority() + "' in path '" + uri.toString() + "'. Hint: Did you forget a slash? (correct path would be '" + supposedUri + "')");
        }
        final FSKey key = new FSKey(uri.getScheme(), uri.getAuthority());
        // See if there is a file system object in the cache
        if (CACHE.containsKey(key)) {
            return CACHE.get(key);
        }
        if (!isFlinkSupportedScheme(uri.getScheme())) {
            // no build in support for this file system. Falling back to Hadoop's FileSystem impl.
            Class<?> wrapperClass = getHadoopWrapperClassNameForFileSystem(uri.getScheme());
            if (wrapperClass != null) {
                // hadoop has support for the FileSystem
                FSKey wrappedKey = new FSKey(HADOOP_WRAPPER_SCHEME + "+" + uri.getScheme(), uri.getAuthority());
                if (CACHE.containsKey(wrappedKey)) {
                    return CACHE.get(wrappedKey);
                }
                // cache didn't contain the file system. instantiate it:
                // by now we know that the HadoopFileSystem wrapper can wrap the file system.
                fs = instantiateHadoopFileSystemWrapper(wrapperClass);
                fs.initialize(uri);
                CACHE.put(wrappedKey, fs);
            } else {
                // we can not read from this file system.
                throw new IOException("No file system found with scheme " + uri.getScheme() + ", referenced in file URI '" + uri.toString() + "'.");
            }
        } else {
            // we end up here if we have a file system with build-in flink support.
            String fsClass = FSDIRECTORY.get(uri.getScheme());
            if (fsClass.equals(HADOOP_WRAPPER_FILESYSTEM_CLASS)) {
                fs = instantiateHadoopFileSystemWrapper(null);
            } else {
                fs = instantiateFileSystem(fsClass);
            }
            // Initialize new file system object
            fs.initialize(uri);
            // Add new file system object to cache
            CACHE.put(key, fs);
        }
    }
    return fs;
}
Also used : LocalFileSystem(org.apache.flink.core.fs.local.LocalFileSystem) URISyntaxException(java.net.URISyntaxException) IOException(java.io.IOException) URI(java.net.URI) File(java.io.File) Internal(org.apache.flink.annotation.Internal)

Example 83 with URISyntaxException

use of java.net.URISyntaxException in project flink by apache.

the class Path method read.

// ------------------------------------------------------------------------
//  Legacy Serialization
// ------------------------------------------------------------------------
@Override
public void read(DataInputView in) throws IOException {
    final boolean isNotNull = in.readBoolean();
    if (isNotNull) {
        final String scheme = StringUtils.readNullableString(in);
        final String userInfo = StringUtils.readNullableString(in);
        final String host = StringUtils.readNullableString(in);
        final int port = in.readInt();
        final String path = StringUtils.readNullableString(in);
        final String query = StringUtils.readNullableString(in);
        final String fragment = StringUtils.readNullableString(in);
        try {
            uri = new URI(scheme, userInfo, host, port, path, query, fragment);
        } catch (URISyntaxException e) {
            throw new IOException("Error reconstructing URI", e);
        }
    }
}
Also used : URISyntaxException(java.net.URISyntaxException) IOException(java.io.IOException) URI(java.net.URI)

Example 84 with URISyntaxException

use of java.net.URISyntaxException in project hadoop by apache.

the class ViewFileSystem method initialize.

/**
   * Called after a new FileSystem instance is constructed.
   * @param theUri a uri whose authority section names the host, port, etc. for
   *        this FileSystem
   * @param conf the configuration
   */
@Override
public void initialize(final URI theUri, final Configuration conf) throws IOException {
    super.initialize(theUri, conf);
    setConf(conf);
    config = conf;
    // Now build  client side view (i.e. client side mount table) from config.
    final String authority = theUri.getAuthority();
    try {
        myUri = new URI(FsConstants.VIEWFS_SCHEME, authority, "/", null, null);
        fsState = new InodeTree<FileSystem>(conf, authority) {

            @Override
            protected FileSystem getTargetFileSystem(final URI uri) throws URISyntaxException, IOException {
                return new ChRootedFileSystem(uri, config);
            }

            @Override
            protected FileSystem getTargetFileSystem(final INodeDir<FileSystem> dir) throws URISyntaxException {
                return new InternalDirOfViewFs(dir, creationTime, ugi, myUri);
            }

            @Override
            protected FileSystem getTargetFileSystem(URI[] mergeFsURIList) throws URISyntaxException, UnsupportedFileSystemException {
                throw new UnsupportedFileSystemException("mergefs not implemented");
            // return MergeFs.createMergeFs(mergeFsURIList, config);
            }
        };
        workingDir = this.getHomeDirectory();
    } catch (URISyntaxException e) {
        throw new IOException("URISyntax exception: " + theUri);
    }
}
Also used : FileSystem(org.apache.hadoop.fs.FileSystem) UnsupportedFileSystemException(org.apache.hadoop.fs.UnsupportedFileSystemException) URISyntaxException(java.net.URISyntaxException) IOException(java.io.IOException) URI(java.net.URI)

Example 85 with URISyntaxException

use of java.net.URISyntaxException in project hadoop by apache.

the class AbstractBondedFSContract method init.

@Override
public void init() throws IOException {
    super.init();
    //this test is only enabled if the test FS is present
    fsName = loadFilesystemName(getScheme());
    setEnabled(!fsName.isEmpty());
    if (isEnabled()) {
        try {
            fsURI = new URI(fsName);
            filesystem = FileSystem.get(fsURI, getConf());
        } catch (URISyntaxException e) {
            throw new IOException("Invalid URI " + fsName);
        } catch (IllegalArgumentException e) {
            throw new IOException("Unable to initialize filesystem " + fsName + ": " + e, e);
        }
    } else {
        LOG.info("skipping tests as FS name is not defined in " + getFilesystemConfKey());
    }
}
Also used : URISyntaxException(java.net.URISyntaxException) IOException(java.io.IOException) URI(java.net.URI)

Aggregations

URISyntaxException (java.net.URISyntaxException)1633 URI (java.net.URI)1080 IOException (java.io.IOException)451 URL (java.net.URL)287 File (java.io.File)280 ArrayList (java.util.ArrayList)146 MalformedURLException (java.net.MalformedURLException)102 InputStream (java.io.InputStream)93 HashMap (java.util.HashMap)91 Test (org.testng.annotations.Test)88 Response (javax.ws.rs.core.Response)87 Builder (javax.ws.rs.client.Invocation.Builder)84 ResteasyClientBuilder (org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder)84 Parameters (org.testng.annotations.Parameters)84 BaseTest (org.xdi.oxauth.BaseTest)84 ResponseType (org.xdi.oxauth.model.common.ResponseType)84 AuthorizationRequest (org.xdi.oxauth.client.AuthorizationRequest)78 Test (org.junit.Test)75 REGISTRATION_CLIENT_URI (org.xdi.oxauth.model.register.RegisterResponseParam.REGISTRATION_CLIENT_URI)72 Intent (android.content.Intent)63