Class: OrcidLinkingPlugin
Defined in: src/plugins/builtin/orcid-linking.ts:152
ORCID linking plugin.
Remarks
Automatically verifies author ORCID identifiers when preprints are indexed or when authors link their ORCID accounts.
Example
const plugin = new OrcidLinkingPlugin();
await manager.loadBuiltinPlugin(plugin);
Extends
Constructors
new OrcidLinkingPlugin()
new OrcidLinkingPlugin():
OrcidLinkingPlugin
Returns
Inherited from
Properties
cache
protectedcache:ICacheProvider
Defined in: src/plugins/builtin/base-plugin.ts:88
Cache provider (available after initialization).
Inherited from
context
protectedcontext:IPluginContext
Defined in: src/plugins/builtin/base-plugin.ts:78
Plugin context (available after initialization).
Inherited from
id
readonlyid:"pub.chive.plugin.orcid"='pub.chive.plugin.orcid'
Defined in: src/plugins/builtin/orcid-linking.ts:156
Plugin ID.
Overrides
logger
protectedlogger:ILogger
Defined in: src/plugins/builtin/base-plugin.ts:83
Logger instance (available after initialization).
Inherited from
manifest
readonlymanifest:IPluginManifest
Defined in: src/plugins/builtin/orcid-linking.ts:161
Plugin manifest.
Overrides
metrics
protectedmetrics:IMetrics
Defined in: src/plugins/builtin/base-plugin.ts:93
Metrics provider (available after initialization).
Inherited from
Methods
fetchOrcidProfile()
fetchOrcidProfile(
orcid):Promise<OrcidProfile>
Defined in: src/plugins/builtin/orcid-linking.ts:366
Fetches an ORCID profile.
Parameters
orcid
string
ORCID identifier
Returns
Promise<OrcidProfile>
ORCID profile
Throws
Error if invalid ORCID or fetch fails
getConfig()
protectedgetConfig<T>(key):undefined|T
Defined in: src/plugins/builtin/base-plugin.ts:226
Gets a configuration value with type safety.
Type Parameters
• T
Parameters
key
string
Configuration key
Returns
undefined | T
Configuration value or undefined
Example
const apiKey = this.getConfig<string>('apiKey');
Inherited from
getRequiredConfig()
protectedgetRequiredConfig<T>(key):T
Defined in: src/plugins/builtin/base-plugin.ts:242
Gets a required configuration value.
Type Parameters
• T
Parameters
key
string
Configuration key
Returns
T
Configuration value
Throws
Error if key not found
Example
const apiKey = this.getRequiredConfig<string>('apiKey');
Inherited from
getState()
getState():
PluginState
Defined in: src/plugins/builtin/base-plugin.ts:162
Gets current plugin state.
Returns
Current lifecycle state
Inherited from
initialize()
initialize(
context):Promise<void>
Defined in: src/plugins/builtin/base-plugin.ts:111
Initializes the plugin.
Parameters
context
Plugin context with injected dependencies
Returns
Promise<void>
Remarks
Sets up context and calls onInitialize(). Subclasses should
override onInitialize() instead of this method.
Inherited from
isValidOrcid()
isValidOrcid(
orcid):boolean
Defined in: src/plugins/builtin/orcid-linking.ts:445
Validates an ORCID identifier format.
Parameters
orcid
string
ORCID to validate
Returns
boolean
True if valid format
Example
isValidOrcid('0000-0001-2345-6789'); // true
isValidOrcid('0000-0001-2345-678X'); // true (X is valid checksum)
isValidOrcid('1234-5678'); // false (wrong format)
onInitialize()
protectedonInitialize():Promise<void>
Defined in: src/plugins/builtin/orcid-linking.ts:203
Initializes the plugin.
Returns
Promise<void>
Overrides
onShutdown()
protectedonShutdown():Promise<void>
Defined in: src/plugins/builtin/base-plugin.ts:211
Override in subclass for shutdown logic.
Returns
Promise<void>
Remarks
Called during shutdown(). Use this to:
- Save state
- Close connections
- Clean up resources
Default implementation does nothing.
Example
protected async onShutdown(): Promise<void> {
await this.saveState();
this.connection?.close();
}
Inherited from
recordCounter()
protectedrecordCounter(name,labels?,value?):void
Defined in: src/plugins/builtin/base-plugin.ts:257
Records a counter metric.
Parameters
name
string
Metric name
labels?
Record<string, string>
Optional labels
value?
number
Optional increment value (default 1)
Returns
void
Inherited from
recordGauge()
protectedrecordGauge(name,value,labels?):void
Defined in: src/plugins/builtin/base-plugin.ts:268
Records a gauge metric.
Parameters
name
string
Metric name
value
number
Gauge value
labels?
Record<string, string>
Optional labels
Returns
void
Inherited from
searchAuthors()
searchAuthors(
query,options?):Promise<readonlyOrcidSearchResult[]>
Defined in: src/plugins/builtin/orcid-linking.ts:284
Searches for ORCID profiles by name.
Parameters
query
string
Search query (name)
options?
Search options
limit
number
Returns
Promise<readonly OrcidSearchResult[]>
Matching ORCID profiles
shutdown()
shutdown():
Promise<void>
Defined in: src/plugins/builtin/base-plugin.ts:142
Shuts down the plugin.
Returns
Promise<void>
Remarks
Calls onShutdown() and updates state. Subclasses should
override onShutdown() instead of this method.
Inherited from
startTimer()
protectedstartTimer(name,labels?): () =>void
Defined in: src/plugins/builtin/base-plugin.ts:286
Starts a timer for histogram metrics.
Parameters
name
string
Metric name
labels?
Record<string, string>
Optional labels
Returns
Function
Function to call when operation completes
Returns
void
Example
const endTimer = this.startTimer('api_request');
await this.fetchData();
endTimer(); // Records duration