Skip to content
Snippets Groups Projects
Select Git revision
  • dewif
  • master default protected
  • ws2p_v2
  • dubp_v13
  • authentication_file_format
  • graphql_api_rfc
  • messages_encryption_and_signature
  • ascii_armor_messages
  • ws2p_v1
  • rfc5-duniter-protocol-rework
  • dip/0001
  • dip/0002
12 results

0013_Duniter_Encrypted_Wallet_Import_Format.md

Blame
  • server.ts 23.39 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"
    
    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
      PeeringService:PeeringService