小编Jer*_*ome的帖子

assertEquals(Object o1,Object o2)是否使用equals方法

换句话说,assertEquals是否适用于覆盖的类 equals

java junit

42
推荐指数
3
解决办法
6万
查看次数

表观类型违规,但编译

为什么下面的代码片段会编译?OtherInterface没有扩展,Concrete所以我打赌肾脏,这将无法编译.但确实如此.

public class Test {

    public static interface SomeInterface {}

    public static interface OtherInterface{}

    public static class Concrete implements SomeInterface {

       public <T extends Concrete> T getConcrete() {
            return null;
       }
    }

    public static void doStuff() {
        Concrete c = new Concrete();
        OtherInterface iCompile = c.getConcrete();
    }
}
Run Code Online (Sandbox Code Playgroud)

另一方面,下一个片段不能编译,这是我所期望的.

public class Test {

    public static interface SomeInterface {}

    public static class UnrelatedClass{}

    public static class Concrete implements SomeInterface {

       public <T extends Concrete> T getConcrete() { …
Run Code Online (Sandbox Code Playgroud)

java generics

14
推荐指数
1
解决办法
149
查看次数

具有CompletableFuture的"双重"组合

当我CompletableFuture将两个独立的组合与一个BiFunction返回第三个独立的组合时,我试图避免嵌套.目前,使用thenCombine()不削减它:

// What I have
public CompletableFuture<CompletableFuture<C>> doStuff() {
    CompletableFuture<A> aFuture = makeSomeA();
    CompletableFuture<B> bFuture = makeSomeB();
    CompletableFuture<CompletableFuture<C>> cFuture = aFuture.thenCombine(bFuture, this::makeSomeC);
    return cFuture;
}

// What I want
public CompletableFuture<C> doStuff() {
    CompletableFuture<A> aFuture = makeSomeA();
    CompletableFuture<B> bFuture = makeSomeB();
    // obv this method does not exist
    CompletableFuture<C> c = aFuture.thenBicompose(bFuture, this::makeSomeC);
} 

private CompletableFuture<A> makeSomeA() {...}
private CompletableFuture<B> makeSomeB() {...}
private CompletableFuture<C> makeSomeC(A a, B b) {...}
Run Code Online (Sandbox Code Playgroud)

我基本上试图找到一种看起来像haskell的方式,如果有一个CompletableFuturemonad:

doStuff :: …
Run Code Online (Sandbox Code Playgroud)

java haskell java-8 completable-future

8
推荐指数
2
解决办法
1044
查看次数

Google Docs API - 模拟用户文件下载

将Google Docs Java API与Google Apps帐户一起使用,是否可以冒充用户并下载文件?

当我运行下面的程序时,它显然登录到域并模拟用户,因为它检索其中一个文件的详细信息并打印出文件标题.但是,当它尝试下载文件时,会抛出ServiceForbiddenException.

如果Java API无法实现,是否有人知道我的程序是否可以使用Protocol API编写HTTP请求来下载文件?

public class AuthExample {

private static DocsService docService = new DocsService("Auth Example");

public static void main(String[] args)
    throws Exception
{
    String adminUser = args[0];
    String adminPassword = args[1];
    String authToken = args[2];
    String impersonatedUser = args[3];

    loginToDomain(adminUser, adminPassword, authToken);

    URL url = new URL( "https://docs.google.com/feeds/" + impersonatedUser + "/private/full" );
    DocumentListFeed feed = docService.getFeed(url, DocumentListFeed.class);

    DocumentListEntry entry = feed.getEntries().get(0);

    String title = entry.getTitle().getPlainText();
    System.out.println( title );

    String type = entry.getType();
    if …
Run Code Online (Sandbox Code Playgroud)

google-docs google-docs-api google-data-api

6
推荐指数
1
解决办法
742
查看次数

Google API Java客户端 - 获取用户信息

我在Google API Java客户端库版本1.12.0-beta中找出一个看似简单的任务时遇到了麻烦.我可以使用OAuth2进行身份验证,并可以检索和操作我的应用程序所需的Google云端硬盘部分.但是,我想遵循Google 最佳做法,并在我的应用顶部显示基本用户信息.

我搜索了谷歌提供的文件迷宫,并搜索了许多其他网站,似乎无法找到我需要的东西.我查看了最佳实践页面上建议的Userinfo API.据我所知,它应该是我正在使用的java客户端的一部分,但事实并非如此.我甚至找到了一个完整的方法示例,概述了我如何获取用户信息.它引用的类 - Userinfo - 似乎不是我正在使用的客户端库中包含的任何库的一部分.我进一步搜索,看看我是否错过了包含OAuth服务Java客户端的单独下载.

我认为我遇到的主要问题是找到当前版本的Java客户端库的相关信息.还有其他人遇到过这个问题吗?我非常感谢有关如何获取基本用户信息的任何指示.

谢谢你的帮助.

java google-api google-api-java-client google-drive-api

5
推荐指数
1
解决办法
3027
查看次数

如何获取受委托账户的邮件

作为 user1 进行身份验证,我想检索已委派访问 user1 的所有用户的邮件。

所以我有两个问题:

  1. 检索所有具有委派访问权限的帐户
  2. 检索邮件

emails-settings-API 向受托人(而非委托人)提供访问权限。

有没有办法以编程方式做到这一点。

请随时询问更多信息

gmail google-email-settings-api

4
推荐指数
1
解决办法
4952
查看次数