MCPcopy Index your code
hub / github.com/dCache/dcache

github.com/dCache/dcache @12.0.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release 12.0.1 ↗ · + Follow
40,769 symbols 169,814 edges 3,234 files 6,602 documented · 16%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

dCache

dCache is a system for storing and retrieving huge amounts of data, distributed among a large number of heterogeneous server nodes, under a single virtual filesystem tree with a variety of standard access methods. Depending on the Persistency Model, dCache provides methods for exchanging data with backend (tertiary) Storage Systems as well as space management, pool attraction, dataset replication, hot spot determination and recovery from disk or node failures. Connected to a tertiary storage system, the cache simulates unlimited direct access storage space. Data exchanges to and from the underlying HSM are performed automatically and invisibly to the user. Beside HEP specific protocols, data in dCache can be accessed via NFSv4.1 (pNFS), FTP as well as through WebDav.

DOI

Documentation

The dCache book

User Guide

Getting Started

The file BUILDING.md describes how to compile dCache code and build various packages.

The file also describes how to create the system-test deployment, which provides a quick and easy way to get a working dCache. Running system-test requires no special privileges and all the generated files reside within the code-base.

There are also packages of stable releases at https://www.dcache.org/downloads/.

License

The project is licensed under AGPL v3. Some parts licensed under BSD and LGPL. See the source code for details.

For more info, check the official dCache.ORG web page.

Contributors

dCache is a joint effort between Deutsches Elektronen-Synchrotron DESY, Fermi National Accelerator Laboratory and Nordic DataGrid Facility.

Contributions are welcome! Please check out our CONTRIBUTING guide.

Extension points exported contracts — how you extend this code

LoginCellProvider (Interface)
Service provider interface for LoginCellFactory. [6 implementers]
modules/cells/src/main/java/dmg/cells/services/login/LoginCellProvider.java
CredentialAware (Interface)
Indicates that the class needs an X509 credential to work. [6 implementers]
modules/srm-client/src/main/java/org/dcache/srm/shell/CredentialAware.java
RestoresInfoService (Interface)
Internal API for calling the pool manager for restore requests. [83 implementers]
modules/dcache-frontend/src/main/java/org/dcache/restful/services/restores/RestoresInfoService.java
DataSink (Interface)
Data channel uses this interface to write the incoming data. Implement it to provide your own ways of storing data. It m [40 …
modules/ftp-client/src/main/java/org/dcache/ftp/client/DataSink.java
ProfileFactory (Interface)
A class that implements ProfileFactory describes how to create a Profile. @see Profile [46 implementers]
modules/gplazma2-oidc/src/main/java/org/dcache/gplazma/oidc/ProfileFactory.java
AuthorisationSupplier (Interface)
An AuthorisationSupplier is something that may return a relocatable Authorisation statement. [6 implementers]
modules/gplazma2-scitoken/src/main/java/org/dcache/gplazma/scitoken/AuthorisationSupplier.java
DBDriverProvider (Interface)
SPI interface to Driver provider. Provide must crate an instance of a FsSqlDriver for a supported DB type. @sin [6 implementers]
modules/chimera/src/main/java/org/dcache/chimera/spi/DBDriverProvider.java
CommandScanner (Interface)
Implementations of this interface provide means to analyze an object for supported cell shell commands and create suitab [11 …
modules/common-cli/src/main/java/org/dcache/util/cli/CommandScanner.java

Core symbols most depended-on inside this repo

assertThat
called by 5746
modules/srm-server/src/main/java/org/dcache/gridsite/Utilities.java
add
called by 1611
modules/dcache/src/main/java/diskCacheV111/poolManager/PoolSelectionUnit.java
getMessage
called by 1592
modules/cells/src/main/java/dmg/cells/nucleus/CellShell.java
toString
called by 1466
modules/dcache-vehicles/src/main/java/org/dcache/events/Event.java
of
called by 1407
modules/common/src/main/java/org/dcache/util/ByteUnits.java
put
called by 1361
modules/dcache/src/main/java/org/dcache/alarms/dao/LogEntryDAO.java
get
called by 1322
modules/dcache/src/main/java/org/dcache/pinmanager/PinDao.java
append
called by 1309
modules/dcache/src/main/java/org/dcache/util/NonReindexableList.java

Shape

Method 35,028
Class 4,327
Function 778
Interface 400
Enum 236

Languages

Java93%
TypeScript7%
Python1%
Ruby1%

Modules by API surface

skel/share/webdav/static/bootstrap/js/bootstrap.bundle.js447 symbols
modules/common/src/test/java/org/dcache/util/ByteUnitTests.java425 symbols
skel/share/webdav/static/bootstrap/js/bootstrap.bundle.min.js388 symbols
skel/share/webdav/static/bootstrap/js/bootstrap.js372 symbols
skel/share/webdav/static/bootstrap/js/bootstrap.esm.js371 symbols
skel/share/webdav/static/bootstrap/js/bootstrap.esm.min.js355 symbols
skel/share/webdav/static/bootstrap/js/bootstrap.min.js348 symbols
modules/dcache-ftp/src/main/java/org/dcache/ftp/door/AbstractFtpDoorV1.java252 symbols
modules/srm-client/src/main/java/gov/fnal/srm/util/Configuration.java214 symbols
modules/srm-client/src/main/java/org/dcache/srm/shell/SrmShell.java191 symbols
modules/dcache/src/test/java/diskCacheV111/poolManager/RequestContainerV5Test.java184 symbols
modules/dcache/src/main/java/org/dcache/pool/nearline/NearlineStorageHandler.java169 symbols

Datastores touched

(mongodb)Database · 1 repos
dcacheDatabase · 1 repos
fooDatabase · 1 repos

For agents

$ claude mcp add dcache \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact