abstractcluster.java
来自「Java的面向对象数据库系统的源代码」· Java 代码 · 共 78 行
JAVA
78 行
// You can redistribute this software and/or modify it under the terms of// the Ozone Library License version 1 published by ozone-db.org.//// This file is// Copyright (C) 2003-@year@ Per Nyfelt. All rights reserved.//package org.ozoneDB.core.storage;import org.ozoneDB.core.Env;import org.ozoneDB.core.Permissions;import org.ozoneDB.core.ObjectID;import org.ozoneDB.DxLib.DxMap;/** * @author Per Nyfelt */public abstract class AbstractCluster implements Cluster { /** * The environment. Will be set by the clusterStore. */ public transient Env env; public transient AbstractClusterStore clusterStore; protected Permissions permissions; protected ClusterID clusterID; /** * Maps ObjectIDs into StorageObjectContainers. */ protected DxMap containers; public DxMap containers() { return containers; } public Env env() { return env; } public void setEnv(Env _env) { this.env = _env; } public void setClusterStore(AbstractClusterStore _clusterStore) { this.clusterStore = _clusterStore; } public Permissions permissions() { return permissions; } public ClusterID clusterID() { return clusterID; } public StorageObjectContainer containerForID(ObjectID id) { return (StorageObjectContainer) containers.elementForKey(id); } public void removeContainer(StorageObjectContainer container) { if (containers.removeForKey(container.id()) == null) { throw new IllegalStateException("Unable to remove container from cluster."); } } public void registerContainer(StorageObjectContainer container) { synchronized (container) { container.setCluster(this); if (containers.addForKey(container, container.id()) == false) { throw new IllegalStateException("Unable to add id " + container.id() + " to cluster " + clusterID()); } } }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?