@Override public void shutdown() throws UserException, ServerException { requireAdminAuthentication(); getBimServer().stop(); } }
@Override public SSystemInfo getSystemInfo() throws UserException { requireAdminAuthentication(); SSystemInfo systemInfo = new SSystemInfo(); systemInfo.setCpucores(Runtime.getRuntime().availableProcessors()); systemInfo.setDatetime(new GregorianCalendar().getTime()); systemInfo.setOsname(System.getProperty("os.name")); systemInfo.setOsversion(System.getProperty("os.version")); systemInfo.setUserName(System.getProperty("user.name")); systemInfo.setUserHome(System.getProperty("user.home")); systemInfo.setUserDir(System.getProperty("user.dir")); return systemInfo; }
@Override public SMetrics getMetrics() throws UserException { requireAdminAuthentication(); return getBimServer().getMetricsRegistry().getMetrics(); }
@Override public Integer clearOutputFileCache() throws UserException { requireAdminAuthentication(); return getBimServer().getNewDiskCacheManager().cleanup(); }
@Override public Boolean upgradePossible() throws UserException { requireAdminAuthentication(); return getBimServer().getVersionChecker().updateNeeded(); }
@Override public SJavaInfo getJavaInfo() throws UserException { requireAdminAuthentication(); SJavaInfo javaInfo = new SJavaInfo(); javaInfo.setHeapTotal(Runtime.getRuntime().totalMemory());
@Override public List<SMigration> getMigrations() throws UserException { requireAdminAuthentication(); Migrator migrator = getBimServer().getDatabase().getMigrator(); List<SMigration> list = new ArrayList<SMigration>(getBimServer().getSConverter().convertToSSetMigration(migrator.getMigrations())); Collections.sort(list, new SMigrationComparator()); return list; }
@Override public void migrateDatabase() throws ServerException, UserException { requireAdminAuthentication(); try { getBimServer().getDatabase().getMigrator().migrate(); getBimServer().getServerInfoManager().update(); } catch (Exception e) { LOGGER.error("", e); throw new ServerException(e); } }
@Override public SBimServerInfo getBimServerInfo() throws ServerException, UserException { requireAdminAuthentication(); SBimServerInfo bimServerInfo = new SBimServerInfo(); SVersion version = getBimServer().getVersionChecker().getLocalVersion(); SVersion latestVersion = getBimServer().getVersionChecker().getOnlineVersion(); SDatabaseInformation databaseInformation = getDatabaseInformation(); bimServerInfo.setCurrentVersion(version.getFullString()); bimServerInfo.setCurrentDate(version.getDate()); bimServerInfo.setLatestVersion(latestVersion.getMajor() + "." + latestVersion.getMinor() + "." + latestVersion.getRevision()); bimServerInfo.setLatestDate(latestVersion.getDate()); bimServerInfo.setCheckouts(databaseInformation.getNumberOfCheckouts()); bimServerInfo.setRevisions(databaseInformation.getNumberOfRevisions()); bimServerInfo.setUsers(databaseInformation.getNumberOfUsers()); bimServerInfo.setProjects(databaseInformation.getNumberOfProjects()); bimServerInfo.setSchemaVersion(databaseInformation.getSchemaVersion()); bimServerInfo.setServerLogUrl(getBimServer().getServerSettingsCache().getServerSettings().getSiteAddress() + "/download?token=" + getServiceMap().getAuthorization().asHexToken(getBimServer().getEncryptionKey()) + "&action=getfile&type=serverlog"); bimServerInfo.setStarted(getServerStartTime()); return bimServerInfo; }