feat: custom announce filter

This commit is contained in:
Vasco Santos
2020-10-15 15:31:33 +01:00
committed by Vasco Santos
parent 97e3633f47
commit ef9d3ca2c6
43 changed files with 75 additions and 147 deletions

View File

@ -367,11 +367,13 @@ class Libp2p extends EventEmitter {
* @returns {Array<Multiaddr>}
*/
get multiaddrs () {
const announceFilter = this._options.addresses.announceFilter || ((multiaddrs) => multiaddrs)
// Filter noAnnounce multiaddrs
const filterMa = this.addressManager.getNoAnnounceAddrs()
// Create advertising list
return this.transportManager.getAddrs()
return announceFilter(this.transportManager.getAddrs()
.concat(this.addressManager.getAnnounceAddrs())
.filter((ma, index, array) => {
// Filter out if repeated
@ -385,7 +387,7 @@ class Libp2p extends EventEmitter {
}
return true
})
}))
}
/**