public Collection<PackageMetaData> getAllIfc() { Set<PackageMetaData> result = new HashSet<>(); result.add(getPackageMetaData("Ifc2x3tc1")); result.add(getPackageMetaData("Ifc4")); return result; } }
public static final PluginManagerInterface setupPluginManager(String[] args) { try { Path home = Paths.get("home"); if (!Files.exists(home)) { Files.createDirectory(home); } Path tmp = home.resolve("tmp"); if (!Files.exists(tmp)) { Files.createDirectories(tmp); } MavenPluginRepository mavenPluginRepository = new MavenPluginRepository(home.resolve("maven")); PluginManager pluginManager = new PluginManager(tmp, home.resolve("plugins"), mavenPluginRepository, System.getProperty("java.class.path"), null, null, null, null); MetaDataManager metaDataManager = new MetaDataManager(tmp); pluginManager.setMetaDataManager(metaDataManager); loadPlugins(pluginManager, Paths.get(".."), new OptionsParser(args).getPluginDirectories()); metaDataManager.init(); pluginManager.initAllLoadedPlugins(); return pluginManager; } catch (PluginException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return null; }
@Override public void run() { metaDataManager.addEPackage(ePackage, schema); } }
private static void initObjectIdmCache(final MetaDataManager metaDataManager) { hideAllInverseMap = new HashMap<EPackage, HideAllInversesObjectIDM>(); objectIdmCache = new HashMap<EClass, ObjectIDM>(); for (PackageMetaData packageMetaData : metaDataManager.getAllIfc()) { final HideAllInversesObjectIDM hideAllInverse = new HideAllInversesObjectIDM(Collections.singleton(packageMetaData.getEPackage()), packageMetaData); hideAllInverseMap.put(packageMetaData.getEPackage(), hideAllInverse); private ObjectIDM hideAllInverse = new HideAllInversesObjectIDM(hideAllInverseMap.keySet(), metaDataManager.getPackageMetaData("ifc2x3tc1")); @Override public boolean shouldIncludeClass(EClass originalClass, EClass eClass) {
metaDataManager.init(); pluginManager.initAllLoadedPlugins(); } catch (PluginException e) { OldQuery.setPackageMetaDataForDefaultQuery(metaDataManager.getPackageMetaData("store")); for (String type : new String[] {"geometry", "stdlib"}) { try { PackageMetaData packageMetaData = getMetaDataManager().getPackageMetaData(schema); JsonQueryObjectModelConverter jsonQueryObjectModelConverter = new JsonQueryObjectModelConverter(packageMetaData); String queryNameSpace = schema + "-" + type;
public static final BimServerClientInterface setupSoap(String address) { try { Path home = Paths.get("home"); Path tmp = home.resolve("tmp"); PluginManager pluginManager = LocalDevPluginLoader.createPluginManager(home); MetaDataManager metaDataManager = new MetaDataManager(tmp); pluginManager.setMetaDataManager(metaDataManager); try (BimServerClientFactory factory = new SoapBimServerClientFactory(metaDataManager, address)) { return factory.create(new UsernamePasswordAuthenticationInfo("admin@bimserver.org", "admin")); } catch (Exception e) { LOGGER.error("", e); } } catch (PluginException e) { LOGGER.error("", e); } return null; }
public void init() { ThreadPoolExecutor executor = new ThreadPoolExecutor(Runtime.getRuntime().availableProcessors(), Runtime.getRuntime().availableProcessors(), 1, TimeUnit.HOURS, new ArrayBlockingQueue<>(5)); PrintStream oldErr = System.err; PrintStream oldOut = System.out; PrintStream nop = new PrintStream(new ByteArrayOutputStream()); System.setErr(nop); System.setOut(nop); executor.submit(new PackageLoader(this, Ifc2x3tc1Package.eINSTANCE, Schema.IFC2X3TC1)); executor.submit(new PackageLoader(this, Ifc4Package.eINSTANCE, Schema.IFC4)); executor.submit(new PackageLoader(this, GeometryPackage.eINSTANCE, Schema.GEOMETRY)); executor.submit(new PackageLoader(this, StorePackage.eINSTANCE, Schema.STORE)); executor.submit(new PackageLoader(this, LogPackage.eINSTANCE, Schema.LOG)); executor.shutdown(); try { executor.awaitTermination(1, TimeUnit.HOURS); } catch (InterruptedException e) { LOGGER.error("", e); } System.setErr(oldErr); System.setOut(oldOut); initDependencies(); }
public static final BimServerClientInterface setupProtocolBuffers(String address) { Path home = Paths.get("home"); Path tmp = home.resolve("tmp"); MetaDataManager metaDataManager = new MetaDataManager(tmp); try (BimServerClientFactory factory = new ProtocolBuffersBimServerClientFactory(address, 8000, 8000, null, metaDataManager, new SServicesMap())) { PluginManager pluginManager = LocalDevPluginLoader.createPluginManager(home); pluginManager.setMetaDataManager(metaDataManager); return factory.create(new UsernamePasswordAuthenticationInfo("admin@bimserver.org", "admin")); } catch (PluginException e) { LOGGER.error("", e); } catch (ServiceException e) { LOGGER.error("", e); } catch (ChannelConnectionException e) { LOGGER.error("", e); } catch (BimServerClientException e) { LOGGER.error("", e); } catch (Exception e) { LOGGER.error("", e); } return null; } }
@Override public void init(PluginContext pluginContext, PluginConfiguration systemSettings) throws PluginException { PackageMetaData packageMetaData = pluginContext.getMetaDataManager().getPackageMetaData("ifc2x3tc1"); objectIDM = new SchemaFieldIgnoreMap(CollectionUtils.singleSet(Ifc2x3tc1Package.eINSTANCE), packageMetaData); }
pluginManager.loadAllPluginsFromEclipseWorkspace(Paths.get("../"), true); MetaDataManager metaDataManager = new MetaDataManager(tmp); pluginManager.setMetaDataManager(metaDataManager); metaDataManager.init();
metaDataManager = new MetaDataManager(tmp); pluginManager.setMetaDataManager(metaDataManager); LOGGER.debug("PluginManager created");
public IfcModelInterface newModel(SProject project, boolean recordChanges) throws ServerException, UserException, BimServerClientException, PublicInterfaceNotFoundException { return new ClientIfcModel(this, project.getOid(), -1, false, getMetaDataManager().getPackageMetaData(project.getSchema()), recordChanges, false); }
MetaDataManager metaDataManager = new MetaDataManager(tmp); metaDataManager.init();
public static void main(String[] args) { /* * Args: * 0: Address of new server * 1: Username * 2: Password * 3: Address of old server * 4: Local path to incoming folder of old server, this local path has to be available on the new server, so you have to copy it from the old server */ try { Path home = Paths.get("home"); Path tmp = home.resolve("tmp"); PluginManager pluginManager = LocalDevPluginLoader.createPluginManager(home); MetaDataManager metaDataManager = new MetaDataManager(tmp); pluginManager.setMetaDataManager(metaDataManager); try (JsonBimServerClientFactory factory = new JsonBimServerClientFactory(metaDataManager, args[0])) { BimServerClient client = factory.create(new UsernamePasswordAuthenticationInfo(args[1], args[2])); client.getServiceInterface().importData(args[3], args[1], args[2], args[4]); } catch (Exception e) { e.printStackTrace(); } } catch (PluginException e) { e.printStackTrace(); } catch (PublicInterfaceNotFoundException e) { e.printStackTrace(); } } }
public Set<ObjectIdentifier> getOidsOfName(String schema, String name, int pid, int rid) throws BimserverDatabaseException, MetaDataException { Set<ObjectIdentifier> result = new HashSet<ObjectIdentifier>(); for (EClass eClass : getMetaDataManager().getPackageMetaData(schema).getAllSubClasses(getMetaDataManager().getPackageMetaData(schema).getEClass("IfcRoot"))) { RecordIterator recordIterator = database.getKeyValueStore().getRecordIterator(eClass.getEPackage().getName() + "_" + eClass.getName(), BinUtils.intToByteArray(pid), BinUtils.intToByteArray(pid), this);
public AbstractBimServerClientFactory(MetaDataManager metaDataManager) throws BimServerClientException { if (metaDataManager == null) { try { this.metaDataManager = new MetaDataManager(Files.createTempDirectory("bimserver-tmp")); this.metaDataManager.init(); } catch (IOException e) { throw new BimServerClientException("Problem creating tmp directory");
PackageMetaData packageMetaData = bimDatabase.getMetaDataManager().getPackageMetaData(project.getSchema()); for (EClass eClass : packageMetaData.getAllClasses()) { String tableName = bimDatabase.getTableName(eClass);
public synchronized void updateCache() { DatabaseSession session = database.createSession(); try { serverSettings = session.getSingle(StorePackage.eINSTANCE.getServerSettings(), new OldQuery(session.getMetaDataManager().getPackageMetaData("store"), true)); if (serverSettings.getSessionTimeOutSeconds() == 0) { serverSettings.setSessionTimeOutSeconds(60 * 60 * 24 * 30); } allowedHosts.clear(); for (String domain : serverSettings.getWhitelistedDomains()) { allowedHosts.add(domain); } } catch (BimserverDatabaseException e) { LOGGER.error("", e); } finally { session.close(); } }
public ClientIfcModel getModel(SProject project, long roid, boolean deep, boolean recordChanges) throws BimServerClientException, UserException, ServerException, PublicInterfaceNotFoundException { if (roid == -1) { throw new UserException("Roid cannot be -1"); } return new ClientIfcModel(this, project.getOid(), roid, deep, getMetaDataManager().getPackageMetaData(project.getSchema()), recordChanges, false); }
public ClientIfcModel getModel(SProject project, long roid, boolean deep, boolean recordChanges, boolean includeGeometry) throws UserException, ServerException { if (roid == -1) { throw new UserException("Roid cannot be -1"); } return new ClientIfcModel(this, project.getOid(), roid, deep, getMetaDataManager().getPackageMetaData(project.getSchema()), recordChanges, includeGeometry); }