Mercurial Hosting > nabble
diff src/nabble/model/export/ImportServerImpl.java @ 0:7ecd1a4ef557
add content
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 21 Mar 2019 19:15:52 -0600 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/nabble/model/export/ImportServerImpl.java Thu Mar 21 19:15:52 2019 -0600 @@ -0,0 +1,34 @@ +package nabble.model.export; + +import fschmidt.util.java.ProxyIntoThread; +import nabble.model.Init; +import nabble.model.ModelHome; +import nabble.model.Site; +import nabble.view.lib.Jtp; + +import java.net.URL; +import java.net.MalformedURLException; +import java.rmi.RemoteException; + + +public final class ImportServerImpl implements ImportServer { + private static final long timeout = Init.get("importTimeout",1000L*60*60); // 1 hour + + public Import newImport(String permalink,long nodeId) throws RemoteException, MalformedURLException { + URL url = new URL(permalink); + String domain = url.getHost(); + Long siteId = Jtp.getSiteIdFromDomain(domain); + Site site = ModelHome.getSite(siteId); + + AbstractImportImpl imp = new ImportImpl(site); + ProxyIntoThread<Import> pit = new ProxyIntoThread<Import>( "importing "+nodeId, timeout, imp, Import.class ); + imp.setProxy(pit); + return Init.rmiExport(pit.newInstance()); + } + + private static final ImportServerImpl importServer = new ImportServerImpl(); + + public static void bind() { + Init.rmiBind("import",importServer); + } +}