Send generated URIs on ClientPutDiskDir to registered consumers
[jFCPlib.git] / src / main / java / net / pterodactylus / fcp / quelaton / ClientGetCommand.java
1 package net.pterodactylus.fcp.quelaton;
2
3 import java.io.InputStream;
4 import java.util.Optional;
5
6 import net.pterodactylus.fcp.Priority;
7
8 /**
9  * Command that retrieves data from Freenet.
10  *
11  * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
12  */
13 public interface ClientGetCommand {
14
15         ClientGetCommand ignoreDataStore();
16         ClientGetCommand dataStoreOnly();
17         ClientGetCommand maxSize(long maxSize);
18         ClientGetCommand priority(Priority priority);
19         ClientGetCommand realTime();
20         ClientGetCommand global();
21
22         Executable<Optional<Data>> uri(String uri);
23
24         interface Data {
25
26                 String getMimeType();
27                 long size();
28                 InputStream getInputStream();
29
30         }
31
32 }