use of org.bimserver.interfaces.objects.SUser in project BIMserver by opensourceBIM.
the class GetLogs method start.
private void start() {
try (JsonBimServerClientFactory factory = new JsonBimServerClientFactory(null, "[ADD]")) {
client = factory.create(new UsernamePasswordAuthenticationInfo("[ADD]", "[ADD]"));
List<SLogAction> logs = client.getAdminInterface().getLogs();
Path file = Paths.get("log.txt");
writer = new PrintWriter(file.toFile());
try {
for (SLogAction sLogAction : logs) {
if (sLogAction instanceof SDatabaseCreated) {
write(sLogAction, "Database created");
} else if (sLogAction instanceof SUserAddedToProject) {
SUserAddedToProject sUserAddedToProject = (SUserAddedToProject) sLogAction;
SProject project = getProject(sUserAddedToProject.getProjectId());
SUser user = getUser(sUserAddedToProject.getUserId());
write(sLogAction, "User " + user.getUsername() + " added to project " + project.getName());
} else if (sLogAction instanceof SUserRemovedFromProject) {
SUserRemovedFromProject sUserRemovedFromProject = (SUserRemovedFromProject) sLogAction;
SProject project = getProject(sUserRemovedFromProject.getProjectId());
SUser user = getUser(sUserRemovedFromProject.getUserId());
write(sLogAction, "User " + user.getUsername() + " removed from project " + project.getName());
} else if (sLogAction instanceof SNewUserAdded) {
SNewUserAdded sNewUserAdded = (SNewUserAdded) sLogAction;
SUser user = getUser(sNewUserAdded.getUserId());
write(sLogAction, "User " + user.getUsername() + " created");
} else if (sLogAction instanceof SNewProjectAdded) {
SNewProjectAdded sNewProject = (SNewProjectAdded) sLogAction;
SProject project = getProject(sNewProject.getProjectId());
write(sLogAction, "Project " + project.getName() + " created");
} else if (sLogAction instanceof SNewRevisionAdded) {
SNewRevisionAdded sNewRevisionAdded = (SNewRevisionAdded) sLogAction;
SProject project = getProject(sNewRevisionAdded.getProjectId());
SRevision revision = getRevision(sNewRevisionAdded.getRevisionId());
write(sLogAction, "Revision " + revision.getId() + " with comment " + revision.getComment() + " added to project " + project.getName());
} else if (sLogAction instanceof SProjectUpdated) {
SProjectUpdated sProjectUpdated = (SProjectUpdated) sLogAction;
SProject project = getProject(sProjectUpdated.getProjectId());
write(sLogAction, "Project " + project.getName() + " updated");
} else if (sLogAction instanceof SProjectDeleted) {
SProjectDeleted sProjectDeleted = (SProjectDeleted) sLogAction;
SProject project = getProject(sProjectDeleted.getProjectId());
write(sLogAction, "Project " + project.getName() + " deleted");
} else if (sLogAction instanceof SUserChanged) {
SUserChanged sUserChanged = (SUserChanged) sLogAction;
SUser user = getUser(sUserChanged.getUserId());
write(sLogAction, "User " + user.getUsername() + " updated");
} else if (sLogAction instanceof SServerStarted) {
write(sLogAction, "Server started");
} else {
write(sLogAction, "NOT IMPL " + sLogAction.getClass().getSimpleName());
}
}
} finally {
writer.close();
}
} catch (ServiceException | ChannelConnectionException e) {
e.printStackTrace();
} catch (PublicInterfaceNotFoundException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (BimServerClientException e) {
e.printStackTrace();
} catch (Exception e1) {
e1.printStackTrace();
}
}
use of org.bimserver.interfaces.objects.SUser in project BIMserver by opensourceBIM.
the class GetLogs method getUser.
private SUser getUser(long uoid) throws ServerException, UserException, PublicInterfaceNotFoundException {
SUser user = users.get(uoid);
if (user == null) {
user = client.getServiceInterface().getUserByUoid(uoid);
users.put(uoid, user);
}
return user;
}
use of org.bimserver.interfaces.objects.SUser in project BIMserver by opensourceBIM.
the class GetLogs method write.
private void write(SLogAction logAction, String text) {
try {
SUser user = users.get(logAction.getExecutorId());
if (user == null) {
user = client.getServiceInterface().getUserByUoid(logAction.getExecutorId());
users.put(logAction.getExecutorId(), user);
}
writer.println(dateFormat.format(logAction.getDate()) + " " + logAction.getAccessMethod() + " " + (user == null ? "" : user.getUsername()) + ": " + text);
} catch (ServerException | UserException | PublicInterfaceNotFoundException e) {
e.printStackTrace();
}
}
Aggregations