use of org.olat.modules.vitero.model.ErrorCode in project openolat by klemens.
the class ViteroManager method getGroup.
public ViteroGroup getGroup(int id) throws VmsNotAvailableException {
try {
Groupid groupId = new Groupid();
groupId.setGroupid(id);
Group_Type group = getGroupWebService().getGroup(groupId);
Completegrouptype groupType = group.getGroup();
return convert(groupType);
} catch (SOAPFaultException f) {
ErrorCode code = handleAxisFault(f);
switch(code) {
default:
logAxisError("Cannot create a group", f);
}
return null;
} catch (WebServiceException e) {
if (e.getCause() instanceof ConnectException) {
throw new VmsNotAvailableException();
}
log.error("Cannot create a group.", e);
return null;
}
}
use of org.olat.modules.vitero.model.ErrorCode in project openolat by klemens.
the class ViteroManager method changeGroupRole.
public ViteroStatus changeGroupRole(int groupId, int vmsUserId, int roleId) throws VmsNotAvailableException {
try {
Group groupWs = getGroupWebService();
ChangeGroupRoleRequest roleRequest = new ChangeGroupRoleRequest();
roleRequest.setGroupid(groupId);
roleRequest.setUserid(vmsUserId);
roleRequest.setRole(roleId);
groupWs.changeGroupRole(roleRequest);
return new ViteroStatus();
} catch (SOAPFaultException f) {
ErrorCode code = handleAxisFault(f);
switch(code) {
case userDoesntExist:
log.error("The user doesn ́t exist!", f);
break;
case groupDoesntExist:
log.error("The group doesn ́t exist", f);
break;
default:
logAxisError("Cannot add an user to a group", f);
}
return new ViteroStatus(code);
} catch (WebServiceException e) {
if (e.getCause() instanceof ConnectException) {
throw new VmsNotAvailableException();
}
log.error("Cannot add an user to a group", e);
return new ViteroStatus(ErrorCode.unkown);
}
}
use of org.olat.modules.vitero.model.ErrorCode in project openolat by klemens.
the class ViteroManager method storePortrait.
protected boolean storePortrait(Identity identity, int userId) throws VmsNotAvailableException {
try {
File portrait = DisplayPortraitManager.getInstance().getBigPortrait(identity.getName());
if (portrait != null && portrait.exists()) {
Mtom mtomWs = getMtomWebService();
CompleteAvatarWrapper avatar = new CompleteAvatarWrapper();
avatar.setType(BigInteger.ZERO);
avatar.setUserid(BigInteger.valueOf(userId));
avatar.setFilename(portrait.getName());
DataHandler portraitHandler = new DataHandler(new FileDataSource(portrait));
avatar.setFile(portraitHandler);
mtomWs.storeAvatar(avatar);
return true;
}
return false;
} catch (SOAPFaultException f) {
ErrorCode code = handleAxisFault(f);
switch(code) {
default:
logAxisError("Cannot store the portrait of " + userId, f);
}
return false;
} catch (WebServiceException e) {
if (e.getCause() instanceof ConnectException) {
throw new VmsNotAvailableException();
}
log.error("Cannot store the portrait of " + userId, e);
return false;
}
}
use of org.olat.modules.vitero.model.ErrorCode in project openolat by klemens.
the class ViteroManager method createVmsUser.
private final int createVmsUser(Identity identity) throws VmsNotAvailableException {
String username = null;
try {
CreateUserRequest createRequest = new CreateUserRequest();
Newusertype user = new Newusertype();
// mandatory
User olatUser = identity.getUser();
username = "olat." + WebappHelper.getInstanceId() + "." + identity.getName();
user.setUsername(username);
user.setSurname(olatUser.getProperty(UserConstants.LASTNAME, null));
user.setFirstname(olatUser.getProperty(UserConstants.FIRSTNAME, null));
user.setEmail(olatUser.getProperty(UserConstants.EMAIL, null));
user.setPassword("changeme");
int customerId = viteroModule.getCustomerId();
user.getCustomeridlist().add(new Integer(customerId));
// optional
String language = identity.getUser().getPreferences().getLanguage();
if (StringHelper.containsNonWhitespace(language) && language.startsWith("de")) {
user.setLocale("de");
} else {
user.setLocale("en");
}
user.setPcstate("NOT_TESTED");
user.setTimezone(viteroModule.getTimeZoneId());
String street = olatUser.getProperty(UserConstants.STREET, null);
if (StringHelper.containsNonWhitespace(street)) {
user.setStreet(street);
}
String zip = olatUser.getProperty(UserConstants.ZIPCODE, null);
if (StringHelper.containsNonWhitespace(zip)) {
user.setZip(zip);
}
String city = olatUser.getProperty(UserConstants.CITY, null);
if (StringHelper.containsNonWhitespace(city)) {
user.setCity(city);
}
String country = olatUser.getProperty(UserConstants.COUNTRY, null);
if (StringHelper.containsNonWhitespace(country)) {
user.setCountry(country);
}
String mobile = olatUser.getProperty(UserConstants.TELMOBILE, null);
if (StringHelper.containsNonWhitespace(mobile)) {
user.setMobile(mobile);
}
String phonePrivate = olatUser.getProperty(UserConstants.TELPRIVATE, null);
if (StringHelper.containsNonWhitespace(phonePrivate)) {
user.setPhone(phonePrivate);
}
String phoneOffice = olatUser.getProperty(UserConstants.TELOFFICE, null);
if (StringHelper.containsNonWhitespace(phoneOffice)) {
user.setPhone(phoneOffice);
}
String institution = olatUser.getProperty(UserConstants.INSTITUTIONALNAME, null);
if (StringHelper.containsNonWhitespace(institution)) {
user.setCompany(institution);
}
/*
user.setTitle("");
*/
user.setTechnicalnote("Generated by OpenOLAT");
createRequest.setUser(user);
Userid userId = getUserWebService().createUser(createRequest);
storePortrait(identity, userId.getUserid());
return userId.getUserid();
} catch (SOAPFaultException f) {
ErrorCode code = handleAxisFault(f);
switch(code) {
default:
logAxisError("Cannot create vms user.", f);
}
return -1;
} catch (WebServiceException e) {
if (e.getCause() instanceof ConnectException) {
throw new VmsNotAvailableException();
}
log.error("Cannot create vms user.", e);
return -1;
}
}
use of org.olat.modules.vitero.model.ErrorCode in project openolat by klemens.
the class ViteroManager method deleteVmsUser.
protected void deleteVmsUser(int userId) throws VmsNotAvailableException {
try {
Userid userIdType = new Userid();
userIdType.setUserid(userId);
getUserWebService().deleteUser(userIdType);
} catch (SOAPFaultException f) {
ErrorCode code = handleAxisFault(f);
switch(code) {
default:
logAxisError("Cannot delete vms user: " + userId, f);
}
} catch (WebServiceException e) {
if (e.getCause() instanceof ConnectException) {
throw new VmsNotAvailableException();
}
log.error("Cannot delete vms user: " + userId, e);
}
}
Aggregations