小编Sel*_*wwa的帖子

如何使用固定输入创建 GraphServiceClient 的 IAuthenticationProvider 对象

我正在尝试从我的 Java 应用程序连接到 Microsoft Share Point。Microsoft Graph SDK for Java 的文档不是很清楚。

我正在尝试启动 Graph 客户端,同时通过自定义 GUI 或配置文件提供所需的凭据。

我正在尝试按照以下方式进行但可以

IGraphServiceClient client = GraphServiceClient.builder().authenticationProvider(authenticationProvider).buildClient();

Run Code Online (Sandbox Code Playgroud)

我需要“authenticationProvider”对象是一个实现 IAuthenticationProvider 的类,但是它不清楚要添加什么参数或如何创建这个对象。有没有人以前尝试过这个,构建客户端并提供所需凭据的正确方法是什么?

java sharepoint microsoft-graph-sdks microsoft-graph-api

6
推荐指数
2
解决办法
5949
查看次数

GCS Connector Hadoop3 hadoop3-2.2.8 - 缓慢的读取、存在、重命名和创建操作

在我的 Java 应用程序中,我有一个文件系统层的实现,其中我的文件类是 Hadoop 文件系统方法的包装器。我正在从hadoop3-1.9.17升级到hadoop3-2.2.8,并且我正在使用新版本的阴影 jar 。

我的 File 类具有写入、读取等方法

class File {
    private String path;
    private FileSystem fs;

}
Run Code Online (Sandbox Code Playgroud)

这是我的 write 方法的实现方式

@Override
public OutputStream write(boolean overwriteIfExists) throws IOException {
    return fs.create(path, overwriteIfExists);
}
Run Code Online (Sandbox Code Playgroud)

还有我的阅读方法:

 @Override
 public InputStream read() throws IOException {
     return fs.open(path);
 }
Run Code Online (Sandbox Code Playgroud)

我有一个性能测试用例,我在上面的文件系统实现上运行,它使用org.apache.hadoop.fs.FileSystem测试运行创建许多线程,每个线程创建一个具有特定路径(即 gs://some-bucket/objectX)的 File 类实例,并且每个线程运行相同的操作,读取、重命名、检查存在等。

我在两个版本的 Hadoop 连接器上运行了多次相同的测试,新的 [2.2.8] 显示整体执行时间较慢(几乎是旧连接器时间的 2 倍)。

以下是使用每个连接器版本时每个操作的平均执行时间的比较:

operation, hadoop3-1.9.17, hadoop3-2.2.8
READ       4542.71,        10171.26, (X2 old)
RENAME     1347.75,        4483.27,  (X4 old)
EXISTS     47.23, …
Run Code Online (Sandbox Code Playgroud)

java hadoop hdfs google-cloud-storage google-cloud-dataproc

6
推荐指数
0
解决办法
289
查看次数

Hadoop FTPFileSystem 无法列出文件并抛出 SocketTimeOutException

我正在使用 Apache Hadoop FTPFileSystem版本 3.2.0 来列出和读取来自 FTP 服务器的文件。

这是我的测试代码:

public static void main(String[] args) throws IOException {
    String host = "some-host";
    int port = 21;
    Configuration conf = new Configuration(false);
    conf.set("fs.ftp.host", host);
    conf.setInt("fs.ftp.host.port", port);
    conf.set("fs.ftp.user." + host, "username");
    conf.set("fs.ftp.password." + host, "password");
    conf.set("fs.ftp.data.connection.mode", "PASSIVE_LOCAL_DATA_CONNECTION_MODE");
    conf.set("fs.ftp.impl", "org.apache.hadoop.fs.ftp.FTPFileSystem");
    
    String fsURL = String.format("ftp://%s:%s", host, String.valueOf(port));
    conf.set("fs.default.name", fsURL);
    FileSystem fs =  FileSystem.newInstance(conf);
    Path somePath = new Path("actual/path");
    fs.getFileStatus(somePath).isDirectory(); // returns true
    fs.listStatus(somePath); // keeps spinning then throws SocketTimeOutException
}
Run Code Online (Sandbox Code Playgroud)

org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPFileEntryParser, String)经过一些调试后,该方法执行时发生死锁或延迟:engine.readServerList(socket.getInputStream(), …

java ftp hadoop

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

根据另一个数组中的顺序对数组数组进行排序

我有一个数组数组:

x = [
  ["ready", 5], ["shipped", 1], ["pending", 1], ["refunded", 1],
  ["delivered", 23], ["scheduled", 1], ["canceled", 51]
]
Run Code Online (Sandbox Code Playgroud)

我的排序数组是

order_array = [
  "ready", "in_progress", "recieved", "shipped", "scheduled", "pick_up",
 "delivered", "canceled", "failed", "refunded", "refund_failed"
]
Run Code Online (Sandbox Code Playgroud)

我需要x根据每个子数组中第一个元素的值进行排序。所需的排序数组是:

[
  ["ready", 5], ["shipped", 1], ["scheduled", 1], ["delivered", 23],
  ["canceled", 51], ["refunded", 1]
]
Run Code Online (Sandbox Code Playgroud)

使用sort_by不会导致所需的排序,它会导致相同的数组。

result = x.sort_by {|u| order_array.index(u)}
# => [
#      ["ready", 5], ["shipped", 1], ["pending", 1], ["refunded", 1],
#      ["delivered", 23], ["scheduled", 1], ["canceled", 51]
# …
Run Code Online (Sandbox Code Playgroud)

ruby arrays sorting

0
推荐指数
1
解决办法
101
查看次数

将以前的值添加到每个哈希值

我有一个带整数值的哈希:

h = {
  a: 1,
  b: 1,
  c: 1,
  d: 2,
  e: 2,
}
Run Code Online (Sandbox Code Playgroud)

我需要添加100第一个值,对于第二个值和on,我需要将前面的值添加到原始值中以获得:

{
  a: 101,
  b: 102,
  c: 103,
  d: 105,
  e: 107,
}
Run Code Online (Sandbox Code Playgroud)

有没有一个很好的方法来实现这一目标?

ruby hash

-1
推荐指数
1
解决办法
74
查看次数