我有一个方法login(),它调用另一个方法registerLoginHandler()。令我困惑的是registerLoginHandler()的参数在curled括号中包含很多东西。它几乎就像将整个类传递给registerLoginHandler()一样。有人可以对这里发生的事情有所了解吗?
public static ITeamRepository login() throws TeamRepositoryException {
ITeamRepository repository = TeamPlatform.getTeamRepositoryService().getTeamRepository(REPOSITORY_ADDRESS);
repository.registerLoginHandler(new ITeamRepository.ILoginHandler() {
public ILoginInfo challenge(ITeamRepository repository) {
return new ILoginInfo() {
public String getUserId() {
return "UserName";
}
public String getPassword() {
return "Password";
}
};
}
});
monitor.subTask("Contacting " + repository.getRepositoryURI() + "...");
repository.login(monitor);
monitor.subTask("Connected");
return repository;
}