nxt.http

## Class APIServlet.APIRequestHandler

- java.lang.Object
- - nxt.http.APIServlet.APIRequestHandler

- Direct Known Subclasses:
    AddBundlingRule, AddPeer, BlacklistAPIProxyPeer, BlacklistBundler, BlacklistPeer, BroadcastTransaction, CalculateFee, CalculateFullHash, CanDeleteCurrency, ClearUnconfirmedTransactions, CombineSecret, CreateTransaction, DecodeFileToken, DecodeQRCode, DecodeToken, DecryptFrom, DetectMimeType, DownloadPrunableMessage, DownloadTaggedData, DumpPeers, EncodeQRCode, EncryptTo, EvaluateExpression, EventRegister, EventWait, FullHashToId, FullReset, GenerateFileToken, GenerateToken, GetAccount, GetAccountAssetCount, GetAccountAssets, GetAccountBlockCount, GetAccountBlockIds, GetAccountBlocks, GetAccountCurrencies, GetAccountCurrencyCount, GetAccountCurrentAskOrderIds, GetAccountCurrentAskOrders, GetAccountCurrentBidOrderIds, GetAccountCurrentBidOrders, GetAccountExchangeRequests, GetAccountId, GetAccountLedger, GetAccountLedgerEntry, GetAccountLessors, GetAccountPhasedTransactionCount, GetAccountPhasedTransactions, GetAccountProperties, GetAccountPublicKey, GetAccountShufflings, GetAccountTaggedData, GetAlias, GetAliasCount, GetAliases, GetAliasesLike, GetAllAssets, GetAllBroadcastedTransactions, GetAllBundlerRates, GetAllCurrencies, GetAllExchanges, GetAllOpenAskOrders, GetAllOpenBidOrders, GetAllPhasingOnlyControls, GetAllPrunableMessages, GetAllShufflings, GetAllTaggedData, GetAllTrades, GetAllWaitingTransactions, GetAskOrder, GetAskOrderIds, GetAskOrders, GetAsset, GetAssetAccountCount, GetAssetAccounts, GetAssetDividends, GetAssetHistory, GetAssetIds, GetAssetPhasedTransactions, GetAssetProperties, GetAssets, GetAssetsByIssuer, GetAssetTransfers, GetAssignedShufflings, GetAvailableToBuy, GetAvailableToSell, GetBalance, GetBalances, GetBidOrder, GetBidOrderIds, GetBidOrders, GetBlock, GetBlockchainStatus, GetBlockchainTransactions, GetBlockId, GetBlocks, GetBundlerRates, GetBundlers, GetBundlingOptions, GetBuyOffers, GetChannelTaggedData, GetCoinExchangeOrder, GetCoinExchangeOrderIds, GetCoinExchangeOrders, GetCoinExchangeTrade, GetCoinExchangeTrades, GetConstants, GetContractReferences, GetCurrencies, GetCurrenciesByIssuer, GetCurrency, GetCurrencyAccountCount, GetCurrencyAccounts, GetCurrencyFounders, GetCurrencyIds, GetCurrencyPhasedTransactions, GetCurrencyTransfers, GetDataTagCount, GetDataTags, GetDataTagsLike, GetDGSExpiredPurchases, GetDGSGood, GetDGSGoods, GetDGSGoodsCount, GetDGSGoodsPurchaseCount, GetDGSGoodsPurchases, GetDGSPendingPurchases, GetDGSPurchase, GetDGSPurchaseCount, GetDGSPurchases, GetDGSTagCount, GetDGSTags, GetDGSTagsLike, GetECBlock, GetEffectiveBalance, GetExchanges, GetExchangesByExchangeRequest, GetExchangesByOffer, GetExecutedTransactions, GetExpectedAskOrders, GetExpectedAssetDeletes, GetExpectedAssetTransfers, GetExpectedBidOrders, GetExpectedBuyOffers, GetExpectedCoinExchangeOrderCancellations, GetExpectedCoinExchangeOrders, GetExpectedCurrencyTransfers, GetExpectedExchangeRequests, GetExpectedOrderCancellations, GetExpectedSellOffers, GetExpectedTransactions, GetForging, GetFundingMonitor, GetFxtTransaction, GetGuaranteedBalance, GetHashedSecretPhasedTransactions, GetHoldingShufflings, GetLastExchanges, GetLastTrades, GetLinkedPhasedTransactions, GetLog, GetMintingTarget, GetMyInfo, GetNextBlockGenerators, GetOffer, GetOrderTrades, GetPeer, GetPeers, GetPhasingAssetControl, GetPhasingOnlyControl, GetPhasingPoll, GetPhasingPollVote, GetPhasingPollVotes, GetPlugins, GetPoll, GetPollResult, GetPolls, GetPollVote, GetPollVotes, GetPrunableMessage, GetPrunableMessages, GetReferencingTransactions, GetSellOffers, GetSharedKey, GetShufflers, GetShuffling, GetShufflingParticipants, GetStackTraces, GetState, GetTaggedData, GetTime, GetTrades, GetTransaction, GetTransactionBytes, GetUnconfirmedTransactionIds, GetUnconfirmedTransactions, GetVoterPhasedTransactions, Hash, HexConvert, JPLSnapshot.JPLSnapshotAPI, LongConvert, LuceneReindex, ManagePeersNetworking, ParsePhasingParams, ParseTransaction, PopOff, ProcessVoucher, ReadMessage, RebroadcastUnconfirmedTransactions, RequeueUnconfirmedTransactions, RetrievePrunedData, RetrievePrunedTransaction, RSConvert, Scan, SearchAccounts, SearchAssets, SearchCurrencies, SearchDGSGoods, SearchPolls, SearchTaggedData, SendTransaction, SetAPIProxyPeer, SetLogging, Shutdown, SignTransaction, SimulateCoinExchange, SplitSecret, StandbyShuffling.BaseAPIRequestHandler, StartBundler, StartForging, StartFundingMonitor, StartShuffler, StopBundler, StopForging, StopFundingMonitor, StopShuffler, TrimDerivedTables, VerifyPrunableMessage, VerifyTaggedData
  Enclosing class:
    APIServlet

      public abstract static class APIServlet.APIRequestHandler
      extends java.lang.Object

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `APIRequestHandler(APITag[] apiTags, java.lang.String... parameters)`
    `protected` | `APIRequestHandler(java.lang.String fileParameter, APITag[] apiTags, java.lang.String... origParameters)`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected boolean` | `allowRequiredBlockParameters()`
    `java.util.Set<APITag>` | `getAPITags()`
    `java.lang.String` | `getFileParameter()`
    `java.util.List<java.lang.String>` | `getParameters()`
    `protected boolean` | `isChainSpecific()`
    `boolean` | `isIgnisOnly()`
    `protected boolean` | `isPassword(java.lang.String parameter)`
    `protected boolean` | `isTextArea(java.lang.String parameter)`
    `protected abstract org.json.simple.JSONStreamAware` | `processRequest(javax.servlet.http.HttpServletRequest request)`
    `protected org.json.simple.JSONStreamAware` | `processRequest(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)`
    `protected boolean` | `requireBlockchain()`
    `protected boolean` | `requireFullClient()`
    `protected boolean` | `requirePassword()`
    `protected boolean` | `requirePost()`
    `protected boolean` | `startDbTransaction()`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### APIRequestHandler

          protected APIRequestHandler(APITag[] apiTags,
                                      java.lang.String... parameters)

    - #### APIRequestHandler

          protected APIRequestHandler(java.lang.String fileParameter,
                                      APITag[] apiTags,
                                      java.lang.String... origParameters)

  - ### Method Detail

    - #### getParameters

          public final java.util.List<java.lang.String> getParameters()

    - #### getAPITags

          public final java.util.Set<APITag> getAPITags()

    - #### getFileParameter

          public final java.lang.String getFileParameter()

    - #### isIgnisOnly

          public boolean isIgnisOnly()

    - #### processRequest

          protected abstract org.json.simple.JSONStreamAware processRequest(javax.servlet.http.HttpServletRequest request)
                                                                     throws NxtException

      Throws:
        `NxtException`

    - #### processRequest

          protected org.json.simple.JSONStreamAware processRequest(javax.servlet.http.HttpServletRequest request,
                                                                   javax.servlet.http.HttpServletResponse response)
                                                            throws NxtException

      Throws:
        `NxtException`

    - #### requirePost

          protected boolean requirePost()

    - #### startDbTransaction

          protected boolean startDbTransaction()

    - #### requirePassword

          protected boolean requirePassword()

    - #### allowRequiredBlockParameters

          protected boolean allowRequiredBlockParameters()

    - #### requireBlockchain

          protected boolean requireBlockchain()

    - #### requireFullClient

          protected boolean requireFullClient()

    - #### isChainSpecific

          protected boolean isChainSpecific()

    - #### isTextArea

          protected boolean isTextArea(java.lang.String parameter)

    - #### isPassword

          protected boolean isPassword(java.lang.String parameter)