public abstract class FileSystem extends Endpoint
BUFFER_SIZE, captureElapsedTime, DEFAULT_READ_BUFFER_SIZEid, log, name, TIMESTAMP_FORMAT| Constructor and Description |
|---|
FileSystem() |
| Modifier and Type | Method and Description |
|---|---|
void |
close()
Wipes this connection cycle's credentials snapshot, then closes this endpoint.
|
protected static String |
credentialValue(Credentials credentials,
String key,
String fallback)
Returns the value for the given key from the resolved credentials or
fallback when
the credentials are null or don't contain the key. |
CredentialsResolver |
getCredentialsResolver() |
protected Credentials |
getCurrentCredentials()
Returns the credentials snapshot resolved for this connection cycle or
null if there
isn't one. |
protected Credentials |
refreshCredentials()
Forces the resolver to re-fetch (see
CredentialsResolver.refresh()), then resolves a fresh
snapshot. |
protected Credentials |
resolveCredentials()
Resolves and snapshots credentials for this connection cycle.
|
FileSystem |
setCredentialsResolver(CredentialsResolver credentialsResolver)
Sets the resolver supplying this file system's credentials.
|
addElapsedtime, addExceptionProperties, assertClosed, assertNotOpened, assertOpened, finalize, getClosedOn, getDescription, getElapsedTime, getElapsedTimeAsString, getNestedEndpoint, getOpenedOn, getOpenElapsedTime, getOpenElapsedTimeAsString, getRootEndpoint, getSelfTime, getSelfTimeAsString, getState, isCaptureElapsedTime, isClosed, isOpen, open, setCaptureElapsedTime, setDescription, toStringpublic CredentialsResolver getCredentialsResolver()
public FileSystem setCredentialsResolver(CredentialsResolver credentialsResolver)
Endpoint.open() (via resolveCredentials()) — never at construction — so rotated
secrets are picked up on the next connection.protected Credentials resolveCredentials() throws DataException
Endpoint.open(). Returns null when no resolver is set, letting subclasses fall
back to ambient/role credentials or backend-specific configuration.
The snapshot is an independent copy; close() wipes it without
affecting the resolver's own instance. Any previous snapshot is wiped before resolving so a failed
resolve never leaves stale credentials behind.
DataExceptionprotected Credentials refreshCredentials() throws DataException
CredentialsResolver.refresh()), then resolves a fresh
snapshot. For long-lived connections that need to re-authenticate mid-session — for example when
Credentials.isExpired(long) reports the current snapshot is about to expire.DataExceptionprotected Credentials getCurrentCredentials()
null if there
isn't one.protected static String credentialValue(Credentials credentials, String key, String fallback)
fallback when
the credentials are null or don't contain the key. Lets connectors mix
resolver-supplied secrets with constructor/setter-supplied values per key:
Credentials credentials = resolveCredentials(); String userName = credentialValue(credentials, Credentials.USERNAME, this.userName); String password = credentialValue(credentials, Credentials.PASSWORD, this.password);
public void close()
throws DataException
close in class EndpointDataExceptionCopyright (c) 2006-2026 North Concepts Inc. All Rights Reserved.