nl:: Weave:: Profiles:: BDX_Development:: BDXTransfer
#include <src/lib/profiles/bulk-data-transfer/Development/BDXTransferState.h>
Ta struktura zawiera użytkowników danych reprezentujących aktywny transfer BDX.
Podsumowanie
Te obiekty są używane przez BdxProtocol do zachowania stanu protokołu. Są one zarządzane przez serwer BdxServer, który obsługuje tworzenie i inicjowanie nowych transferów, w tym zarządzanie połączeniami i ExchangeContexts.
Atrybuty publiczne |
|
---|---|
mAmInitiator
|
bool
|
mAmSender
|
bool
|
mAppState
|
void *
|
mBlockCounter
|
uint32_t
Następny numer bloku spodziewamy się otrzymać podczas wysyłania (po oficjalnym rozpoczęciu przenoszenia) żądania BlockQuery lub BlockACK.
|
mBytesSent
|
uint64_t
|
mExchangeContext
|
|
mFileDesignator
|
plik/blokowanie powiązanych użytkowników danych DO ZROBIENIA: usunąć to? czy powinno wystarczyć zawarcie umowy dotyczącej tego, jak może wyglądać ten ciąg znaków i w jaki sposób będzie używany? Czy jest wspierany przez pakiet PacketBuffer? Jeśli tak, to chyba nie powinno tak być przez cały czas, bo zajmuje to całe życie.
|
mFirstQuery
|
bool
|
mHandlers
|
|
mIsAccepted
|
bool
|
mIsCompletedSuccessfully
|
bool
|
mIsInitiated
|
bool
|
mIsWideRange
|
bool
|
mLength
|
uint64_t
|
mMaxBlockSize
|
uint16_t
|
mNext)(BDXTransfer &)
|
|
mStartOffset
|
uint64_t
|
mTransferMode
|
uint8_t
|
mVersion
|
uint8_t
|
Funkcje publiczne |
|
---|---|
DispatchErrorHandler(WEAVE_ERROR anErrorCode)
|
void
Jeśli moduł obsługi błędów został ustawiony, wywołaj go.
|
DispatchGetBlockHandler(uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock)
|
void
Jeśli został ustawiony moduł obsługi get block, wywołaj go.
|
DispatchPutBlockHandler(uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock)
|
void
Jeśli został ustawiony moduł obsługi bloku put, wywołaj go.
|
DispatchReceiveAccept(ReceiveAccept *aReceiveAcceptMsg)
|
Dyspozytorzy po prostu sprawdzają, czy został ustawiony moduł obsługi, a jeśli tak, wywołują go.
|
DispatchRejectHandler(StatusReport *aReport)
|
void
Jeśli moduł obsługi odrzucania został ustawiony, wywołaj go.
|
DispatchSendAccept(SendAccept *aSendAcceptMsg)
|
Jeśli moduł obsługi wysyłania i przyjmowania wiadomości został ustawiony, wywołaj go.
|
DispatchXferDoneHandler(void)
|
void
Jeśli został ustawiony moduł obsługi zakończenia transferu, wywołaj go.
|
DispatchXferErrorHandler(StatusReport *aXferError)
|
void
Jeśli został ustawiony moduł obsługi błędów transferu, wywołaj go.
|
GetDefaultFlags(bool aExpectResponse)
|
uint16_t
Ta funkcja zwraca domyślne flagi wysyłane z wiadomością.
|
IsAsync(void)
|
bool
Returns true if this transfer is asynchronous, false otherwise. |
IsDriver(void)
|
bool
Returns true if this entity (node) is the driver for this transfer, false otherwise. |
Reset(void)
|
void
Sets all pointers to NULL, resets counters, etc. |
SetHandlers(BDXHandlers aHandlers)
|
void
Ta funkcja ustawia moduły obsługi tego obiektu BDXTransfer.
|
Shutdown(void)
|
void
Shuts down the current transfer, including closing any open ExchangeContext. |
Atrybuty publiczne
mAmInitiator
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mAmInitiator
mAmSender
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mAmSender
mAppState
void * nl::Weave::Profiles::BDX_Development::BDXTransfer::mAppState
mBlockCounter
uint32_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mBlockCounter
Następny numer bloku spodziewamy się otrzymać podczas wysyłania (po oficjalnym rozpoczęciu przenoszenia) żądania BlockQuery lub BlockACK.
Po otrzymaniu wiadomości mamy do czynienia z następnym elementem BlockSend lub najnowszym zapytaniem BlockQuery, które wysłaliśmy (po oficjalnym rozpoczęciu przenoszenia i wysłaniu pierwszego zapytania).
mBytesSent
uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mBytesSent
mExchangeContext
ExchangeContext * nl::Weave::Profiles::BDX_Development::BDXTransfer::mExchangeContext
mFileDesignator
ReferencedString nl::Weave::Profiles::BDX_Development::BDXTransfer::mFileDesignator
plik/blokowanie powiązanych użytkowników danych DO ZROBIENIA: usunąć to? czy powinno wystarczyć zawarcie umowy dotyczącej tego, jak może wyglądać ten ciąg znaków i w jaki sposób będzie używany? Czy jest wspierany przez pakiet PacketBuffer? Jeśli tak, to chyba nie powinno tak być przez cały czas, bo zajmuje to całe życie.
mFirstQuery
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mFirstQuery
mHandlers
BDXHandlers nl::Weave::Profiles::BDX_Development::BDXTransfer::mHandlers
mIsAccepted
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsAccepted
mIsCompletedSuccessfully
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsCompletedSuccessfully
mIsInitiated
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsInitiated
mIsWideRange
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsWideRange
mLength
uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mLength
mMaxBlockSize
uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mMaxBlockSize
mNext
WEAVE_ERROR(* nl::Weave::Profiles::BDX_Development::BDXTransfer::mNext)(BDXTransfer &)
mStartOffset
uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mStartOffset
mTransferMode
uint8_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mTransferMode
mVersion
uint8_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mVersion
Funkcje publiczne
DispatchErrorHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchErrorHandler( WEAVE_ERROR anErrorCode )
Jeśli moduł obsługi błędów został ustawiony, wywołaj go.
Jeśli zasada nie jest skonfigurowana, domyślnie wyłącz również przenoszenie.
Szczegóły | |||
---|---|---|---|
Parametry |
|
DispatchGetBlockHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchGetBlockHandler( uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock )
Jeśli został ustawiony moduł obsługi get block, wywołaj go.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
DispatchPutBlockHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchPutBlockHandler( uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock )
Jeśli został ustawiony moduł obsługi bloku put, wywołaj go.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
DispatchReceiveAccept
WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchReceiveAccept( ReceiveAccept *aReceiveAcceptMsg )
Dyspozytorzy po prostu sprawdzają, czy został ustawiony moduł obsługi, a jeśli tak, wywołują go.
Jeśli został ustawiony moduł obsługi odbierania, wywołaj go.
Dlatego też należy ich używać jako publicznego interfejsu do wywoływania wywołań zwrotnych, którego nigdy nie należy stykać bezpośrednio z aplikacjami zewnętrznymi. Może się zdarzyć, że w przyszłej wersji funkcji BDXTransfer będzie używany obiekt przekazany, zamiast przechowywania osobnych wskaźników do poszczególnych wywołań zwrotnych.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
wartość błędu
|
DispatchRejectHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchRejectHandler( StatusReport *aReport )
Jeśli moduł obsługi odrzucania został ustawiony, wywołaj go.
Jeśli zasada nie jest skonfigurowana, domyślnie wyłącz również przenoszenie.
Szczegóły | |||
---|---|---|---|
Parametry |
|
DispatchSendAccept
WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchSendAccept( SendAccept *aSendAcceptMsg )
Jeśli moduł obsługi wysyłania i przyjmowania wiadomości został ustawiony, wywołaj go.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
wartość błędu
|
DispatchXferDoneHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferDoneHandler( void )
Jeśli został ustawiony moduł obsługi zakończenia transferu, wywołaj go.
Jeśli zasada nie jest skonfigurowana, domyślnie wyłącz również przenoszenie.
DispatchXferErrorHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferErrorHandler( StatusReport *aXferError )
Jeśli został ustawiony moduł obsługi błędów transferu, wywołaj go.
Jeśli zasada nie jest skonfigurowana, domyślnie wyłącz również przenoszenie.
Szczegóły | |||
---|---|---|---|
Parametry |
|
GetDefaultFlags
uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::GetDefaultFlags( bool aExpectResponse )
Ta funkcja zwraca domyślne flagi wysyłane z wiadomością.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
Flagi do wysłania
|
IsAsync
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::IsAsync( void )
Returns true if this transfer is asynchronous, false otherwise.
Szczegóły | |
---|---|
Zwroty |
true, jeśli transfer jest asynchroniczny.
|
IsDriver
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::IsDriver( void )
Returns true if this entity (node) is the driver for this transfer, false otherwise.
Szczegóły | |
---|---|
Zwroty |
Prawda, że ten element jest sterownikiem tego transferu
|
Resetuj
void nl::Weave::Profiles::BDX_Development::BDXTransfer::Reset( void )
Sets all pointers to NULL, resets counters, etc.
Wywoływane po wyłączeniu.
SetHandlers
void nl::Weave::Profiles::BDX_Development::BDXTransfer::SetHandlers( BDXHandlers aHandlers )
Ta funkcja ustawia moduły obsługi tego obiektu BDXTransfer.
Zawsze używaj tej metody, zamiast ustawiać ją ręcznie, ponieważ bazowa implementacja sposobu przechowywania wskaźników funkcji modułu obsługi nie jest częścią publicznego interfejsu API.
Szczegóły | |||
---|---|---|---|
Parametry |
|
Wyłączono
void nl::Weave::Profiles::BDX_Development::BDXTransfer::Shutdown( void )
Shuts down the current transfer, including closing any open ExchangeContext.
Wykorzystaj tę okazję, aby zwolnić wszystkie zasoby związane z tym transferem i Twoją logiką aplikacji.