import org.pentaho.di.core.logging.LogWriter; //导入方法依赖的package包/类
private void connectRep(LogWriter log,String realrepName, String realusername, String realpassword) throws Exception
{
this.repsinfo = new RepositoriesMeta(log);
if (!this.repsinfo.readData())
{
log.logError(toString(),Messages.getString("JobExportRepository.Error.NoRep"));
throw new Exception(Messages.getString("JobExportRepository.Error.NoRep"));
}
this.repinfo = this.repsinfo.findRepository(realrepName);
if (this.repinfo==null)
{
log.logError(toString(),Messages.getString("JobExportRepository.Error.NoRepSystem"));
throw new Exception(Messages.getString("JobExportRepository.Error.NoRepSystem"));
}
this.repo = new Repository(log, this.repinfo, this.userinfo);
if (!this.repo.connect("Export job entry"))
{
log.logError(toString(),Messages.getString("JobExportRepository.Error.CanNotConnectRep"));
throw new Exception(Messages.getString("JobExportRepository.Error.CanNotConnectRep"));
}
// Check username, password
// Just for Job entry security
// We don't need it at all to export
if(log.isDebug()) log.logDebug(toString(), Messages.getString("JobExportRepository.Log.CheckSuppliedUserPass"));
this.userinfo = new UserInfo(this.repo, realusername, realpassword);
if(log.isDebug()) log.logDebug(toString(), Messages.getString("JobExportRepository.Log.CheckingUser",userinfo.getName()));
if (this.userinfo.getID()<=0)
{
log.logError(toString(),Messages.getString("JobExportRepository.Error.CanNotVerifyUserPass"));
throw new Exception(Messages.getString("JobExportRepository.Error.CanNotVerifyUserPass"));
}
if(log.isDebug()) log.logDebug(toString(), Messages.getString("JobExportRepository.Log.SuppliedUserPassVerified"));
}