Skip to content
Snippets Groups Projects
Select Git revision
  • 35e6a272b01d9de07fdf64afcb1e107bafb69dec
  • dev default protected
  • release/1.9.1 protected
  • pini-1.8-docker
  • pini-sync-onlypeers
  • duniter-v2s-issue-123-industrialize-releases
  • feature/build-aarch64-nodejs16
  • release/1.8 protected
  • pini-docker
  • ci_tags
  • fix/1448/1.8/txs_not_stored
  • feature/node-20
  • fix/1441/node_summary_with_storage
  • fix/1442/improve_bma_tx_history
  • feature/wotwizard-1.8
  • release/1.9 protected
  • 1.7 protected
  • feature/docker-set-latest protected
  • feature/fast-docker-build-1.8.4
  • fast-docker-build protected
  • feature/dump-distance
  • v1.8.7 protected
  • v1.8.7-rc4 protected
  • v1.8.7-rc3 protected
  • v1.8.7-rc2 protected
  • v1.8.7-rc1 protected
  • v1.8.6 protected
  • v1.7.23 protected
  • v1.8.5 protected
  • v1.8.4 protected
  • v1.8.3 protected
  • v1.8.2 protected
  • v1.8.1 protected
  • v1.8.0 protected
  • v1.8.0-rc1 protected
  • v1.8.0-beta5 protected
  • v1.8.0-beta4 protected
  • v1.8.0-beta3 protected
  • v1.8.0-beta2 protected
  • v1.8.0-beta protected
  • v1.7.21 protected
41 results

server.ts

Blame
  • server.ts 23.53 KiB
    import {IdentityService} from "./app/service/IdentityService"
    import {MembershipService} from "./app/service/MembershipService"
    import {PeeringService} from "./app/service/PeeringService"
    import {BlockchainService} from "./app/service/BlockchainService"
    import {TransactionService} from "./app/service/TransactionsService"
    import {ConfDTO} from "./app/lib/dto/ConfDTO"
    import {FileDAL} from "./app/lib/dal/fileDAL"
    import {DuniterBlockchain} from "./app/lib/blockchain/DuniterBlockchain"
    import {SQLBlockchain} from "./app/lib/blockchain/SqlBlockchain"
    import * as stream from "stream"
    import {KeyGen, randomKey} from "./app/lib/common-libs/crypto/keyring"
    import {parsers} from "./app/lib/common-libs/parsers/index"
    import {Cloneable} from "./app/lib/dto/Cloneable"
    import {DuniterDocument, duniterDocument2str} from "./app/lib/common-libs/constants"
    import {GlobalFifoPromise} from "./app/service/GlobalFifoPromise"
    import {BlockchainContext} from "./app/lib/computation/BlockchainContext"
    import {BlockDTO} from "./app/lib/dto/BlockDTO"
    import {DBIdentity} from "./app/lib/dal/sqliteDAL/IdentityDAL"
    import {CertificationDTO} from "./app/lib/dto/CertificationDTO"
    import {MembershipDTO} from "./app/lib/dto/MembershipDTO"
    import {RevocationDTO} from "./app/lib/dto/RevocationDTO"
    import {TransactionDTO} from "./app/lib/dto/TransactionDTO"
    import {PeerDTO} from "./app/lib/dto/PeerDTO"
    import {OtherConstants} from "./app/lib/other_constants"
    import {WS2PCluster} from "./app/modules/ws2p/lib/WS2PCluster"
    import {DBBlock} from "./app/lib/db/DBBlock"
    import { ProxiesConf } from './app/lib/proxy';
    
    export interface HookableServer {
      generatorGetJoinData: (...args:any[]) => Promise<any>
      generatorComputeNewCerts: (...args:any[]) => Promise<any>
      generatorNewCertsToLinks: (...args:any[]) => Promise<any>
      onPluggedFSHook: (...args:any[]) => Promise<any>
      resetDataHook: (...args:any[]) => Promise<any>
      resetConfigHook: (...args:any[]) => Promise<any>
    }
    
    const path        = require('path');
    const archiver    = require('archiver');
    const unzip       = require('unzip2');
    const fs          = require('fs');
    const es          = require('event-stream');
    const daemonize   = require("daemonize2")
    const constants   = require('./app/lib/constants');
    const jsonpckg    = require('./package.json');
    const directory   = require('./app/lib/system/directory');
    const logger      = require('./app/lib/logger').NewLogger('server');
    
    export class Server extends stream.Duplex implements HookableServer {
    
      private paramsP:Promise<any>|null
      private endpointsDefinitions:(()=>Promise<string>)[] = []
      private wrongEndpointsFilters:((endpoints:string[])=>Promise<string[]>)[] = []
      startService:()=>Promise<void>
      stopService:()=>Promise<void>
      ws2pCluster:WS2PCluster|undefined
      conf:ConfDTO
      dal:FileDAL
    
      home:string
      version:string
      logger:any
      rawer:any
      keyPair:any
      sign:any
      blockchain:any
    
      MerkleService:(req:any, merkle:any, valueCoroutine:any) => any
      IdentityService:IdentityService
      MembershipService:MembershipService