Skip to content

Commit ba88821

Browse files
committed
repo,etc: rename respondRdr to replyMetadata
1 parent 676fa2a commit ba88821

9 files changed

Lines changed: 46 additions & 33 deletions

File tree

pkg/repo-api/src/mod.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ export * from "./copy";
44
export * from "./data-array";
55
export * from "./data-tape";
66
export * from "./read-from-network";
7-
export * from "./respond-rdr";
87

98
/**
109
* Namespace consists of interfaces that form the DataStore API.
@@ -17,3 +16,11 @@ export * from "./respond-rdr";
1716
* if it should be explicitly closed.
1817
*/
1918
export * as DataStore from "./data-store";
19+
20+
import { replyMetadata } from "./reply-metadata";
21+
22+
export {
23+
replyMetadata,
24+
/** @deprecated Use `replyMetadata` instead. */
25+
replyMetadata as respondRdr,
26+
};
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@ import { type Data, digestSigning, type Interest, type Name, type NamingConventi
55
import type * as S from "./data-store";
66

77
/**
8-
* Respond to RDR discovery Interest with RDR metadata describing the latest version
8+
* Respond to metadata discovery Interest with metadata packet describing the latest version
99
* among stored Data.
1010
*/
11-
export async function respondRdr(interest: Interest, store: S.ListNames, {
11+
export async function replyMetadata(interest: Interest, store: S.ListNames, {
1212
versionConvention = Version,
1313
signer = digestSigning,
14-
}: respondRdr.Options = {}): Promise<Data | undefined> {
14+
}: replyMetadata.Options = {}): Promise<Data | undefined> {
1515
if (!isDiscoveryInterest(interest)) {
1616
return undefined;
1717
}
@@ -37,7 +37,7 @@ export async function respondRdr(interest: Interest, store: S.ListNames, {
3737
return makeMetadataPacket(new Metadata(bestName), { signer });
3838
}
3939

40-
export namespace respondRdr {
40+
export namespace replyMetadata {
4141
export interface Options {
4242
/**
4343
* Version naming convention.

pkg/repo-cli/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ This package is part of [NDNts](https://yoursunny.com/p/NDNts/), Named Data Netw
88

99
```bash
1010
# with NFD running, start the repo server
11-
ndnts-repo server --store=/tmp/repo --rdr=true
11+
ndnts-repo server --store=/tmp/repo --metadata=true
1212
```
1313

1414
## `ndnts-repo fillbi`: Fill Repo with Demo Data

pkg/repo-cli/src/server.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@ import { createServer } from "node:net";
22

33
import { exitClosers, getSigner, openUplinks } from "@ndn/cli-common";
44
import { joinHostPort } from "@ndn/node-transport";
5-
import { type DataStore, RepoProducer, respondRdr } from "@ndn/repo";
5+
import { type DataStore, metadataFallback, RepoProducer } from "@ndn/repo";
66
import { BulkInsertTarget } from "@ndn/repo-api";
77
import type { CommandModule } from "yargs";
88

99
import { openStore, type StoreArgs, storeOptions } from "./util";
1010

1111
interface Args extends StoreArgs {
12-
rdr: boolean;
12+
metadata: boolean;
1313
bi: boolean;
1414
"bi-host": string;
1515
"bi-port": number;
@@ -44,9 +44,9 @@ export const ServerCommand: CommandModule<{}, Args> = {
4444
builder(argv) {
4545
return argv
4646
.options(storeOptions)
47-
.option("rdr", {
47+
.option("metadata", {
4848
default: false,
49-
desc: "respond to RDR discovery Interests",
49+
desc: "reply to metadata discovery Interests",
5050
type: "boolean",
5151
})
5252
.option("bi", {
@@ -80,7 +80,7 @@ export const ServerCommand: CommandModule<{}, Args> = {
8080
await openUplinks();
8181
const store = await openStore(args);
8282
const producer = RepoProducer.create(store, {
83-
fallback: args.rdr ? respondRdr({ signer: await getSigner() }) : undefined,
83+
fallback: args.metadata ? metadataFallback({ signer: await getSigner() }) : undefined,
8484
});
8585
exitClosers.push(producer);
8686

pkg/repo/src/metadata-fallback.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import { replyMetadata } from "@ndn/repo-api";
2+
3+
import type { RepoProducer } from "./producer";
4+
5+
/**
6+
* Provide a {@link RepoProducer.FallbackHandler} that replies to metadata discovery Interests.
7+
*
8+
* @remarks
9+
* The returned function should be passed as {@link RepoProducer.Options.fallback}.
10+
*/
11+
export function metadataFallback(opts: replyMetadata.Options = {}): RepoProducer.FallbackHandler {
12+
return (interest, producer, store) => {
13+
void producer;
14+
return replyMetadata(interest, store, opts);
15+
};
16+
}

pkg/repo/src/mod.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,11 @@ export { makeInMemoryDataStore } from "./data-store-memory";
33
export { makePersistentDataStore } from "./data-store-persistent";
44
export * from "./prefix-reg/mod";
55
export { RepoProducer } from "./producer";
6-
export { respondRdr } from "./respond-rdr";
6+
7+
import { metadataFallback } from "./metadata-fallback";
8+
9+
export {
10+
metadataFallback,
11+
/** @deprecated Use `metadataFallback` instead. */
12+
metadataFallback as respondRdr,
13+
};

pkg/repo/src/producer.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ export namespace RepoProducer {
6565
* Interest handler function for when Data is not found in repo.
6666
*
6767
* @remarks
68-
* To support RDR metadata version discovery, pass {@link respondRdr} as this option.
68+
* To support version discovery via metadata retrieval protocol, pass {@link metadataFallback} as this option.
6969
*/
7070
fallback?: FallbackHandler;
7171

pkg/repo/src/respond-rdr.ts

Lines changed: 0 additions & 17 deletions
This file was deleted.

pkg/repo/tests/producer.t.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { Component, Data, Interest, Name, type NameLike, NameMultiSet } from "@n
88
import { delay } from "@ndn/util";
99
import { beforeEach, expect, test } from "vitest";
1010

11-
import { type DataStore, makeInMemoryDataStore, PrefixRegShorter, PrefixRegStatic, PrefixRegStrip, RepoProducer, respondRdr } from "..";
11+
import { type DataStore, makeInMemoryDataStore, metadataFallback, PrefixRegShorter, PrefixRegStatic, PrefixRegStrip, RepoProducer } from "..";
1212

1313
let store: DataStore;
1414
let announced: NameMultiSet; // could be NameSet
@@ -118,7 +118,7 @@ test("prefixreg strip custom", async () => {
118118
expect(listAnnounced()).toEqualNames([]);
119119
});
120120

121-
test("respondRdr", async () => {
121+
test("metadataFallback", async () => {
122122
await insertData(
123123
"/A/9",
124124
new Name("/A").append(Version, 6),
@@ -129,7 +129,7 @@ test("respondRdr", async () => {
129129

130130
using _producer = RepoProducer.create(store, {
131131
reg: PrefixRegStatic(new Name("/A")),
132-
fallback: respondRdr(),
132+
fallback: metadataFallback(),
133133
});
134134

135135
const metadata = await retrieveMetadata("/A");

0 commit comments

Comments
 (0)