Package de.idos.updates.lookup

Source Code of de.idos.updates.lookup.HttpLookup

package de.idos.updates.lookup;

import de.idos.updates.Update;
import de.idos.updates.UpdateDescription;
import de.idos.updates.Version;
import de.idos.updates.VersionFactory;
import de.idos.updates.VersionFinder;
import org.apache.commons.io.IOUtils;

import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.util.List;

public class HttpLookup implements LookupStrategy {

  private URL baseUrl;

  public HttpLookup(URL baseUrl) {
    this.baseUrl = baseUrl;
  }

  public Update findLatestUpdate() throws IOException {
    Version latestVersion = findLatestVersion();
    return new UpdateDescription(latestVersion);
  }

  private Version findLatestVersion() throws IOException {
    URL versionList = new URL(baseUrl, "availableVersions");
    InputStream input = versionList.openStream();
    List<String> strings = IOUtils.readLines(input);
    List<Version> versions = new VersionFactory().createVersionsFromStrings(strings);
    return new VersionFinder().findLatestVersion(versions);
  }
}
TOP

Related Classes of de.idos.updates.lookup.HttpLookup

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.