import org.osgi.util.promise.Promise; import org.osgi.util.promise.Deferred; public class BlogReader { private final BlogService blogService; public BlogReader(BlogService blogService) { this.blogService = blogService; } public Promise<String> getBlogContent(String blogUrl) { Deferred<String> deferred = new Deferred<>(); blogService.fetchBlogContent(blogUrl, new BlogCallback() { @Override public void onSuccess(String content) { deferred.resolve(content); } @Override public void onError(Exception e) { deferred.fail(e); } }); return deferred.getPromise(); } } public class Main { public static void main(String[] args) { BlogService blogService = new BlogService(); BlogReader blogReader = new BlogReader(blogService); Promise<String> promise = blogReader.getBlogContent("https://example.com/blog/1"); promise.onResolve(new Runnable() { @Override public void run() { System.out.println("Blog content: " + promise.getValue()); } }); } }


上一篇:
下一篇:
切换中文