// Path: filesystem-core/src/main/java/onl/area51/filesystem/cache/CacheFileSystemProvider.java
// @MetaInfServices(FileSystemProvider.class)
// public class CacheFileSystemProvider
//         extends AbstractLocalFileSystemProvider<CacheFileSystem, CachePath>
// {
// 
//     @Override
//     public String getScheme()
//     {
//         return "cache";
//     }
// 
//     @Override
//     protected CacheFileSystem createFileSystem( URI uri, Path p, Map<String, Object> env )
//             throws IOException
//     {
//         return new CacheFileSystem( uri, this, p, env, FileSystemIORepository::create );
//     }
// 
//     @Override
//     protected CachePath toCachePath( Path path )
//     {
//         Objects.requireNonNull( path );
//         if( !(path instanceof CachePath) ) {
//             throw new ProviderMismatchException();
//         }
//         return (CachePath) path.toAbsolutePath();
//     }
// }


import java.io.IOException;
import java.io.InputStream;
import java.net.URI;
import java.nio.file.FileSystems;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.StandardOpenOption;
import onl.area51.filesystem.cache.CacheFileSystemProvider;
import org.junit.BeforeClass;
import org.junit.Test;
import uk.trainwatch.util.MapBuilder;
/*
 * Copyright 2016 peter.
 *
 * 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.
 */
package onl.area51.filesystem.http;


/**
 *
 * @author peter
 */
public class HttpTest
        extends CommonTestUtils
{

    private static final String HTTP_PREFIX = "cache://http.test";
    private static final String HTTPS_PREFIX = "cache://https.test";

    @BeforeClass
    public static void setUpClass()
            throws IOException
    {
// Path: filesystem-core/src/main/java/onl/area51/filesystem/cache/CacheFileSystemProvider.java
// @MetaInfServices(FileSystemProvider.class)
// public class CacheFileSystemProvider
//         extends AbstractLocalFileSystemProvider<CacheFileSystem, CachePath>
// {
// 
//     @Override
//     public String getScheme()
//     {
//         return "cache";
//     }
// 
//     @Override
//     protected CacheFileSystem createFileSystem( URI uri, Path p, Map<String, Object> env )
//             throws IOException
//     {
//         return new CacheFileSystem( uri, this, p, env, FileSystemIORepository::create );
//     }
// 
//     @Override
//     protected CachePath toCachePath( Path path )
//     {
//         Objects.requireNonNull( path );
//         if( !(path instanceof CachePath) ) {
//             throw new ProviderMismatchException();
//         }
//         return (CachePath) path.toAbsolutePath();
//     }
// }


// Path: filesystem-ftp/src/test/java/onl/area51/filesystem/http/HttpTest.java
import java.io.IOException;
import java.io.InputStream;
import java.net.URI;
import java.nio.file.FileSystems;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.StandardOpenOption;
import onl.area51.filesystem.cache.CacheFileSystemProvider;
import org.junit.BeforeClass;
import org.junit.Test;
import uk.trainwatch.util.MapBuilder;

/*
 * Copyright 2016 peter.
 *
 * 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.
 */
package onl.area51.filesystem.http;


/**
 *
 * @author peter
 */
public class HttpTest
        extends CommonTestUtils
{

    private static final String HTTP_PREFIX = "cache://http.test";
    private static final String HTTPS_PREFIX = "cache://https.test";

    @BeforeClass
    public static void setUpClass()
            throws IOException
    {
        System.setProperty( CacheFileSystemProvider.class.getName(), BASE_FILE.toString() );