/*---------------------------------------------------------------------------* Project: Horizon File: http_Const.h Copyright (C)2009 Nintendo Co., Ltd. All rights reserved. These coded instructions, statements, and computer programs contain proprietary information of Nintendo of America Inc. and/or Nintendo Company Ltd., and are protected by Federal copyright law. They may not be disclosed to third parties or copied or duplicated in any form, in whole or in part, without the prior written consent of Nintendo. $Rev: 26779 $ *---------------------------------------------------------------------------*/ #ifndef NN_HTTP_HTTP_CONST_H_ #define NN_HTTP_HTTP_CONST_H_ #include /*! @addtogroup nn_http http @{ */ /*! @brief HTTPリクエストのメソッド */ enum nnHttpRequestMethod { NN_HTTP_REQUEST_METHOD_NONE = NHTTP_REQMETHOD_NONE, //!< メソッド無し(ライブラリ内部でのみ使用) NN_HTTP_REQUEST_METHOD_GET = NHTTP_REQMETHOD_GET, //!< GETメソッド NN_HTTP_REQUEST_METHOD_POST = NHTTP_REQMETHOD_POST, //!< POSTメソッド NN_HTTP_REQUEST_METHOD_HEAD = NHTTP_REQMETHOD_HEAD //!< HEADメソッド }; /*! @brief POSTデータのエンコーディングタイプ */ enum nnHttpEncodingType { NN_HTTP_ENCODING_TYPE_AUTO = NHTTP_ENCODING_TYPE_AUTO, //!< 自動設定(default) NN_HTTP_ENCODING_TYPE_URL = NHTTP_ENCODING_TYPE_URL, //!< application/x-www-form-urlencoded NN_HTTP_ENCODING_TYPE_MULTIPART = NHTTP_ENCODING_TYPE_MULTIPART //!< multipart/form-data }; /*! @brief POSTデータのタイプ */ enum nnHttpPostDataType { NN_HTTP_POST_DATA_TYPE_URLENCODE = NHTTP_POST_DATA_TYPE_URLENCODE, //!< URLENCODE形式 NN_HTTP_POST_DATA_TYPE_MULTIPART = NHTTP_POST_DATA_TYPE_MULTIPART, //!< MULTIPART形式 NN_HTTP_POST_DATA_TYPE_RAW = NHTTP_POST_DATA_TYPE_RAW //!< RAW形式 }; /*! @brief 接続ハンドルの状態 */ enum nnHttpStatus { NN_HTTP_STATUS_CREATED = NHTTP_CONNST_CREATED, //!< 初期状態 NN_HTTP_STATUS_INITIALIZED = NHTTP_CONNST_INITIALIZED, //!< 初期化完了 NN_HTTP_STATUS_ENQUEUED_LSN = NHTTP_CONNST_ENQUEUED_LSN, //!< リスナースレッドのキューに入っている NN_HTTP_STATUS_IN_LSN = NHTTP_CONNST_IN_LSN, //!< リスナースレッドで処理中 NN_HTTP_STATUS_ENQUEUED_COMM = NHTTP_CONNST_ENQUEUED_COMM, //!< 通信スレッドのキューに入っている NN_HTTP_STATUS_CONNECTING = NHTTP_CONNST_CONNECTING, //!< 接続処理中 NN_HTTP_STATUS_SENDING = NHTTP_CONNST_SENDING, //!< データ送信中 NN_HTTP_STATUS_RECEIVING_HEADER = NHTTP_CONNST_RECEIVING_HEADER, //!< ヘッダ受信中 NN_HTTP_STATUS_RECEIVING_BODY = NHTTP_CONNST_RECEIVING_BODY, //!< ボディ受信中 NN_HTTP_STATUS_RECEIVED = NHTTP_CONNST_RECEIVED, //!< 受信終了 NN_HTTP_STATUS_FINISHED = NHTTP_CONNST_FINISHED //!< 処理終了 }; /*! @} */ #ifdef __cplusplus namespace nn { namespace http { /*! @brief HTTPリクエストのメソッド */ enum RequestMethod { REQUEST_METHOD_NONE = NN_HTTP_REQUEST_METHOD_NONE, //!< メソッド無し(ライブラリ内部でのみ使用) REQUEST_METHOD_GET = NN_HTTP_REQUEST_METHOD_GET, //!< GETメソッド REQUEST_METHOD_POST = NN_HTTP_REQUEST_METHOD_POST, //!< POSTメソッド REQUEST_METHOD_HEAD = NN_HTTP_REQUEST_METHOD_HEAD //!< HEADメソッド }; /*! @brief POSTデータのエンコーディングタイプ */ enum EncodingType { ENCODING_TYPE_AUTO = NN_HTTP_ENCODING_TYPE_AUTO, //!< 自動設定(default) ENCODING_TYPE_URL = NN_HTTP_ENCODING_TYPE_URL, //!< application/x-www-form-urlencoded ENCODING_TYPE_MULTIPART = NN_HTTP_ENCODING_TYPE_MULTIPART //!< multipart/form-data }; /*! @brief POSTデータのタイプ */ enum PostDataType { POST_DATA_TYPE_URLENCODE = NN_HTTP_POST_DATA_TYPE_URLENCODE, //!< URLENCODE形式 POST_DATA_TYPE_MULTIPART = NN_HTTP_POST_DATA_TYPE_MULTIPART, //!< MULTIPART形式 POST_DATA_TYPE_RAW = NN_HTTP_POST_DATA_TYPE_RAW //!< RAW形式 }; /*! @brief 接続の状態 */ enum Status { STATUS_CREATED = NN_HTTP_STATUS_CREATED, //!< 初期状態 STATUS_INITIALIZED = NN_HTTP_STATUS_INITIALIZED, //!< 初期化完了 STATUS_ENQUEUED_LSN = NN_HTTP_STATUS_ENQUEUED_LSN, //!< リスナースレッドのキューに入っている STATUS_IN_LSN = NN_HTTP_STATUS_IN_LSN, //!< リスナースレッドで処理中 STATUS_ENQUEUED_COMM = NN_HTTP_STATUS_ENQUEUED_COMM, //!< 通信スレッドのキューに入っている STATUS_CONNECTING = NN_HTTP_STATUS_CONNECTING, //!< 接続処理中 STATUS_SENDING = NN_HTTP_STATUS_SENDING, //!< データ送信中 STATUS_RECEIVING_HEADER = NN_HTTP_STATUS_RECEIVING_HEADER, //!< ヘッダ受信中 STATUS_RECEIVING_BODY = NN_HTTP_STATUS_RECEIVING_BODY, //!< ボディ受信中 STATUS_RECEIVED = NN_HTTP_STATUS_RECEIVED, //!< 受信終了 STATUS_FINISHED = NN_HTTP_STATUS_FINISHED //!< 処理終了 }; /*! @brief プロキシの認証タイプ */ enum ProxyAuthType { PROXY_AUTH_TYPE_NONE, //!< 認証無し PROXY_AUTH_TYPE_BASIC //!< ベーシック認証 }; namespace detail { /** * 接続ハンドルコールバックイベント */ enum ConnectionEvent { CONN_EV_NONE = NHTTP_CONN_EV_NONE, //!< イベント無し(ライブラリ内部でのみ使用) CONN_EV_POST_SEND = NHTTP_CONN_EV_POST_SEND, //!< POSTストリーミング送信開始 CONN_EV_POST_SEND_ALL = NHTTP_CONN_EV_POST_SEND_ALL, //!< POSTストリーミング送信開始(全データ指定モード) CONN_EV_HEADER_RECV_DONE = NHTTP_CONN_EV_HEADER_RECV_DONE, //!< ヘッダ受信完了 CONN_EV_BODY_RECV_FULL = NHTTP_CONN_EV_BODY_RECV_FULL, //!< ボディ受信バッファの満了 CONN_EV_BODY_RECV_DONE = NHTTP_CONN_EV_BODY_RECV_DONE, //!< ボディ受信完了 CONN_EV_COMPLETE = NHTTP_CONN_EV_COMPLETE, //!< 接続ハンドル処理完了 CONN_EV_MAX = NHTTP_CONN_EV_MAX //!< イベント最大値(ライブラリ内部でのみ使用) }; } // end of namespace detail } // end of namespace http } // end of namespace nn #endif /*__cplusplus*/ #endif /* NN_HTTP_HTTP_CONST_H_ */