db.getAtomicString("feed_id").set(feedId);
db.getAtomicString("feed_id").set(feedId);
public HistoDataSource(HistoDbConfiguration config, String name, String prefix, String postfix) throws IOException { this.config = Objects.requireNonNull(config); this.name = Objects.requireNonNull(name); this.prefix = Objects.requireNonNull(prefix); this.postfix = Objects.requireNonNull(postfix); if (config.getMapDb().isPersistent()) { this.storeDir = Files.createDirectories(Paths.get(config.getMapDb().getBasedir(), name, prefix, postfix)); File store = new File(storeDir.toFile(), "mapdb"); DBMaker.Maker maker = DBMaker.fileDB(store); maker.fileMmapEnableIfSupported().fileMmapPreclearDisable() .fileChannelEnable() .closeOnJvmShutdown(); this.db = maker.make(); String net = (String) db.atomicString("referenceNetwotk").createOrOpen().get(); if (net != null) { this.referenceNetwork = Importers.loadNetwork(Paths.get(storeDir.toString(), net), LocalComputationManager.getDefault(), new ImportConfig(), (Properties) null); } } else { this.storeDir = null; DBMaker.Maker maker = DBMaker.memoryDB(); this.db = maker.make(); } }
shape_points = db.getTreeMap("shape_points"); feedId = db.getAtomicString("feed_id").get(); checksum = db.getAtomicLong("checksum").get();
public void saveReferenceNetwork(Network network) throws IOException { Objects.requireNonNull(network); if (!config.getMapDb().isPersistent()) { this.referenceNetwork = network; } else if (this.referenceNetwork == null || !this.referenceNetwork.getId().equals(network.getId())) { DataSource dataSource = new FileDataSource(storeDir, network.getId()); Properties parameters = new Properties(); parameters.setProperty("iidm.export.xml.indent", "true"); Exporters.export("XIIDM", network, parameters, dataSource); Atomic.String reference = db.atomicString("referenceNetwotk").createOrOpen(); String oldNet = reference.get(); reference.set(network.getId() + ".xiidm"); this.referenceNetwork = network; if (oldNet != null) { Files.delete(Paths.get(storeDir.toString(), oldNet)); } } }
/** * Atomically sets to the given value and returns the previous value. * * @param newValue the new value * @return the previous value */ public final java.lang.String getAndSet(java.lang.String newValue) { //$DELAY$ for (;;) { //$DELAY$ java.lang.String current = get(); //$DELAY$ if (compareAndSet(current, newValue)) { //$DELAY$ return current; } } }
public java.lang.String toString() { return get(); }
private GTFSFeed (DB db) { this.db = db; agency = db.getTreeMap("agency"); feedInfo = db.getTreeMap("feed_info"); routes = db.getTreeMap("routes"); trips = db.getTreeMap("trips"); stop_times = db.getTreeMap("stop_times"); frequencies = db.getTreeSet("frequencies"); transfers = db.getTreeMap("transfers"); stops = db.getTreeMap("stops"); fares = db.getTreeMap("fares"); services = db.getTreeMap("services"); shape_points = db.getTreeMap("shape_points"); feedId = db.getAtomicString("feed_id").get(); checksum = db.getAtomicLong("checksum").get(); errors = db.getTreeSet("errors"); }