//
// Open Service Platform
-// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
+// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
//
// Licensed under the Apache License, Version 2.0 (the License);
// you may not use this file except in compliance with the License.
-//
+//
// Open Service Platform
-// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
-//
+// Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
+//
// Licensed under the Apache License, Version 2.0 (the License);
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
: virtual public Tizen::Base::Runtime::IEventListener
{
public:
- /**
- * This polymorphic destructor should be overridden if required. This way,
- * the destructors of the derived classes are called when the destructor of this interface is called.
- *
- * @since 2.0
- */
- virtual ~IWifiDirectDeviceListener(void) {}
+ /**
+ * This polymorphic destructor should be overridden if required. This way,
+ * the destructors of the derived classes are called when the destructor of this interface is called.
+ *
+ * @since 2.0
+ */
+ virtual ~IWifiDirectDeviceListener(void) {}
- /**
- * Called to notify the application that the local Wi-Fi Direct mode is enabled.
- *
- * @since 2.0
- *
- * @param[in] localDeviceId The ID of the Wi-Fi Direct device
- * @param[in] r An error code
- * @exception E_SUCCESS The activation is successful.
- * @exception E_SYSTEM A system error has occurred.
- * @see WifiDirectDevice::Activate()
- */
- virtual void OnWifiDirectDeviceActivated(WifiDirectDeviceId localDeviceId, result r) = 0;
+ /**
+ * Called to notify the application that the local Wi-Fi Direct mode is enabled.
+ *
+ * @since 2.0
+ *
+ * @param[in] localDeviceId The ID of the Wi-Fi Direct device
+ * @param[in] r An error code
+ * @exception E_SUCCESS The activation is successful.
+ * @exception E_SYSTEM A system error has occurred.
+ * @see WifiDirectDevice::Activate()
+ */
+ virtual void OnWifiDirectDeviceActivated(WifiDirectDeviceId localDeviceId, result r) = 0;
- /**
- * Called to notify the application that the local Wi-Fi Direct mode is disabled.
- *
- * @since 2.0
- *
- * @param[in] localDeviceId An ID for a Wi-Fi Direct device
- * @param[in] r An error code
- * @exception E_SUCCESS The deactivation is successful.
- * @exception E_SYSTEM A system error has occurred.
- * @see WifiDirectDevice::Deactivate()
- */
- virtual void OnWifiDirectDeviceDeactivated(WifiDirectDeviceId localDeviceId, result r) = 0;
+ /**
+ * Called to notify the application that the local Wi-Fi Direct mode is disabled.
+ *
+ * @since 2.0
+ *
+ * @param[in] localDeviceId An ID for a Wi-Fi Direct device
+ * @param[in] r An error code
+ * @exception E_SUCCESS The deactivation is successful.
+ * @exception E_SYSTEM A system error has occurred.
+ * @see WifiDirectDevice::Deactivate()
+ */
+ virtual void OnWifiDirectDeviceDeactivated(WifiDirectDeviceId localDeviceId, result r) = 0;
- /**
- * Called to notify the application when a Wi-Fi Direct connection is established with a remote device.
- *
- * @since 2.0
- *
- * @param[in] localDeviceId An ID for a Wi-Fi Direct device
- * @param[in] remoteDeviceInfo The remote device
- * @param[in] r An error code
- *
- * @exception E_SUCCESS The Wi-Fi Direct group has been created successfully.
- * @exception E_SYSTEM A system error has occurred.
- * @exception E_OPERATION_CANCELED The operation has been cancelled explicitly.
- * @exception E_AUTHENTICATION The authentication has failed during the Wi-Fi connection process.
- * @exception E_NOT_RESPONDING The remote device is not responding.
- * @see WifiDirectDevice::Connect()
- * @see WifiDirectDevice::CancelConnect()
- */
- virtual void OnWifiDirectConnected(WifiDirectDeviceId localDeviceId, const WifiDirectDeviceInfo& remoteDeviceInfo, result r) = 0;
+ /**
+ * Called to notify the application when a Wi-Fi Direct connection is established with a remote device.
+ *
+ * @since 2.0
+ *
+ * @param[in] localDeviceId An ID for a Wi-Fi Direct device
+ * @param[in] remoteDeviceInfo The remote device
+ * @param[in] r An error code
+ *
+ * @exception E_SUCCESS The Wi-Fi Direct group has been created successfully.
+ * @exception E_SYSTEM A system error has occurred.
+ * @exception E_OPERATION_CANCELED The operation has been cancelled explicitly.
+ * @exception E_AUTHENTICATION The authentication has failed during the Wi-Fi connection process.
+ * @exception E_NOT_RESPONDING The remote device is not responding.
+ * @see WifiDirectDevice::Connect()
+ * @see WifiDirectDevice::CancelConnect()
+ */
+ virtual void OnWifiDirectConnected(WifiDirectDeviceId localDeviceId, const WifiDirectDeviceInfo& remoteDeviceInfo, result r) = 0;
- /**
- * Called to notify the application when the Wi-Fi Direct connection is disconnected with a peer device.
- *
- * @since 2.0
- *
- * @param[in] localDeviceId An ID for a Wi-Fi Direct device
- * @param[in] peerMacAddress The mac address of the peer device
- * @param[in] r An error code
- * @exception E_SUCCESS The method is successful.
- * @exception E_SYSTEM A system error has occurred.
- * @see WifiDirectDevice::Disconnect()
- */
- virtual void OnWifiDirectDisconnected(WifiDirectDeviceId localDeviceId, const Tizen::Base::String& peerMacAddress, result r) = 0;
+ /**
+ * Called to notify the application when the Wi-Fi Direct connection is disconnected with a peer device.
+ *
+ * @since 2.0
+ *
+ * @param[in] localDeviceId An ID for a Wi-Fi Direct device
+ * @param[in] peerMacAddress The mac address of the peer device
+ * @param[in] r An error code
+ * @exception E_SUCCESS The method is successful.
+ * @exception E_SYSTEM A system error has occurred.
+ * @see WifiDirectDevice::Disconnect()
+ */
+ virtual void OnWifiDirectDisconnected(WifiDirectDeviceId localDeviceId, const Tizen::Base::String& peerMacAddress, result r) = 0;
- /**
- * Called to notify the application when an autonomous group is created.
- *
- * @since 2.0
- *
- * @param[in] localDeviceId An ID for a Wi-Fi Direct device
- * @param[in] r An error code
- * @exception E_SUCCESS The method is successful.
- * @exception E_SYSTEM A system error has occurred.
- * @see WifiDirectDevice::CreateAutonomousGroup()
- */
- virtual void OnWifiDirectAutonomousGroupCreated(WifiDirectDeviceId localDeviceId, result r) = 0;
+ /**
+ * Called to notify the application when an autonomous group is created.
+ *
+ * @since 2.0
+ *
+ * @param[in] localDeviceId An ID for a Wi-Fi Direct device
+ * @param[in] r An error code
+ * @exception E_SUCCESS The method is successful.
+ * @exception E_SYSTEM A system error has occurred.
+ * @see WifiDirectDevice::CreateAutonomousGroup()
+ */
+ virtual void OnWifiDirectAutonomousGroupCreated(WifiDirectDeviceId localDeviceId, result r) = 0;
- /**
- * Called to notify the application when a local device leaves the group.
- *
- * @since 2.0
- *
- * @param[in] localDeviceId An ID for a Wi-Fi Direct device
- * @param[in] r An error code
- * @exception E_SUCCESS The method is successful.
- * @exception E_SYSTEM A system error has occurred.
- * @see WifiDirectDevice::LeaveGroup()
- */
- virtual void OnWifiDirectGroupLeft(WifiDirectDeviceId localDeviceId, result r) = 0;
+ /**
+ * Called to notify the application when a local device leaves the group.
+ *
+ * @since 2.0
+ *
+ * @param[in] localDeviceId An ID for a Wi-Fi Direct device
+ * @param[in] r An error code
+ * @exception E_SUCCESS The method is successful.
+ * @exception E_SYSTEM A system error has occurred.
+ * @see WifiDirectDevice::LeaveGroup()
+ */
+ virtual void OnWifiDirectGroupLeft(WifiDirectDeviceId localDeviceId, result r) = 0;
- /**
- * @if OSPDEPREC
- * Called to notify the application about the result and related information when a group is created or when a request to create a group is cancelled.
- * cancellation.
- *
- * @brief <i> [Deprecated] </i>
- * @deprecated This method is deprecated because the Wi-Fi direct APIs have been revised to allow the use of APIs with ease irrespective of the role (for example, group owner, group client, and so on). @n
+ /**
+ * @if OSPDEPREC
+ * Called to notify the application about the result and related information when a group is created or when a request to create a group is cancelled.
+ * cancellation.
+ *
+ * @brief <i> [Deprecated] </i>
+ * @deprecated This method is deprecated because the Wi-Fi direct APIs have been revised to allow the use of APIs with ease irrespective of the role (for example, group owner, group client, and so on). @n
* Earlier, the Wi-Fi Direct APIs were strictly provided depending on the role and so it was necessary to use these APIs. @n
- * Instead of using this method, use OnWifiDirectConnected() or OnWifiDirectAutonomousGroupCreated() method.
- *
- * @since 2.0
- *
- * @param[in] localDeviceId An ID for a Wi-Fi Direct device
- * @param[in] wifiDirectGroupInfo The WifiDirectGroupInfo instance set by the winning group owner after negotiation
- * @param[in] wifiDirectGroupOwnerDeviceInfo The WifiDirectDeviceInfo instance of the group owner
- * @param[in] pWifiDirectMember The WifiDirectGroupMember instance that is casted to the instance of
- * WifiDirectGroupOwner or WifiDirectGroupClient as a result of negotiation
- * after the creation of a group
- * @param[in] r An error code
- * @exception E_SUCCESS The Wi-Fi Direct group creation is successful.
- * @exception E_SYSTEM A system error has occurred.
- * @exception E_OPERATION_CANCELED The operation has been cancelled explicitly.
- * @exception E_AUTHENTICATION The authentication has failed during the Wi-Fi connection process.
- * @exception E_DHCP The DHCP operation has failed.
- * @exception E_NOT_RESPONDING The target is not responding.
- * @exception E_REJECTED The connection request has been rejected.
- * @exception E_REMOTE_DEVICE_NOT_FOUND The Wi-Fi Direct device has not been found.
- * @remarks If a device becomes a group client, then the WifiDirectGroupInfo::GetGroupOwnerIntent() and WifiDirectGroupInfo::GetMaxNumberOfClients() methods will not contain valid information.
+ * Instead of using this method, use OnWifiDirectConnected() or OnWifiDirectAutonomousGroupCreated() method.
+ *
+ * @since 2.0
+ *
+ * @param[in] localDeviceId An ID for a Wi-Fi Direct device
+ * @param[in] wifiDirectGroupInfo The WifiDirectGroupInfo instance set by the winning group owner after negotiation
+ * @param[in] wifiDirectGroupOwnerDeviceInfo The WifiDirectDeviceInfo instance of the group owner
+ * @param[in] pWifiDirectMember The WifiDirectGroupMember instance that is casted to the instance of
+ * WifiDirectGroupOwner or WifiDirectGroupClient as a result of negotiation
+ * after the creation of a group
+ * @param[in] r An error code
+ * @exception E_SUCCESS The Wi-Fi Direct group creation is successful.
+ * @exception E_SYSTEM A system error has occurred.
+ * @exception E_OPERATION_CANCELED The operation has been cancelled explicitly.
+ * @exception E_AUTHENTICATION The authentication has failed during the Wi-Fi connection process.
+ * @exception E_DHCP The DHCP operation has failed.
+ * @exception E_NOT_RESPONDING The target is not responding.
+ * @exception E_REJECTED The connection request has been rejected.
+ * @exception E_REMOTE_DEVICE_NOT_FOUND The Wi-Fi Direct device has not been found.
+ * @remarks If a device becomes a group client, then the WifiDirectGroupInfo::GetGroupOwnerIntent() and WifiDirectGroupInfo::GetMaxNumberOfClients() methods will not contain valid information.
* @see WifiDirectDevice::CreateGroup()
- * @see WifiDirectDevice::CancelGroupCreation()
+ * @see WifiDirectDevice::CancelGroupCreation()
* @endif
*/
virtual void OnWifiDirectGroupCreatedN(WifiDirectDeviceId localDeviceId, const WifiDirectGroupInfo& wifiDirectGroupInfo, const WifiDirectDeviceInfo& wifiDirectGroupOwnerDeviceInfo, WifiDirectGroupMember* pWifiDirectMember, result r) { delete pWifiDirectMember; }
- /**
- * Called to notify the application when the scan is completed.
- *
- * @since 2.0
- *
- * @param[in] localDeviceId An ID for a Wi-Fi Direct device
- * @param[in] pWifiDirectDeviceInfoList The WifiDirectDeviceInfo information list representing the
- * Wi-Fi Direct devices discovered by scan
- * @param[in] r An error code
- * @exception E_SUCCESS The scan is successful.
- * @exception E_SYSTEM A system error has occurred.
- * @exception E_OPERATION_CANCELED The operation has been cancelled explicitly.
- * @see WifiDirectDevice::Scan()
- * @see WifiDirectDevice::CancelScan()
- */
- virtual void OnWifiDirectScanCompletedN(WifiDirectDeviceId localDeviceId, Tizen::Base::Collection::IList* pWifiDirectDeviceInfoList, result r) = 0;
+ /**
+ * Called to notify the application when the scan is completed.
+ *
+ * @since 2.0
+ *
+ * @param[in] localDeviceId An ID for a Wi-Fi Direct device
+ * @param[in] pWifiDirectDeviceInfoList The WifiDirectDeviceInfo information list representing the
+ * Wi-Fi Direct devices discovered by scan
+ * @param[in] r An error code
+ * @exception E_SUCCESS The scan is successful.
+ * @exception E_SYSTEM A system error has occurred.
+ * @exception E_OPERATION_CANCELED The operation has been cancelled explicitly.
+ * @see WifiDirectDevice::Scan()
+ * @see WifiDirectDevice::CancelScan()
+ */
+ virtual void OnWifiDirectScanCompletedN(WifiDirectDeviceId localDeviceId, Tizen::Base::Collection::IList* pWifiDirectDeviceInfoList, result r) = 0;
- /**
- * @if OSPDEPREC
- * Called to notify the application when the connection to a Wi-Fi Direct group owner is completely established.
- *
- * @brief <i> [Deprecated] </i>
- * @deprecated This method is deprecated because the Wi-Fi direct APIs have been revised to allow the use of APIs with ease irrespective of the role (for example, group owner, group client, and so on). @n
+ /**
+ * @if OSPDEPREC
+ * Called to notify the application when the connection to a Wi-Fi Direct group owner is completely established.
+ *
+ * @brief <i> [Deprecated] </i>
+ * @deprecated This method is deprecated because the Wi-Fi direct APIs have been revised to allow the use of APIs with ease irrespective of the role (for example, group owner, group client, and so on). @n
* Earlier, the Wi-Fi Direct APIs were strictly provided depending on the role and so it was necessary to use these APIs. @n
- * Instead of using this method, use OnWifiDirectConnected() method.
- *
- * @since 2.0
- *
- * @param[in] localDeviceId An ID for a Wi-Fi Direct device
- * @param[in] wifiDirectGroupOwnerDeviceInfo The WifiDirectDeviceInfo of the connected Wi-Fi Direct group
- * owner
- * @param[in] r An error code
- * @exception E_SUCCESS The association is successful.
- * @exception E_SYSTEM A system error has occurred.
- * @exception E_AUTHENTICATION The authentication has failed during the Wi-Fi connection process.
- * @exception E_DHCP The DHCP operation has failed.
- * @exception E_NOT_RESPONDING The target is not responding.
- * @exception E_REJECTED The connection request has been rejected.
- * @exception E_REMOTE_DEVICE_NOT_FOUND The Wi-Fi Direct device has not been found.
- * @see WifiDirectDevice::Associate()
- * @endif
- */
- virtual void OnWifiDirectAssociationCompleted(WifiDirectDeviceId localDeviceId, const WifiDirectDeviceInfo& wifiDirectGroupOwnerDeviceInfo, result r) {}
+ * Instead of using this method, use OnWifiDirectConnected() method.
+ *
+ * @since 2.0
+ *
+ * @param[in] localDeviceId An ID for a Wi-Fi Direct device
+ * @param[in] wifiDirectGroupOwnerDeviceInfo The WifiDirectDeviceInfo of the connected Wi-Fi Direct group
+ * owner
+ * @param[in] r An error code
+ * @exception E_SUCCESS The association is successful.
+ * @exception E_SYSTEM A system error has occurred.
+ * @exception E_AUTHENTICATION The authentication has failed during the Wi-Fi connection process.
+ * @exception E_DHCP The DHCP operation has failed.
+ * @exception E_NOT_RESPONDING The target is not responding.
+ * @exception E_REJECTED The connection request has been rejected.
+ * @exception E_REMOTE_DEVICE_NOT_FOUND The Wi-Fi Direct device has not been found.
+ * @see WifiDirectDevice::Associate()
+ * @endif
+ */
+ virtual void OnWifiDirectAssociationCompleted(WifiDirectDeviceId localDeviceId, const WifiDirectDeviceInfo& wifiDirectGroupOwnerDeviceInfo, result r) {}
/**
* Called to notify the application when a remote device is found during the Wi-Fi Direct scan process.
virtual void OnWifiDirectRemoteDeviceFound(WifiDirectDeviceId localDeviceId, const WifiDirectDeviceInfo& remoteDeviceInfo) {}
protected:
- //
- // This method is for internal use only. Using this method can cause behavioral, security-related,
- // and consistency-related issues in the application.
- //
- // This method is reserved and may change its name at any time without prior notice.
- //
- // @since 2.0
- //
- virtual void OnWifiDirectDeviceListener_Reserved1(void) {}
+ //
+ // This method is for internal use only. Using this method can cause behavioral, security-related,
+ // and consistency-related issues in the application.
+ //
+ // This method is reserved and may change its name at any time without prior notice.
+ //
+ // @since 2.0
+ //
+ virtual void OnWifiDirectDeviceListener_Reserved1(void) {}
- //
- // This method is for internal use only. Using this method can cause behavioral, security-related,
- // and consistency-related issues in the application.
- //
- // This method is reserved and may change its name at any time without prior notice.
- //
- // @since 2.0
- //
- virtual void OnWifiDirectDeviceListener_Reserved2(void) {}
+ //
+ // This method is for internal use only. Using this method can cause behavioral, security-related,
+ // and consistency-related issues in the application.
+ //
+ // This method is reserved and may change its name at any time without prior notice.
+ //
+ // @since 2.0
+ //
+ virtual void OnWifiDirectDeviceListener_Reserved2(void) {}
- //
- // This method is for internal use only. Using this method can cause behavioral, security-related,
- // and consistency-related issues in the application.
- //
- // This method is reserved and may change its name at any time without prior notice.
- //
- // @since 2.0
- //
- virtual void OnWifiDirectDeviceListener_Reserved3(void) {}
+ //
+ // This method is for internal use only. Using this method can cause behavioral, security-related,
+ // and consistency-related issues in the application.
+ //
+ // This method is reserved and may change its name at any time without prior notice.
+ //
+ // @since 2.0
+ //
+ virtual void OnWifiDirectDeviceListener_Reserved3(void) {}
- //
- // This method is for internal use only. Using this method can cause behavioral, security-related,
- // and consistency-related issues in the application.
- //
- // This method is reserved and may change its name at any time without prior notice.
- //
- // @since 2.0
- //
- virtual void OnWifiDirectDeviceListener_Reserved4(void) {}
+ //
+ // This method is for internal use only. Using this method can cause behavioral, security-related,
+ // and consistency-related issues in the application.
+ //
+ // This method is reserved and may change its name at any time without prior notice.
+ //
+ // @since 2.0
+ //
+ virtual void OnWifiDirectDeviceListener_Reserved4(void) {}
}; // IWifiDirectDeviceListener
* @exception E_SYSTEM An internal error has occurred.
* @exception E_OUT_OF_MEMORY The memory is insufficient.
* @exception E_UNSUPPORTED_OPERATION The device does not support the Wi-Fi Direct feature.
- * For more information, see <a href=”../org.tizen.gettingstarted/html/tizen_overview/manifest_features.htm”>Application Filtering</a>.
+ * For more information, see <a href=”../org.tizen.gettingstarted/html/tizen_overview/application_filtering.htm”>Application Filtering</a>.
* @remarks
* - Currently, a single WifiDirectDeviceInfo instance is returned because the concurrent mode is not supported.
* - The specific error code can be accessed using the GetLastResult() method.
* @exception E_INVALID_ARG The specified input parameter is invalid.
* @exception E_OUT_OF_MEMORY The memory is insufficient.
* @exception E_UNSUPPORTED_OPERATION The device does not support the Wi-Fi Direct feature.
- * For more information, see <a href=”../org.tizen.gettingstarted/html/tizen_overview/manifest_features.htm”>Application Filtering</a>.
+ * For more information, see <a href=”../org.tizen.gettingstarted/html/tizen_overview/application_filtering.htm”>Application Filtering</a>.
* @remarks
* - If the value of @c pLocalDeviceInfo is @c null, the WifiDirectDevice instance is created for the system default device.
* Otherwise, the value of @c pLocalDeviceInfo should be one of the elements obtained
* @exception E_SYSTEM A system error has occurred.
* @exception E_OUT_OF_MEMORY The memory is insufficient.
* @exception E_UNSUPPORTED_OPERATION The device does not support the Wi-Fi feature.
- * For more information, see <a href=”../org.tizen.gettingstarted/html/tizen_overview/manifest_features.htm”>Application Filtering</a>.
+ * For more information, see <a href=”../org.tizen.gettingstarted/html/tizen_overview/application_filtering.htm”>Application Filtering</a>.
* @remarks
* - The @c listener instance must not be deleted before destructing this instance.
* - Before calling this method, check whether the feature is supported by %Tizen::System::SystemInfo::GetValue() methods.
Name: osp-net
Summary: The Network library of OSP
Version: 1.2.1.0
-Release: 1
+Release: 2
Group: System/Libraries
License: Apache License, Version 2.0 or Flora
Source0: %{name}-%{version}.tar.gz
* @since 1.0
*/
-class _OSP_EXPORT_ _IWifiManagerEventListener:
- public Tizen::Base::Runtime::IEventListener
+class _OSP_EXPORT_ _IWifiManagerEventListener
+ : public Tizen::Base::Runtime::IEventListener
{
public:
* @brief This interface implements listeners for WifiProximityManager internal events.
*/
-class _OSP_EXPORT_ _IWifiProximityEventListener:
- public Tizen::Base::Runtime::IEventListener
+class _OSP_EXPORT_ _IWifiProximityEventListener
+ : public Tizen::Base::Runtime::IEventListener
{
public:
- /**
- * This polymorphic destructor should be overridden if required. This way,
- * the destructors of the derived classes are called when the destructor of this interface is called.
- *
- */
- virtual ~_IWifiProximityEventListener(void) {}
+ /**
+ * This polymorphic destructor should be overridden if required. This way,
+ * the destructors of the derived classes are called when the destructor of this interface is called.
+ *
+ */
+ virtual ~_IWifiProximityEventListener(void) {}
- /**
- * Called to notify the application that detected the registered MAC address for the proximity service.
+ /**
+ * Called to notify the application that detected the registered MAC address for the proximity service.
+ *
+ * @param[in] wifiBssInfo The BSS info of detected AP
*
- * @param[in] wifiBssInfo The BSS info of detected AP
- *
- * @see Tizen::Net::Wifi::_WifiProximityManagerImpl::AddProximityEventListener()
- */
- virtual void OnWifiBssDetectedN(Tizen::Net::Wifi::WifiBssInfo* pWifiBssInfo) = 0;
+ * @see Tizen::Net::Wifi::_WifiProximityManagerImpl::AddProximityEventListener()
+ */
+ virtual void OnWifiBssDetectedN(Tizen::Net::Wifi::WifiBssInfo* pWifiBssInfo) = 0;
- /**
- * Called to notify the application that lost the registered MAC address for the proximity service.
+ /**
+ * Called to notify the application that lost the registered MAC address for the proximity service.
+ *
+ * @param[in] bssId The MAC address of lost AP
*
- * @param[in] bssId The MAC address of lost AP
- *
- * @see Tizen::Net::Wifi::_WifiProximityManagerImpl::RemoveProximityEventListener()
- */
- virtual void OnWifiBssLost(const Tizen::Base::String& bssId) = 0;
+ * @see Tizen::Net::Wifi::_WifiProximityManagerImpl::RemoveProximityEventListener()
+ */
+ virtual void OnWifiBssLost(const Tizen::Base::String& bssId) = 0;
- /**
- * Called to notify the application that the proximity service is activated.
- *
- * @see Tizen::Net::Wifi::_WifiProximityManagerImpl::ActivateProximityCheck()
- */
- virtual void OnWifiProximityCheckActivated() = 0;
+ /**
+ * Called to notify the application that the proximity service is activated.
+ *
+ * @see Tizen::Net::Wifi::_WifiProximityManagerImpl::ActivateProximityCheck()
+ */
+ virtual void OnWifiProximityCheckActivated() = 0;
- /**
- * Called to notify the application that the proximity service is deactivated.
- *
- * @see Tizen::Net::Wifi::_WifiProximityManagerImpl::DeactivateProximityCheck()
- */
- virtual void OnWifiProximityCheckDeactivated() = 0;
+ /**
+ * Called to notify the application that the proximity service is deactivated.
+ *
+ * @see Tizen::Net::Wifi::_WifiProximityManagerImpl::DeactivateProximityCheck()
+ */
+ virtual void OnWifiProximityCheckDeactivated() = 0;
}; // _IWifiProximityEventListener
#include <FNetWifiWifiTypes.h>
#include <FNetWifiWifiSecurityInfo.h>
-namespace Tizen { namespace Net {
+namespace Tizen { namespace Net
+{
class IpAddress;
} }
* This class provides the methods for managing the BSS information of a Wi-Fi network.
*/
class _OSP_EXPORT_ _WifiBssInfoImpl
- : public Tizen::Base::Object
+ : public Tizen::Base::Object
{
public:
- /**
- * This is the default constructor for this class.
- *
- * @since 1.0
- */
- _WifiBssInfoImpl(void);
-
- /**
- * This is the copy constructor for the _WifiBssInfoImpl class.
- *
- * @param[in] value An instance of %_WifiBssInfoImpl
- */
- _WifiBssInfoImpl(const _WifiBssInfoImpl& value);
-
- /**
- * This destructor overrides Tizen::Base::Object::~Object().
- *
- */
- virtual ~_WifiBssInfoImpl(void);
-
- /**
- * @see WifiBssInfo::GetSsid()
- */
- Tizen::Base::String GetSsid(void) const;
-
- /**
- * @see WifiBssInfo::GetBssId()
- */
- Tizen::Base::String GetBssId(void) const;
-
- /**
- * @see WifiBssInfo::GetBssType()
- */
- WifiBssType GetBssType(void) const;
-
- /**
- * @see WifiBssInfo::GetRadioChannel()
- */
- WifiRadioChannel GetRadioChannel(void) const;
-
- /**
- * @see WifiBssInfo::GetSecurityInfo()
- */
- const WifiSecurityInfo* GetSecurityInfo(void) const;
-
- /**
- * @see WifiBssInfo::GetRssi()
- */
- long GetRssi(void) const;
-
- /**
- * @see WifiBssInfo::GetDataRate()
- */
- float GetDataRate(void) const;
-
- /**
- * Gets the Access Point handler
- * @return The pointer to wifi ap handler
- */
- void* GetBssHandle(void) const;
-
- /**
- * Allocates Instance of %WifiBssInfo.
- *
- * @since 2.1
- * @return WifiBssInfo
- *
- */
- static WifiBssInfo* CreateWifiBssInfoN(void);
-
- /**
- * Sets the SSID of this BSS.
- *
- * @param[in] ssid The SSID
- */
- void SetSsid(const Tizen::Base::String& ssid);
-
- /**
- * Sets the ID of this BSS.
- *
- * @param[in] bssId The BSSID in the form '00-00-00-00-00-00'
- */
- void SetBssId(const Tizen::Base::String& bssid);
-
- /**
- * Sets the type of this BSS.
- *
- * @param[in] bssType The type of this BSS
- */
- void SetBssType(WifiBssType bssType);
-
- /**
- * Sets the radio channel of this BSS.
- *
- * @param[in] channel The radio channel of this BSS
- */
- void SetRadioChannel(WifiRadioChannel channel);
-
- /**
- * Sets the security information of this BSS.
- *
- * @param[in] secuInfo The authentication and encryption type of this BSS
- */
- void SetSecurityInfo(const WifiSecurityInfo& securityInfo);
-
- /**
- * Sets the Received Signal Strength Indication (RSSI) value of BSS at scanning time
- *
- * @param[in] rssi The RSSI value (dB)
- */
- void SetRssi(long rssi);
-
- /**
- * Sets the data rate of this BSS.
- *
- * @param[in] dataRate The data rate value (Mbps)
- * @remarks If the supported data rate is unknown, default value is @c -1.0.
- */
- void SetDataRate(float dataRate);
-
- /**
- * Sets the halder for wifi ap.
- *
- * @param[in] apHandler Handle to acces point
- */
- void SetBssHandle(void* apHandler);
-
- /**
- * @see WifiBssInfo::IsKnown()
- */
- bool IsKnown(void) const;
-
- /**
- * Sets the access point (BSS) is known or not.
- *
- * @param[in] isKnown @c true if the access point is known, @n
- * else @c false
- * @see WifiBssInfo::SetUnknown()
- */
- void SetKnown(bool isKnown);
-
- /**
- * @see WifiBssInfo::GetLocalAddressScheme()
- */
- Tizen::Net::NetAddressScheme GetLocalAddressScheme(void) const;
-
- /**
- * @see WifiBssInfo::SetLocalAddressScheme()
- */
- void SetLocalAddressScheme(Tizen::Net::NetAddressScheme scheme);
-
- /**
- * @see WifiBssInfo::GetLocalAddress()
- */
- const Tizen::Net::IpAddress* GetLocalAddress(void) const;
-
- /**
- * @see WifiBssInfo::SetLocalAddress()
- */
- result SetLocalAddress(const Tizen::Net::IpAddress* pAddress);
-
- /**
- * @see WifiBssInfo::GetSubnetMaskAddress()
- */
- const Tizen::Net::IpAddress* GetSubnetMaskAddress(void) const;
-
- /**
- * @see WifiBssInfo::SetSubnetMaskAddress()
- */
- result SetSubnetMaskAddress(const Tizen::Net::IpAddress* pAddress);
-
- /**
- * @see WifiBssInfo::GetDefaultGatewayAddress()
- */
- const Tizen::Net::IpAddress* GetDefaultGatewayAddress(void) const;
-
- /**
- * @see WifiBssInfo::SetDefaultGatewayAddress()
- */
- result SetDefaultGatewayAddress(const Tizen::Net::IpAddress* pAddress);
-
- /**
- * @see WifiBssInfo::GetPrimaryDnsAddress()
- */
- const Tizen::Net::IpAddress* GetPrimaryDnsAddress(void) const;
-
- /**
- * @see WifiBssInfo::SetPrimaryDnsAddress()
- */
- result SetPrimaryDnsAddress(const Tizen::Net::IpAddress* pAddress);
-
- /**
- * @see WifiBssInfo::GetSecondaryDnsAddress()
- */
- const Tizen::Net::IpAddress* GetSecondaryDnsAddress(void) const;
-
- /**
- * @see WifiBssInfo::SetSecondaryDnsAddress()
- */
- result SetSecondaryDnsAddress(const Tizen::Net::IpAddress* pAddress);
-
- /**
- * @see WifiBssInfo::GetProxyType()
- */
- Tizen::Net::NetProxyType GetProxyType(void) const;
-
- /**
- * @see WifiBssInfo::SetProxyType()
- */
- void SetProxyType(Tizen::Net::NetProxyType type);
-
- /**
- * @see WifiBssInfo::GetProxyAddress()
- */
- Tizen::Base::String GetProxyAddress(void) const;
-
- /**
- * @see WifiBssInfo::SetProxyAddress()
- */
- result SetProxyAddress(const Tizen::Base::String& address);
-
- /**
- * @see WifiBssInfo::Equals()
- */
- virtual bool Equals(const Tizen::Base::Object& obj) const;
-
- /**
- * Gets the hash value of the current instance.
- *
- * @return The hash value of the current instance
- */
- virtual int GetHashCode(void) const;
-
- /**
- * Gets the Impl instance.
- *
- * @return The pointer to %_WifiBssInfoImpl
- * @param[in] wifiBssInfo An instance of %WifiBssInfo
- */
- static _WifiBssInfoImpl* GetInstance(WifiBssInfo& wifiBssInfo);
-
- /**
- * Gets the Impl instance.
- *
- * @return The pointer to %_WifiBssInfoImpl
- * @param[in] wifiBssInfo An instance of %WifiBssInfo
- */
- static const _WifiBssInfoImpl* GetInstance(const WifiBssInfo& wifiBssInfo);
-
- /**
- * Copying of objects using this copy assignment operator is allowed.
- *
- * @return The reference of this instance
- * @param[in] rhs A reference to the %_WifiBssInfoImpl instance to be copied
- */
- _WifiBssInfoImpl& operator=(const _WifiBssInfoImpl& rhs);
+ /**
+ * This is the default constructor for this class.
+ *
+ * @since 1.0
+ */
+ _WifiBssInfoImpl(void);
+
+ /**
+ * This is the copy constructor for the _WifiBssInfoImpl class.
+ *
+ * @param[in] value An instance of %_WifiBssInfoImpl
+ */
+ _WifiBssInfoImpl(const _WifiBssInfoImpl& value);
+
+ /**
+ * This destructor overrides Tizen::Base::Object::~Object().
+ *
+ */
+ virtual ~_WifiBssInfoImpl(void);
+
+ /**
+ * @see WifiBssInfo::GetSsid()
+ */
+ Tizen::Base::String GetSsid(void) const;
+
+ /**
+ * @see WifiBssInfo::GetBssId()
+ */
+ Tizen::Base::String GetBssId(void) const;
+
+ /**
+ * @see WifiBssInfo::GetBssType()
+ */
+ WifiBssType GetBssType(void) const;
+
+ /**
+ * @see WifiBssInfo::GetRadioChannel()
+ */
+ WifiRadioChannel GetRadioChannel(void) const;
+
+ /**
+ * @see WifiBssInfo::GetSecurityInfo()
+ */
+ const WifiSecurityInfo* GetSecurityInfo(void) const;
+
+ /**
+ * @see WifiBssInfo::GetRssi()
+ */
+ long GetRssi(void) const;
+
+ /**
+ * @see WifiBssInfo::GetDataRate()
+ */
+ float GetDataRate(void) const;
+
+ /**
+ * Gets the Access Point handler
+ * @return The pointer to wifi ap handler
+ */
+ void* GetBssHandle(void) const;
+
+ /**
+ * Allocates Instance of %WifiBssInfo.
+ *
+ * @since 2.1
+ * @return WifiBssInfo
+ *
+ */
+ static WifiBssInfo* CreateWifiBssInfoN(void);
+
+ /**
+ * Sets the SSID of this BSS.
+ *
+ * @param[in] ssid The SSID
+ */
+ void SetSsid(const Tizen::Base::String& ssid);
+
+ /**
+ * Sets the ID of this BSS.
+ *
+ * @param[in] bssId The BSSID in the form '00-00-00-00-00-00'
+ */
+ void SetBssId(const Tizen::Base::String& bssid);
+
+ /**
+ * Sets the type of this BSS.
+ *
+ * @param[in] bssType The type of this BSS
+ */
+ void SetBssType(WifiBssType bssType);
+
+ /**
+ * Sets the radio channel of this BSS.
+ *
+ * @param[in] channel The radio channel of this BSS
+ */
+ void SetRadioChannel(WifiRadioChannel channel);
+
+ /**
+ * Sets the security information of this BSS.
+ *
+ * @param[in] secuInfo The authentication and encryption type of this BSS
+ */
+ void SetSecurityInfo(const WifiSecurityInfo& securityInfo);
+
+ /**
+ * Sets the Received Signal Strength Indication (RSSI) value of BSS at scanning time
+ *
+ * @param[in] rssi The RSSI value (dB)
+ */
+ void SetRssi(long rssi);
+
+ /**
+ * Sets the data rate of this BSS.
+ *
+ * @param[in] dataRate The data rate value (Mbps)
+ * @remarks If the supported data rate is unknown, default value is @c -1.0.
+ */
+ void SetDataRate(float dataRate);
+
+ /**
+ * Sets the halder for wifi ap.
+ *
+ * @param[in] apHandler Handle to acces point
+ */
+ void SetBssHandle(void* apHandler);
+
+ /**
+ * @see WifiBssInfo::IsKnown()
+ */
+ bool IsKnown(void) const;
+
+ /**
+ * Sets the access point (BSS) is known or not.
+ *
+ * @param[in] isKnown @c true if the access point is known, @n
+ * else @c false
+ * @see WifiBssInfo::SetUnknown()
+ */
+ void SetKnown(bool isKnown);
+
+ /**
+ * @see WifiBssInfo::GetLocalAddressScheme()
+ */
+ Tizen::Net::NetAddressScheme GetLocalAddressScheme(void) const;
+
+ /**
+ * @see WifiBssInfo::SetLocalAddressScheme()
+ */
+ void SetLocalAddressScheme(Tizen::Net::NetAddressScheme scheme);
+
+ /**
+ * @see WifiBssInfo::GetLocalAddress()
+ */
+ const Tizen::Net::IpAddress* GetLocalAddress(void) const;
+
+ /**
+ * @see WifiBssInfo::SetLocalAddress()
+ */
+ result SetLocalAddress(const Tizen::Net::IpAddress* pAddress);
+
+ /**
+ * @see WifiBssInfo::GetSubnetMaskAddress()
+ */
+ const Tizen::Net::IpAddress* GetSubnetMaskAddress(void) const;
+
+ /**
+ * @see WifiBssInfo::SetSubnetMaskAddress()
+ */
+ result SetSubnetMaskAddress(const Tizen::Net::IpAddress* pAddress);
+
+ /**
+ * @see WifiBssInfo::GetDefaultGatewayAddress()
+ */
+ const Tizen::Net::IpAddress* GetDefaultGatewayAddress(void) const;
+
+ /**
+ * @see WifiBssInfo::SetDefaultGatewayAddress()
+ */
+ result SetDefaultGatewayAddress(const Tizen::Net::IpAddress* pAddress);
+
+ /**
+ * @see WifiBssInfo::GetPrimaryDnsAddress()
+ */
+ const Tizen::Net::IpAddress* GetPrimaryDnsAddress(void) const;
+
+ /**
+ * @see WifiBssInfo::SetPrimaryDnsAddress()
+ */
+ result SetPrimaryDnsAddress(const Tizen::Net::IpAddress* pAddress);
+
+ /**
+ * @see WifiBssInfo::GetSecondaryDnsAddress()
+ */
+ const Tizen::Net::IpAddress* GetSecondaryDnsAddress(void) const;
+
+ /**
+ * @see WifiBssInfo::SetSecondaryDnsAddress()
+ */
+ result SetSecondaryDnsAddress(const Tizen::Net::IpAddress* pAddress);
+
+ /**
+ * @see WifiBssInfo::GetProxyType()
+ */
+ Tizen::Net::NetProxyType GetProxyType(void) const;
+
+ /**
+ * @see WifiBssInfo::SetProxyType()
+ */
+ void SetProxyType(Tizen::Net::NetProxyType type);
+
+ /**
+ * @see WifiBssInfo::GetProxyAddress()
+ */
+ Tizen::Base::String GetProxyAddress(void) const;
+
+ /**
+ * @see WifiBssInfo::SetProxyAddress()
+ */
+ result SetProxyAddress(const Tizen::Base::String& address);
+
+ /**
+ * @see WifiBssInfo::Equals()
+ */
+ virtual bool Equals(const Tizen::Base::Object& obj) const;
+
+ /**
+ * Gets the hash value of the current instance.
+ *
+ * @return The hash value of the current instance
+ */
+ virtual int GetHashCode(void) const;
+
+ /**
+ * Gets the Impl instance.
+ *
+ * @return The pointer to %_WifiBssInfoImpl
+ * @param[in] wifiBssInfo An instance of %WifiBssInfo
+ */
+ static _WifiBssInfoImpl* GetInstance(WifiBssInfo& wifiBssInfo);
+
+ /**
+ * Gets the Impl instance.
+ *
+ * @return The pointer to %_WifiBssInfoImpl
+ * @param[in] wifiBssInfo An instance of %WifiBssInfo
+ */
+ static const _WifiBssInfoImpl* GetInstance(const WifiBssInfo& wifiBssInfo);
+
+ /**
+ * Copying of objects using this copy assignment operator is allowed.
+ *
+ * @return The reference of this instance
+ * @param[in] rhs A reference to the %_WifiBssInfoImpl instance to be copied
+ */
+ _WifiBssInfoImpl& operator =(const _WifiBssInfoImpl& rhs);
private:
- Tizen::Base::String __ssid;
- Tizen::Base::String __bssid;
- WifiBssType __bssType;
- WifiRadioChannel __channel;
- WifiSecurityInfo __securityInfo;
- long __rssi;
- float __dataRate;
- bool __isKnown;
- Tizen::Net::NetAddressScheme __scheme;
- Tizen::Net::IpAddress* __pLocalAddress;
- Tizen::Net::IpAddress* __pMaskAddress;
- Tizen::Net::IpAddress* __pGatewayAddress;
- Tizen::Net::IpAddress* __pPriDnsAddress;
- Tizen::Net::IpAddress* __pSecDnsAddress;
- Tizen::Net::NetProxyType __proxyType;
- Tizen::Base::String __proxyAddress;
- void* __pApHandler;
+ Tizen::Base::String __ssid;
+ Tizen::Base::String __bssid;
+ WifiBssType __bssType;
+ WifiRadioChannel __channel;
+ WifiSecurityInfo __securityInfo;
+ long __rssi;
+ float __dataRate;
+ bool __isKnown;
+ Tizen::Net::NetAddressScheme __scheme;
+ Tizen::Net::IpAddress* __pLocalAddress;
+ Tizen::Net::IpAddress* __pMaskAddress;
+ Tizen::Net::IpAddress* __pGatewayAddress;
+ Tizen::Net::IpAddress* __pPriDnsAddress;
+ Tizen::Net::IpAddress* __pSecDnsAddress;
+ Tizen::Net::NetProxyType __proxyType;
+ Tizen::Base::String __proxyAddress;
+ void* __pApHandler;
}; // _WifiBssInfoImpl
} } } //Tizen::Net::Wifi
#endif // _FNET_WIFI_INTERNAL_WIFI_BSS_INFO_IMPL_H_
-
enum _WifiDirectDeviceState
{
- WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED,
- WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATING,
- WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATING,
- WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED,
- WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING,
- WIFI_DIRECT_DEVICE_INTERNAL_CONNECT_CANCELLING,
- WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER,
- WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT,
- WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING,
- WIFI_DIRECT_DEVICE_INTERNAL_LEAVING,
- WIFI_DIRECT_DEVICE_INTERNAL_GROUP_CREATING
+ WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED,
+ WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATING,
+ WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATING,
+ WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED,
+ WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING,
+ WIFI_DIRECT_DEVICE_INTERNAL_CONNECT_CANCELLING,
+ WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER,
+ WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT,
+ WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING,
+ WIFI_DIRECT_DEVICE_INTERNAL_LEAVING,
+ WIFI_DIRECT_DEVICE_INTERNAL_GROUP_CREATING
};
enum _WifiDirectScanState
{
- WIFI_DIRECT_SCAN_INTERNAL_IDLE,
- WIFI_DIRECT_SCAN_INTERNAL_SCANNING,
- WIFI_DIRECT_SCAN_INTERNAL_CANCELLING
+ WIFI_DIRECT_SCAN_INTERNAL_IDLE,
+ WIFI_DIRECT_SCAN_INTERNAL_SCANNING,
+ WIFI_DIRECT_SCAN_INTERNAL_CANCELLING
};
+
+enum _CallbackType
+{
+ WIFI_DIRECT_CALL_BACK_ACTIVATED,
+ WIFI_DIRECT_CALL_BACK_DEACTIVATED,
+ WIFI_DIRECT_CALL_BACK_CONNECTED,
+ WIFI_DIRECT_CALL_BACK_DISCONNECTED,
+ WIFI_DIRECT_CALL_BACK_AUTO_GROUP_CREATED,
+ WIFI_DIRECT_CALL_BACK_GROUP_LEFT
+};
+
+
/**
- * @class _WifiDirectDeviceImpl
+ * @class _WifiDirectDeviceImpl
* @brief This class provides methods for the Wi-Fi Direct management.
- * @since 2.0
+ * @since 2.0
*
* WifiDirectDeviceImpl class provides the functionality for creating a WifiDirectDevice instance, and
* managing Wi-Fi Direct group. It also allows the listener to get events from Wi-Fi Direct group.
*/
class _OSP_EXPORT_ _WifiDirectDeviceImpl
- : public Tizen::Base::Object
- , public _IWifiDirectListener
+ : public Tizen::Base::Object
+ , public _IWifiDirectListener
{
public:
+ /**
+ * @see WifiDirectDevice::Construct()
+ */
+ result Construct(WifiDirectDeviceId localDeviceId, bool enableIpInfoService = true);
- /**
- * @see WifiDirectDevice::Construct()
- */
- result Construct(WifiDirectDeviceId localDeviceId, bool enableIpInfoService = true);
-
- /**
- * @see WifiDirectDevice::AddWifiDirectDeviceListener()
- */
- result AddWifiDirectDeviceListener(IWifiDirectDeviceListener &listener);
+ /**
+ * @see WifiDirectDevice::AddWifiDirectDeviceListener()
+ */
+ result AddWifiDirectDeviceListener(IWifiDirectDeviceListener& listener);
- /**
- * @see WifiDirectDevice::AddWifiDirectGroupOwnerListener()
- */
- result AddWifiDirectGroupOwnerListener(IWifiDirectGroupOwnerListener &listener);
+ /**
+ * @see WifiDirectDevice::AddWifiDirectGroupOwnerListener()
+ */
+ result AddWifiDirectGroupOwnerListener(IWifiDirectGroupOwnerListener& listener);
- /**
- * @see WifiDirectDevice::AddWifiDirectGroupClientListener()
- */
- result AddWifiDirectGroupClientListener(IWifiDirectGroupClientListener &listener);
+ /**
+ * @see WifiDirectDevice::AddWifiDirectGroupClientListener()
+ */
+ result AddWifiDirectGroupClientListener(IWifiDirectGroupClientListener& listener);
- /**
- * @see WifiDirectDevice::RemoveWifiDirectDeviceListener()
- */
- result RemoveWifiDirectDeviceListener(IWifiDirectDeviceListener &listener);
+ /**
+ * @see WifiDirectDevice::RemoveWifiDirectDeviceListener()
+ */
+ result RemoveWifiDirectDeviceListener(IWifiDirectDeviceListener& listener);
- /**
- * @see WifiDirectDevice::RemoveWifiDirectGroupOwnerListener()
- */
- result RemoveWifiDirectGroupOwnerListener(IWifiDirectGroupOwnerListener &listener);
+ /**
+ * @see WifiDirectDevice::RemoveWifiDirectGroupOwnerListener()
+ */
+ result RemoveWifiDirectGroupOwnerListener(IWifiDirectGroupOwnerListener& listener);
- /**
- * @see WifiDirectDevice::RemoveWifiDirectGroupClientListener()
- */
- result RemoveWifiDirectGroupClientListener(IWifiDirectGroupClientListener &listener);
+ /**
+ * @see WifiDirectDevice::RemoveWifiDirectGroupClientListener()
+ */
+ result RemoveWifiDirectGroupClientListener(IWifiDirectGroupClientListener& listener);
- /**
- * @see WifiDirectDevice::Activate()
- */
+ /**
+ * @see WifiDirectDevice::Activate()
+ */
result Activate(void);
- /**
- * @see WifiDirectDevice::Deactivate()
- */
+ /**
+ * @see WifiDirectDevice::Deactivate()
+ */
result Deactivate(void);
- /**
- * @see WifiDirectDevice::IsActivated()
- */
- bool IsActivated(void) const;
+ /**
+ * @see WifiDirectDevice::IsActivated()
+ */
+ bool IsActivated(void) const;
- /**
- * @see WifiDirectDevice::GetGroupSettingInfoN()
- */
+ /**
+ * @see WifiDirectDevice::GetGroupSettingInfoN()
+ */
WifiDirectGroupInfo* GetGroupSettingInfoN(void) const;
- /**
- * @see WifiDirectDevice::GetLocalDeviceInfoN()
- */
+ /**
+ * @see WifiDirectDevice::GetLocalDeviceInfoN()
+ */
WifiDirectDeviceInfo* GetLocalDeviceInfoN(void) const;
- /**
- * @see WifiDirectDevice::GetWpsConfigurationModePreference()
- */
+ /**
+ * @see WifiDirectDevice::GetWpsConfigurationModePreference()
+ */
WifiWpsConfigurationMode GetWpsConfigurationModePreference(void) const;
- /**
- * @see WifiDirectDevice::SetLocalDeviceName()
- */
- result SetLocalDeviceName(const Tizen::Base::String &name);
+ /**
+ * @see WifiDirectDevice::SetLocalDeviceName()
+ */
+ result SetLocalDeviceName(const Tizen::Base::String& name);
- /**
- * @see WifiDirectDevice::SetWpsConfigurationModePreference()
- */
+ /**
+ * @see WifiDirectDevice::SetWpsConfigurationModePreference()
+ */
result SetWpsConfigurationModePreference(WifiWpsConfigurationMode mode);
- /**
- * @see WifiDirectDevice::CreateGroup()
- */
- result CreateGroup(const WifiDirectGroupInfo *pWifiDirectGroupInfo = null, const WifiDirectDeviceInfo *pWifiDirectRemoteDeviceInfo = null);
+ /**
+ * @see WifiDirectDevice::CreateGroup()
+ */
+ result CreateGroup(const WifiDirectGroupInfo* pWifiDirectGroupInfo = null, const WifiDirectDeviceInfo* pWifiDirectRemoteDeviceInfo = null);
- /**
- * @see WifiDirectDevice::CancelGroupCreation()
- */
+ /**
+ * @see WifiDirectDevice::CancelGroupCreation()
+ */
result CancelGroupCreation(void);
- /**
- * @see WifiDirectDevice::Scan()
- */
+ /**
+ * @see WifiDirectDevice::Scan()
+ */
result Scan(void);
- /**
- * @see WifiDirectDevice::CancelScan()
- */
+ /**
+ * @see WifiDirectDevice::CancelScan()
+ */
result CancelScan(void);
- /**
- * @see WifiDirectDevice::Associate()
- */
- result Associate(const WifiDirectDeviceInfo &wifiDirectGroupOwnerDeviceInfo);
+ /**
+ * @see WifiDirectDevice::Associate()
+ */
+ result Associate(const WifiDirectDeviceInfo& wifiDirectGroupOwnerDeviceInfo);
- /**
- * @see WifiDirectDevice::GetWifiDirectMemberN()
- */
+ /**
+ * @see WifiDirectDevice::GetWifiDirectMemberN()
+ */
WifiDirectGroupMember* GetWifiDirectMemberN(void);
- /**
- * @see WifiDirectDevice::IsDiscoverable()
- */
+ /**
+ * @see WifiDirectDevice::IsDiscoverable()
+ */
bool IsDiscoverable(void) const;
/**
- * @see WifiDirectDevice::Connect()
- */
+ * @see WifiDirectDevice::Connect()
+ */
result Connect(const WifiDirectDeviceInfo& peerDeviceInfo);
/**
- * @see WifiDirectDevice::CancelConnect()
- */
+ * @see WifiDirectDevice::CancelConnect()
+ */
result CancelConnect(void);
- /**
- * @see WifiDirectDevice::CreateAutonomousGroup()
- */
+ /**
+ * @see WifiDirectDevice::CreateAutonomousGroup()
+ */
result CreateAutonomousGroup(void);
- /**
- * @see WifiDirectDevice::SetGroupSettingInfo()
- */
+ /**
+ * @see WifiDirectDevice::SetGroupSettingInfo()
+ */
result SetGroupSettingInfo(const WifiDirectGroupInfo& groupConfigurationInfo);
- /**
- * @see WifiDirectDevice::Disconnect()
- */
+ /**
+ * @see WifiDirectDevice::Disconnect()
+ */
result Disconnect(const WifiDirectDeviceInfo& remoteDeviceInfo);
- /**
- * @see WifiDirectDevice::LeaveGroup()
- */
+ /**
+ * @see WifiDirectDevice::LeaveGroup()
+ */
result LeaveGroup(void);
- /**
- * @see WifiDirectDevice::GetGroupOwnerInfo()
- */
+ /**
+ * @see WifiDirectDevice::GetGroupOwnerInfo()
+ */
WifiDirectDeviceInfo* GetGroupOwnerInfoN(void) const;
- /**
- * @see WifiDirectDevice::GetGroupClientInfoListN()
- */
+ /**
+ * @see WifiDirectDevice::GetGroupClientInfoListN()
+ */
Tizen::Base::Collection::IList* GetGroupClientInfoListN(void) const;
/**
- * @see WifiDirectDevice::GetOperatingChannel()
- */
+ * @see WifiDirectDevice::GetOperatingChannel()
+ */
WifiRadioChannel GetOperatingChannel(void) const;
- /**
- * Returns string representation of current status.
- *
- * @return current status of wifi direct
- */
+ /**
+ * Returns string representation of current status.
+ *
+ * @return current status of wifi direct
+ */
- const char* GetStringOfCurrentState(void) const;
+ const char* GetStringOfDeviceState(void) const;
- /**
- * Returns String representation of Current Status of Scan.
- *
- * @return current scan status of wifi direct
- */
+ /**
+ * Returns String representation of Current Status of Scan.
+ *
+ * @return current scan status of wifi direct
+ */
const char* GetStringOfScanState(void) const;
- /**
- * Adds reference count.
- *
- * @return current reference count
- */
+ /**
+ * Adds reference count.
+ *
+ * @return current reference count
+ */
int AddRef(void);
- /**
- * Removes reference count.
- *
- * @return current reference count
- */
+ /**
+ * Removes reference count.
+ *
+ * @return current reference count
+ */
int Release(void);
- /**
- * returns current status of wifi direct
- *
- * @return Wifi Direct Device Status
- */
- _WifiDirectDeviceState GetWifiDirectDeviceCurrentState(void) const;
+ /**
+ * returns current status of wifi direct
+ *
+ * @return Wifi Direct Device Status
+ */
+ _WifiDirectDeviceState GetWifiDirectDeviceCurrentState(void) const;
- /**
- * Sets current status of wifi direct
- *
- * @param[in] currentState Wifi Direct Device Status
- */
+ /**
+ * Sets current status of wifi direct
+ *
+ * @param[in] currentState Wifi Direct Device Status
+ */
void SetWifiDirectDeviceCurrentState(_WifiDirectDeviceState currentState);
- /**
- * Returns wifi direct group owner event object
- *
- * @return Wifi Direct Group Owner event object
- */
+ /**
+ * Returns wifi direct group owner event object
+ *
+ * @return Wifi Direct Group Owner event object
+ */
_WifiDirectGroupOwnerEvent* GetWifiDirectGroupOwnerEvent() const;
- /**
- * Returns wifi direct group client event object
- *
- * @return Wifi Direct Group Client event object
- */
+ /**
+ * Returns wifi direct group client event object
+ *
+ * @return Wifi Direct Group Client event object
+ */
_WifiDirectGroupClientEvent* GetWifiDirectGroupClientEvent() const;
- /**
- * Returns all device information
- *
- * @return List of Device Information
- */
- static Tizen::Base::Collection::IList* GetAllDeviceInfoN(void);
-
- /**
- * Gets WifiDirectDeviceInstance,
- * incase pDeviceInfo = null gets information of Default Device
- *
- * @return Wifi Direct Device instance
- * @param[in] pDeviceInfo A pointer to WifiDirectDeviceInfo
- */
- static WifiDirectDevice* GetWifiDirectDeviceInstanceN(const WifiDirectDeviceInfo* pDeviceInfo = null);
+ /**
+ * Returns all device information
+ *
+ * @return List of Device Information
+ */
+ static Tizen::Base::Collection::IList* GetAllDeviceInfoN(void);
+ /**
+ * Gets WifiDirectDeviceInstance,
+ * incase pDeviceInfo = null gets information of Default Device
+ *
+ * @return Wifi Direct Device instance
+ * @param[in] pDeviceInfo A pointer to WifiDirectDeviceInfo
+ */
+ static WifiDirectDevice* GetWifiDirectDeviceInstanceN(const WifiDirectDeviceInfo* pDeviceInfo = null);
- /**
- * Gets WifiDirectDeviceInstance
- *
- * @return Wifi Direct Device instance
- */
- static WifiDirectDevice* GetWifiDirectDeviceInstanceWithoutIpServiceN(void);
- /**
- * Creates _WifiDirectDeviceImpl class instance
- *
- * @return The pointer to _WifiDirectDeviceImpl
- */
- static _WifiDirectDeviceImpl* CreateWifiDirectDeviceImplInstanceN(void);
+ /**
+ * Gets WifiDirectDeviceInstance
+ *
+ * @return Wifi Direct Device instance
+ */
+ static WifiDirectDevice* GetWifiDirectDeviceInstanceWithoutIpServiceN(void);
- /**
- * Gets the Impl instance.
- *
- * @return The pointer to %_WifiDirectDeviceImpl
- * @param[in] wifiDirectDevice An instance of %WifiDirectDevice
- */
- static _WifiDirectDeviceImpl* GetInstance(WifiDirectDevice& wifiDirectDevice);
+ /**
+ * Creates _WifiDirectDeviceImpl class instance
+ *
+ * @return The pointer to _WifiDirectDeviceImpl
+ */
+ static _WifiDirectDeviceImpl* CreateWifiDirectDeviceImplInstanceN(void);
- /**
- * Gets the Impl instance.
- *
- * @return The pointer to %_WifiDirectDeviceImpl
- * @param[in] wifiDirectDevice An instance of %WifiDirectDevice
- */
- static const _WifiDirectDeviceImpl* GetInstance(const WifiDirectDevice& wifiDirectDevice);
+ /**
+ * Gets the Impl instance.
+ *
+ * @return The pointer to %_WifiDirectDeviceImpl
+ * @param[in] wifiDirectDevice An instance of %WifiDirectDevice
+ */
+ static _WifiDirectDeviceImpl* GetInstance(WifiDirectDevice& wifiDirectDevice);
-private:
+ /**
+ * Gets the Impl instance.
+ *
+ * @return The pointer to %_WifiDirectDeviceImpl
+ * @param[in] wifiDirectDevice An instance of %WifiDirectDevice
+ */
+ static const _WifiDirectDeviceImpl* GetInstance(const WifiDirectDevice& wifiDirectDevice);
- /**
- * This default constructor is intentionally declared as private so that only the platform can create an instance.
- *
- */
- _WifiDirectDeviceImpl(void);
+private:
+ /**
+ * This default constructor is intentionally declared as private so that only the platform can create an instance.
+ *
+ */
+ _WifiDirectDeviceImpl(void);
- /**
- * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
- *
- * @param[in] rhs _WifiDirectDeviceImpl
- */
- _WifiDirectDeviceImpl(const _WifiDirectDeviceImpl& rhs);
+ /**
+ * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
+ *
+ * @param[in] rhs _WifiDirectDeviceImpl
+ */
+ _WifiDirectDeviceImpl(const _WifiDirectDeviceImpl& rhs);
- /**
- *
- * This destructor overrides Tizen::Base::Object::~Object().
- *
- */
- virtual ~_WifiDirectDeviceImpl(void);
+ /**
+ *
+ * This destructor overrides Tizen::Base::Object::~Object().
+ *
+ */
+ virtual ~_WifiDirectDeviceImpl(void);
- /**
- * @see IWifiDirectDeviceListener::OnWifiDirectDeviceActivated()
- */
+ /**
+ * @see IWifiDirectDeviceListener::OnWifiDirectDeviceActivated()
+ */
void OnWifiDirectDeviceActivated(const _WifiDirectEventArg& arg, result r);
- /**
- * @see IWifiDirectDeviceListener::OnWifiDirectDeviceDeactivated()
- */
+ /**
+ * @see IWifiDirectDeviceListener::OnWifiDirectDeviceDeactivated()
+ */
void OnWifiDirectDeviceDeactivated(const _WifiDirectEventArg& arg, result r);
- /**
- * @see IWifiDirectDeviceListener::OnWifiDirectGroupCreatedN()
- */
+ /**
+ * @see IWifiDirectDeviceListener::OnWifiDirectGroupCreatedN()
+ */
void OnWifiDirectGroupCreated(const _WifiDirectEventArg& arg, WifiDirectGroupMemberType wifiDirectMemberType, result r);
/**
void OnWifiDirectRemoteDeviceFound(const _WifiDirectEventArg& arg);
/**
- * @see IWifiDirectDeviceListener::OnWifiDirectScanCompleted()
+ * @see IWifiDirectDeviceListener::OnWifiDirectScanCompletedN()
*/
void OnWifiDirectScanCompleted(const _WifiDirectEventArg& arg, result r);
- /**
- * @see IWifiDirectDeviceListener::OnWifiDirectAssociationCompleted()
- */
+ /**
+ * @see IWifiDirectDeviceListener::OnWifiDirectAssociationCompleted()
+ */
void OnWifiDirectAssociationCompleted(const _WifiDirectEventArg& arg, result r);
- /**
- * @see IWifiDirectDeviceListener::OnWifiDirectConnected()
- */
- void OnWifiDirectConnected(const _WifiDirectEventArg& arg, result r);
+ /**
+ * @see IWifiDirectDeviceListener::OnWifiDirectConnected()
+ */
+ void OnWifiDirectConnected(const _WifiDirectEventArg& arg, result r);
- /**
- * @see IWifiDirectDeviceListener::OnWifiDirectDisconnected()
- */
+ /**
+ * @see IWifiDirectDeviceListener::OnWifiDirectDisconnected()
+ */
- void OnWifiDirectDisconnected(const _WifiDirectEventArg& arg, result r);
+ void OnWifiDirectDisconnected(const _WifiDirectEventArg& arg, result r);
- /**
- * @see IWifiDirectDeviceListener::OnWifiDirectGroupLeft()
- */
- void OnWifiDirectGroupLeft(const _WifiDirectEventArg& arg, result r);
+ /**
+ * @see IWifiDirectDeviceListener::OnWifiDirectGroupLeft()
+ */
+ void OnWifiDirectGroupLeft(const _WifiDirectEventArg& arg, result r);
- /**
- * @see IWifiDirectDeviceListener::OnWifiDirectAutonomousGroupCreated()
- */
- void OnWifiDirectAutonomousGroupCreated(const _WifiDirectEventArg& arg, result r);
+ /**
+ * @see IWifiDirectDeviceListener::OnWifiDirectAutonomousGroupCreated()
+ */
+ void OnWifiDirectAutonomousGroupCreated(const _WifiDirectEventArg& arg, result r);
- /**
- * @see IWifiDirectGroupOwnerListener::OnWifiDirectAssociationCompleted()
- */
+ /**
+ * @see IWifiDirectGroupOwnerListener::OnWifiDirectAssociationCompleted()
+ */
void OnWifiDirectClientAssociated(const _WifiDirectEventArg& arg);
- /**
- * @see IWifiDirectGroupOwnerListener::OnWifiDirectClientDisassociated()
- */
+ /**
+ * @see IWifiDirectGroupOwnerListener::OnWifiDirectClientDisassociated()
+ */
void OnWifiDirectClientDisassociated(const _WifiDirectEventArg& arg, WifiDirectAssociationTerminationReason reason);
- /**
- * @see IWifiDirectGroupOwnerListener::OnWifiDirectGroupDestroyed()
- */
+ /**
+ * @see IWifiDirectGroupOwnerListener::OnWifiDirectGroupDestroyed()
+ */
void OnWifiDirectGroupDestroyed(const _WifiDirectEventArg& arg, result r);
- /**
- * @see IWifiDirectGroupClientListener::OnWifiDirectAssociationTerminated()
- */
+ /**
+ * @see IWifiDirectGroupClientListener::OnWifiDirectAssociationTerminated()
+ */
void OnWifiDirectAssociationTerminated(const _WifiDirectEventArg& arg, result r);
- /**
- * @see IWifiDirectGroupClientListener::OnWifiDirectGroupOwnerInfoReceived()
- */
+ /**
+ * @see IWifiDirectGroupClientListener::OnWifiDirectGroupOwnerInfoReceived()
+ */
void OnWifiDirectGroupOwnerInfoReceived(const _WifiDirectEventArg& arg, result r);
- /**
- * @see IWifiDirectGroupClientListener::OnWifiDirectAllGroupMemberInfoReceivedN()
- */
+ /**
+ * @see IWifiDirectGroupClientListener::OnWifiDirectAllGroupMemberInfoReceivedN()
+ */
void OnWifiDirectAllGroupMemberInfoReceivedN(const _WifiDirectEventArg& arg, result r);
- /**
- *
- * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
- *
- * @param[in] rhs An instance of %_WifiDirectDeviceImpl
- */
+ /**
+ *
+ * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
+ *
+ * @param[in] rhs An instance of %_WifiDirectDeviceImpl
+ */
_WifiDirectDeviceImpl& operator =(const _WifiDirectDeviceImpl& rhs);
+ /**
+ *
+ * Updates current state.
+ *
+ */
+ void UpdateCurrentState(_CallbackType type, result r);
+
+ /**
+ * Returns String of all status
+ *
+ * @return String of all status
+ */
+ Tizen::Base::String GetStringOfAllCurrentState(void) const;
+
private:
- WifiDirectDeviceId __localDeviceId;
+ WifiDirectDeviceId __localDeviceId;
- std::unique_ptr<_WifiDirectDeviceEvent> __pWifiDirectDeviceEvent;
- std::unique_ptr<_WifiDirectGroupOwnerEvent> __pWifiDirectGroupOwnerEvent;
- std::unique_ptr<_WifiDirectGroupClientEvent> __pWifiDirectGroupClientEvent;
+ std::unique_ptr< _WifiDirectDeviceEvent > __pWifiDirectDeviceEvent;
+ std::unique_ptr< _WifiDirectGroupOwnerEvent > __pWifiDirectGroupOwnerEvent;
+ std::unique_ptr< _WifiDirectGroupClientEvent > __pWifiDirectGroupClientEvent;
- _WifiDirectGroupOwnerImpl __groupOwnerImpl;
- _WifiDirectGroupClientImpl __groupClientImpl;
+ _WifiDirectGroupOwnerImpl __groupOwnerImpl;
+ _WifiDirectGroupClientImpl __groupClientImpl;
_WifiDirectDeviceState __deviceState;
_WifiDirectScanState __scanState;
- _WifiDirectSystemAdapter* __pWifiDirectSystemAdapter;
+ _WifiDirectSystemAdapter* __pWifiDirectSystemAdapter;
int __refCount;
- Tizen::Base::Runtime::Mutex __stateMutex;
- friend class std::default_delete<_WifiDirectDeviceImpl>;
+ Tizen::Base::Runtime::Mutex __stateMutex;
+ friend class std::default_delete< _WifiDirectDeviceImpl >;
}; // _WifiDirectDeviceImpl
} } } // Tizen::Net::Wifi
#endif // _FNET_WIFI_INTERNAL_WIFI_DIRECT_DEVICE_IMPL_H_
-
-
#ifndef _FNET_WIFI_INTERNAL_WIFI_DIRECT_DEVICE_INFO_IMPL_H_
#define _FNET_WIFI_INTERNAL_WIFI_DIRECT_DEVICE_INFO_IMPL_H_
-// Includes
#include <FOspConfig.h>
#include <FBaseObject.h>
#include <FNetIpAddress.h>
namespace Tizen { namespace Base { namespace Collection
{
-template <class type>
+template< class type >
class IListT;
}}}
-namespace Tizen { namespace Net
+namespace Tizen { namespace Net
{
class IpAddress;
*/
class _OSP_EXPORT_ _WifiDirectDeviceInfoImpl
- : public Tizen::Base::Object
+ : public Tizen::Base::Object
{
public:
- /**
- * This is the default constructor for this class.
- *
- * @since 2.0
- */
- _WifiDirectDeviceInfoImpl(void);
-
- /**
- * This is the copy constructor for this class.
- *
- * @since 2.0
- *
- * @param[in] rhs An instance of %WifiDirectDeviceInfo
- */
- _WifiDirectDeviceInfoImpl(const _WifiDirectDeviceInfoImpl& rhs);
-
- /**
- * Initializes this instance of WifiDirectDeviceInfo with the specified device name
- * and the MAC address.
- *
- * @since 2.0
- * @param[in] deviceName The device name @n
- * The length of @c deviceName should not exceed 64 characters
- * @param[in] macAddr The MAC address @n
- * The value of @c macAddr should be in the form '00-00-00-00-00-00'
- *
- */
- _WifiDirectDeviceInfoImpl(const Tizen::Base::String& deviceName, const Tizen::Base::String& macAddr);
-
- /**
- * This destructor overrides Tizen::Base::Object::~Object().
- *
- * @since 2.0
- */
- virtual ~_WifiDirectDeviceInfoImpl(void);
-
- /**
- * @see WifiDirectDeviceInfo::GetDeviceId()
- */
- WifiDirectDeviceId GetDeviceId(void) const;
-
- /**
- * @see WifiDirectDeviceInfo::GetDeviceName()
- */
- Tizen::Base::String GetDeviceName(void) const;
-
- /**
- * @see WifiDirectDeviceInfo::GetMacAddress()
- */
- Tizen::Base::String GetMacAddress(void) const ;
-
- /**
- * @see WifiDirectDeviceInfo::GetIpAddress()
- */
- const Tizen::Net::IpAddress *GetIpAddress(void) const;
-
- /**
- * @see WifiDirectDeviceInfo::GetSsid()
- */
- Tizen::Base::String GetSsid(void) const;
-
- /**
- * @see WifiDirectDeviceInfo::GetDeviceStatus()
- */
- WifiDirectDeviceStatus GetDeviceStatus(void) const;
-
- /**
- * @see WifiDirectDeviceInfo::GetGroupMemberType()
- */
- WifiDirectGroupMemberType GetGroupMemberType(void) const;
-
- /**
- * @see WifiDirectDeviceInfo::GetDeviceTypeCategory()
- */
- WifiDirectDeviceTypeCategory GetDeviceTypeCategory(void) const;
-
- /**
- * @see WifiDirectDeviceInfo::GetSupportedWpsConfigurationModeList()
- */
- const Tizen::Base::Collection::IListT<WifiWpsConfigurationMode>* GetSupportedWpsConfigurationModeList(void) const;
-
- /**
- * @see WifiDirectDeviceInfo::GetVirtualMacAddress()
- */
- Tizen::Base::String GetVirtualMacAddress(void) const;
-
- /**
- * Sets the ID of the device.
- *
- * @param[in] localDeviceId Device ID
- */
- void SetDeviceId(const WifiDirectDeviceId localDeviceId);
-
- /**
- * Sets the device name.
- *
- * @return An error code
- * @param[in] deviceName String of Device Name
- * @exception E_SUCCESS The method was successful.
- * @exception E_INVALID_ARG A specified input parameter is invalid.
- *
- */
- result SetDeviceName(const Tizen::Base::String& deviceName);
-
- /**
- * Sets the mac address.
- *
- * @return An error code
- * @param[in] macAddress String of MacAddress in format "00-00-00-00-00-00"
- * @exception E_SUCCESS The method was successful.
- * @exception E_INVALID_ARG A specified input parameter is invalid.
- *
- */
- result SetMacAddress(const Tizen::Base::String& macAddress);
-
- /**
- * Sets the virtual mac address.
- *
- * @return An error code
- * @param[in] macAddress String of MacAddress in format "00-00-00-00-00-00"
- * @exception E_SUCCESS The method was successful.
- * @exception E_INVALID_ARG A specified input parameter is invalid.
- *
- */
- result SetVirtualMacAddress(const Tizen::Base::String& macAddress);
-
- /**
- * Sets the ip address.
- *
- * @return An error code
- * @param[in] ipAddress String of ipaddress
- * @exception E_SUCCESS The method was successful.
- * @exception E_OUT_OF_MEMORY Memory Allocation failure or invalid input.
- *
- */
- result SetIpAddress(const Tizen::Base::String& ipAddress);
-
- /**
- * Sets the SSID (Service Set Identifier).
- *
- * @return An error code
- * @param[in] ssid String of SSID
- * @exception E_SUCCESS The method was successful.
- * @exception E_INVALID_ARG A specified input parameter is invalid.
- *
- */
- result SetSsid(const Tizen::Base::String& ssid);
-
- /**
- * Sets the device status.
- *
- * @param[in] deviceStatus Device status
- *
- */
- void SetDeviceStatus(const WifiDirectDeviceStatus& deviceStatus);
-
- /**
- * Sets the group member type.
- *
- * @param[in] groupMemberType Group Member Type
- *
- */
- void SetGroupMemberType(const WifiDirectGroupMemberType& groupMemberType);
-
- /**
- * Sets the device type category.
- *
- * @param[in] deviceTypeCategory Device Type Category
- *
- */
- void SetDeviceTypeCategory(const WifiDirectDeviceTypeCategory& deviceTypeCategory);
-
- /**
- * Sets the wps mode.
- *
- * @param[in] wpsConfigurationModeList List of supported WPS Mode.
- *
- */
- void SetSupportedWpsConfigurationMode( const Tizen::Base::Collection::IListT<WifiWpsConfigurationMode>& wpsConfigurationModeList );
-
- /**
- * Sets the disconnected flag.
- *
- * @param[in] value Flag value
- *
- */
- void SetDisconnect(bool value);
-
- /**
- * Gets the disconnected flag value.
- *
- */
- bool IsDisconnecting(void);
-
- /**
- * @see WifiDirectDeviceInfo::Equals()
- */
- virtual bool Equals(const Tizen::Base::Object& obj) const;
-
- /**
- * @see WifiDirectDeviceInfo::GetHashCode()
- */
- virtual int GetHashCode(void) const;
-
- /**
- * Sets the ssid for wifiDirectDeviceInfo object.
- *
- * @param[in] wifiDirectDeviceInfo Wifi Direct Device Info object
- * @param[in] ssid String of ssid
- *
- */
- static void SetSsidOfWifiDirectDeviceInfo(WifiDirectDeviceInfo& wifiDirectDeviceInfo, const Tizen::Base::String& ssid);
-
- /**
- * Creates WifiDirectDeviceInfo object from impl object
- *
- * @param[in] wifiDirectDeviceInfoImpl Wifi Direct Device Info Impl Object
- *
- */
- static WifiDirectDeviceInfo* GetWifiDirectDeviceInfoInstanceN(_WifiDirectDeviceInfoImpl& wifiDirectDeviceInfoImpl);
-
- /**
- * Gets the Impl instance.
- *
- * @since 2.1
- * @return The pointer to %_WifiDirectDeviceInfoImpl
- * @param[in] wifiDirectDeviceInfo An instance of %wifiDirectDeviceInfo
- */
- static _WifiDirectDeviceInfoImpl* GetInstance(WifiDirectDeviceInfo& wifiDirectDeviceInfo);
-
- /**
- * Gets the Impl instance.
- *
- * @since 2.1
- * @return The pointer to %_WifiDirectDeviceInfoImpl
- * @param[in] wifiDirectDeviceInfo An instance of %wifiDirectDeviceInfo
- */
- static const _WifiDirectDeviceInfoImpl* GetInstance(const WifiDirectDeviceInfo& wifiDirectDeviceInfo);
-
- /**
- * @see WifiDirectDeviceInfo::operator=()
- */
- _WifiDirectDeviceInfoImpl& operator =(const _WifiDirectDeviceInfoImpl& rhs);
-
- /**
- * Prints the device information (Only for debugging purpose)
- *
- * @param[in] wifiDirectDeviceInfo Device information
- *
- */
- static void PrintDeviceInfo( const _WifiDirectDeviceInfoImpl& wifiDirectDeviceInfo);
+ /**
+ * This is the default constructor for this class.
+ *
+ * @since 2.0
+ */
+ _WifiDirectDeviceInfoImpl(void);
+
+ /**
+ * This is the copy constructor for this class.
+ *
+ * @since 2.0
+ *
+ * @param[in] rhs An instance of %WifiDirectDeviceInfo
+ */
+ _WifiDirectDeviceInfoImpl(const _WifiDirectDeviceInfoImpl& rhs);
+
+ /**
+ * Initializes this instance of WifiDirectDeviceInfo with the specified device name
+ * and the MAC address.
+ *
+ * @since 2.0
+ * @param[in] deviceName The device name @n
+ * The length of @c deviceName should not exceed 64 characters
+ * @param[in] macAddr The MAC address @n
+ * The value of @c macAddr should be in the form '00-00-00-00-00-00'
+ *
+ */
+ _WifiDirectDeviceInfoImpl(const Tizen::Base::String& deviceName, const Tizen::Base::String& macAddr);
+
+ /**
+ * This destructor overrides Tizen::Base::Object::~Object().
+ *
+ * @since 2.0
+ */
+ virtual ~_WifiDirectDeviceInfoImpl(void);
+
+ /**
+ * @see WifiDirectDeviceInfo::GetDeviceId()
+ */
+ WifiDirectDeviceId GetDeviceId(void) const;
+
+ /**
+ * @see WifiDirectDeviceInfo::GetDeviceName()
+ */
+ Tizen::Base::String GetDeviceName(void) const;
+
+ /**
+ * @see WifiDirectDeviceInfo::GetMacAddress()
+ */
+ Tizen::Base::String GetMacAddress(void) const ;
+
+ /**
+ * @see WifiDirectDeviceInfo::GetIpAddress()
+ */
+ const Tizen::Net::IpAddress *GetIpAddress(void) const;
+
+ /**
+ * @see WifiDirectDeviceInfo::GetSsid()
+ */
+ Tizen::Base::String GetSsid(void) const;
+
+ /**
+ * @see WifiDirectDeviceInfo::GetDeviceStatus()
+ */
+ WifiDirectDeviceStatus GetDeviceStatus(void) const;
+
+ /**
+ * @see WifiDirectDeviceInfo::GetGroupMemberType()
+ */
+ WifiDirectGroupMemberType GetGroupMemberType(void) const;
+
+ /**
+ * @see WifiDirectDeviceInfo::GetDeviceTypeCategory()
+ */
+ WifiDirectDeviceTypeCategory GetDeviceTypeCategory(void) const;
+
+ /**
+ * @see WifiDirectDeviceInfo::GetSupportedWpsConfigurationModeList()
+ */
+ const Tizen::Base::Collection::IListT<WifiWpsConfigurationMode>* GetSupportedWpsConfigurationModeList(void) const;
+
+ /**
+ * @see WifiDirectDeviceInfo::GetVirtualMacAddress()
+ */
+ Tizen::Base::String GetVirtualMacAddress(void) const;
+
+ /**
+ * Sets the ID of the device.
+ *
+ * @param[in] localDeviceId Device ID
+ */
+ void SetDeviceId(const WifiDirectDeviceId localDeviceId);
+
+ /**
+ * Sets the device name.
+ *
+ * @return An error code
+ * @param[in] deviceName String of Device Name
+ * @exception E_SUCCESS The method was successful.
+ * @exception E_INVALID_ARG A specified input parameter is invalid.
+ *
+ */
+ result SetDeviceName(const Tizen::Base::String& deviceName);
+
+ /**
+ * Sets the mac address.
+ *
+ * @return An error code
+ * @param[in] macAddress String of MacAddress in format "00-00-00-00-00-00"
+ * @exception E_SUCCESS The method was successful.
+ * @exception E_INVALID_ARG A specified input parameter is invalid.
+ *
+ */
+ result SetMacAddress(const Tizen::Base::String& macAddress);
+
+ /**
+ * Sets the virtual mac address.
+ *
+ * @return An error code
+ * @param[in] macAddress String of MacAddress in format "00-00-00-00-00-00"
+ * @exception E_SUCCESS The method was successful.
+ * @exception E_INVALID_ARG A specified input parameter is invalid.
+ *
+ */
+ result SetVirtualMacAddress(const Tizen::Base::String& macAddress);
+
+ /**
+ * Sets the ip address.
+ *
+ * @return An error code
+ * @param[in] ipAddress String of ipaddress
+ * @exception E_SUCCESS The method was successful.
+ * @exception E_OUT_OF_MEMORY Memory Allocation failure or invalid input.
+ *
+ */
+ result SetIpAddress(const Tizen::Base::String& ipAddress);
+
+ /**
+ * Sets the SSID (Service Set Identifier).
+ *
+ * @return An error code
+ * @param[in] ssid String of SSID
+ * @exception E_SUCCESS The method was successful.
+ * @exception E_INVALID_ARG A specified input parameter is invalid.
+ *
+ */
+ result SetSsid(const Tizen::Base::String& ssid);
+
+ /**
+ * Sets the device status.
+ *
+ * @param[in] deviceStatus Device status
+ *
+ */
+ void SetDeviceStatus(const WifiDirectDeviceStatus& deviceStatus);
+
+ /**
+ * Sets the group member type.
+ *
+ * @param[in] groupMemberType Group Member Type
+ *
+ */
+ void SetGroupMemberType(const WifiDirectGroupMemberType& groupMemberType);
+
+ /**
+ * Sets the device type category.
+ *
+ * @param[in] deviceTypeCategory Device Type Category
+ *
+ */
+ void SetDeviceTypeCategory(const WifiDirectDeviceTypeCategory& deviceTypeCategory);
+
+ /**
+ * Sets the wps mode.
+ *
+ * @param[in] wpsConfigurationModeList List of supported WPS Mode.
+ *
+ * @exception E_SUCCESS The method was successful.
+ * @exception E_INVALID_OPERATION The current state of the instance prohibits the execution of the specified operation,
+ * or the collection is modified during the operation of this method.
+ */
+ result SetSupportedWpsConfigurationMode(const Tizen::Base::Collection::IListT< WifiWpsConfigurationMode >& wpsConfigurationModeList);
+
+ /**
+ * Sets the disconnected flag.
+ *
+ * @param[in] value Flag value
+ *
+ */
+ void SetDisconnect(bool value);
+
+ /**
+ * Gets the disconnected flag value.
+ *
+ */
+ bool IsDisconnecting(void);
+
+ /**
+ * @see WifiDirectDeviceInfo::Equals()
+ */
+ virtual bool Equals(const Tizen::Base::Object& obj) const;
+
+ /**
+ * @see WifiDirectDeviceInfo::GetHashCode()
+ */
+ virtual int GetHashCode(void) const;
+
+ /**
+ * Sets the ssid for wifiDirectDeviceInfo object.
+ *
+ * @param[in] wifiDirectDeviceInfo Wifi Direct Device Info object
+ * @param[in] ssid String of ssid
+ *
+ */
+ static void SetSsidOfWifiDirectDeviceInfo(WifiDirectDeviceInfo& wifiDirectDeviceInfo, const Tizen::Base::String& ssid);
+
+ /**
+ * Creates WifiDirectDeviceInfo object from impl object
+ *
+ * @param[in] wifiDirectDeviceInfoImpl Wifi Direct Device Info Impl Object
+ *
+ */
+ static WifiDirectDeviceInfo* GetWifiDirectDeviceInfoInstanceN(_WifiDirectDeviceInfoImpl& wifiDirectDeviceInfoImpl);
+
+ /**
+ * Gets the Impl instance.
+ *
+ * @since 2.1
+ * @return The pointer to %_WifiDirectDeviceInfoImpl
+ * @param[in] wifiDirectDeviceInfo An instance of %wifiDirectDeviceInfo
+ */
+ static _WifiDirectDeviceInfoImpl* GetInstance(WifiDirectDeviceInfo& wifiDirectDeviceInfo);
+
+ /**
+ * Gets the Impl instance.
+ *
+ * @since 2.1
+ * @return The pointer to %_WifiDirectDeviceInfoImpl
+ * @param[in] wifiDirectDeviceInfo An instance of %wifiDirectDeviceInfo
+ */
+ static const _WifiDirectDeviceInfoImpl* GetInstance(const WifiDirectDeviceInfo& wifiDirectDeviceInfo);
+
+ /**
+ * @see WifiDirectDeviceInfo::operator=()
+ */
+ _WifiDirectDeviceInfoImpl& operator =(const _WifiDirectDeviceInfoImpl& rhs);
+
+ /**
+ * Prints the device information (Only for debugging purpose)
+ *
+ * @param[in] wifiDirectDeviceInfo Device information
+ *
+ */
+ static void PrintDeviceInfo( const _WifiDirectDeviceInfoImpl& wifiDirectDeviceInfo);
private:
- WifiDirectDeviceId __localDeviceId;
- Tizen::Base::String __deviceName;
- Tizen::Base::String __macAddress;
- Tizen::Base::String __virtualMacAddress;
- Tizen::Base::String __ssid;
- Tizen::Net::IpAddress* __pIpAddress;
- WifiDirectDeviceStatus __deviceStatus;
- WifiDirectGroupMemberType __groupMemberType;
- WifiDirectDeviceTypeCategory __deviceTypeCategory;
- Tizen::Base::Collection::ArrayListT<WifiWpsConfigurationMode> __wpsConfigurationModeList;
- bool __isDisconnecting;
+ WifiDirectDeviceId __localDeviceId;
+ Tizen::Base::String __deviceName;
+ Tizen::Base::String __macAddress;
+ Tizen::Base::String __virtualMacAddress;
+ Tizen::Base::String __ssid;
+ Tizen::Net::IpAddress* __pIpAddress;
+ WifiDirectDeviceStatus __deviceStatus;
+ WifiDirectGroupMemberType __groupMemberType;
+ WifiDirectDeviceTypeCategory __deviceTypeCategory;
+ Tizen::Base::Collection::ArrayListT<WifiWpsConfigurationMode> __wpsConfigurationModeList;
+ bool __isDisconnecting;
}; // _WifiDirectDeviceInfoImpl
} } }// Tizen::Net::Wifi
* _WifiManagerImpl class provides the functionality for creating a _WifiManagerImpl instance, and
* managing local Wifi devices. It also allows the listener to get events from local Wifi devices.
*/
-class _OSP_EXPORT_ _WifiManagerImpl :
- public Tizen::Base::Object,
- public _IWifiManagerEventListener
+class _OSP_EXPORT_ _WifiManagerImpl
+ : public Tizen::Base::Object
+ , public _IWifiManagerEventListener
{
public:
* @brief This class provides methods for the proximity service.
*
*/
-class _OSP_EXPORT_ _WifiProximityManagerImpl :
- public Tizen::Base::Object
+class _OSP_EXPORT_ _WifiProximityManagerImpl
+ : public Tizen::Base::Object
{
public:
* This class is used with the WifiSecurityInfo class to set and get the additional security information of a Wi-Fi network.
*/
-class _OSP_EXPORT_ _WifiSecurityInfoImpl :
- public Tizen::Base::Object
+class _OSP_EXPORT_ _WifiSecurityInfoImpl
+ : public Tizen::Base::Object
{
public:
struct _CharDeleter
{
- void operator()(char* pChar)
- {
- free(pChar);
- }
+ void operator ()(char* pChar)
+ {
+ free(pChar);
+ }
};
/**
class _OSP_EXPORT_ _WifiUtility
{
public:
- /**
- * Converts net_err_t to result
- *
- * @return An error code
- * @param[in] error error code
- */
- static result ConvertErrorCode(int error);
-
- /**
- * Converts wlan_security_mode_type_t to WifiAuthentication Type
- *
- * @return WifiAuthenticationType
- * @param[in] securityMode Security Mode
- * @param[in] encType Encryption Type
- */
- static WifiAuthenticationType ConvertAuthType(wifi_security_type_e securityMode, wifi_encryption_type_e encType);
-
- /**
- * Converts WifiAuthenticationType to wifi_security_type_e
- *
- * @return wifi_security_type_e
- * @param[in] authMode Authentication Mode
- */
-
- static wifi_security_type_e ConvertSecurityType(WifiAuthenticationType authMode);
- /**
- * Converts frequency to RadioChannel.
- *
- * @return WifiRadioChannel
- * @param[in] frequency radio frequency value
- */
- static WifiRadioChannel ConvertRadioChannel(int frequency);
-
- /**
- * Converts Rssi value from level
- *
- * @return long
- * @param[in] val rssi value
- */
- static long ConvertLeveltoRssiValue(wifi_rssi_level_e val);
-
- /**
- * Converts Rssi value from percentage
- *
- * @return long
- * @param[in] val Rssi percentage value
- */
- static long ConvertPercentagetoRssiValue(char val);
-
-
- /**
- * Converts Encryption Type
- *
- * @return WifiEncryptionType
- * @param[in] encType Encryption Type
- */
- static WifiEncryptionType ConvertEncryptionType(wifi_encryption_type_e encType);
-
- /**
- * Converts Encryption Type
- *
- * @return wifi_encryption_type_e
- * @param[in] encryptionMode Encryption Type
- */
- static wifi_encryption_type_e ConvertEncryptionType(WifiEncryptionType encryptionMode);
-
- /**
- * Converts EAP Type
- *
- * @return WifiEapType
- * @param[in] eapType EAP Type
- * @param[in] eapAuthType EAP authentication type
- */
- static WifiEapType ConvertEapType(wifi_eap_type_e eapType, wifi_eap_auth_type_e eapAuthType);
-
- /**
- * Converts EAP Type
- *
- * @return wlan_eap_type_t
- * @param[in] eapType EAP Type
- */
- static wifi_eap_type_e ConvertEapType(WifiEapType eapType);
-
- /**
- * Converts EAP Authentication Type
- *
- * @return wlan_eap_auth_type_t
- * @param[in] eapType EAP authentication type
- */
- static wifi_eap_auth_type_e ConvertEapAuthType(WifiEapType eapype);
-
- /**
- * Converts Mac Address
- *
- * @return String
- * @param[in] macAddress mac address
- */
- static Tizen::Base::String ConvertMacAddress(char macAddress[]);
-
- /**
- * Converts profile info to bssinfo
- *
- * @return WifiBssInfo bss information
- * @param[in] apHandler Access Point Handler
- */
- static WifiBssInfo* CreateWifiBssInfoInstanceN(wifi_ap_h& apHandler);
-
- /**
- * Releases memory for wifi aphandler and sets it to null
- *
- * @param[in] apHandler Access Point Handler
- */
- static void WifiApClone(void** pDest, void* pSrc);
-
- /**
- * Clones access point handler
- *
- * @param[in] apHandler Access Point Handler
- */
- static void WifiApDestory(void** pApHandler);
-
- /**
- * Checks whether the values of the two %IpAddress objects are equal.
- */
- static bool CheckAddressEquality(Tizen::Net::IpAddress* pFirstAddress, Tizen::Net::IpAddress* pSecondAddress);
+ /**
+ * Converts wlan_security_mode_type_t to WifiAuthentication Type
+ *
+ * @return WifiAuthenticationType
+ * @param[in] securityMode Security Mode
+ * @param[in] encType Encryption Type
+ */
+ static WifiAuthenticationType ConvertAuthType(wifi_security_type_e securityMode, wifi_encryption_type_e encType);
+
+ /**
+ * Converts WifiAuthenticationType to wifi_security_type_e
+ *
+ * @return wifi_security_type_e
+ * @param[in] authMode Authentication Mode
+ */
+
+ static wifi_security_type_e ConvertSecurityType(WifiAuthenticationType authMode);
+ /**
+ * Converts frequency to RadioChannel.
+ *
+ * @return WifiRadioChannel
+ * @param[in] frequency radio frequency value
+ */
+ static WifiRadioChannel ConvertRadioChannel(int frequency);
+
+ /**
+ * Converts Rssi value from level
+ *
+ * @return long
+ * @param[in] val rssi value
+ */
+ static long ConvertLeveltoRssiValue(wifi_rssi_level_e val);
+
+ /**
+ * Converts Rssi value from percentage
+ *
+ * @return long
+ * @param[in] val Rssi percentage value
+ */
+ static long ConvertPercentagetoRssiValue(char val);
+
+
+ /**
+ * Converts Encryption Type
+ *
+ * @return WifiEncryptionType
+ * @param[in] encType Encryption Type
+ */
+ static WifiEncryptionType ConvertEncryptionType(wifi_encryption_type_e encType);
+
+ /**
+ * Converts Encryption Type
+ *
+ * @return wifi_encryption_type_e
+ * @param[in] encryptionMode Encryption Type
+ */
+ static wifi_encryption_type_e ConvertEncryptionType(WifiEncryptionType encryptionMode);
+
+ /**
+ * Converts EAP Type
+ *
+ * @return WifiEapType
+ * @param[in] eapType EAP Type
+ * @param[in] eapAuthType EAP authentication type
+ */
+ static WifiEapType ConvertEapType(wifi_eap_type_e eapType, wifi_eap_auth_type_e eapAuthType);
+
+ /**
+ * Converts EAP Type
+ *
+ * @return wlan_eap_type_t
+ * @param[in] eapType EAP Type
+ */
+ static wifi_eap_type_e ConvertEapType(WifiEapType eapType);
+
+ /**
+ * Converts EAP Authentication Type
+ *
+ * @return wlan_eap_auth_type_t
+ * @param[in] eapType EAP authentication type
+ */
+ static wifi_eap_auth_type_e ConvertEapAuthType(WifiEapType eapype);
+
+ /**
+ * Converts Mac Address
+ *
+ * @return String
+ * @param[in] macAddress mac address
+ */
+ static Tizen::Base::String ConvertMacAddress(char macAddress[]);
+
+ /**
+ * Converts profile info to bssinfo
+ *
+ * @return WifiBssInfo bss information
+ * @param[in] apHandler Access Point Handler
+ */
+ static WifiBssInfo* CreateWifiBssInfoInstanceN(wifi_ap_h& apHandler);
+
+ /**
+ * Releases memory for wifi aphandler and sets it to null
+ *
+ * @param[in] apHandler Access Point Handler
+ */
+ static void WifiApClone(void** pDest, void* pSrc);
+
+ /**
+ * Clones access point handler
+ *
+ * @param[in] apHandler Access Point Handler
+ */
+ static void WifiApDestory(void** pApHandler);
+
+ /**
+ * Checks whether the values of the two %IpAddress objects are equal.
+ */
+ static bool CheckAddressEquality(Tizen::Net::IpAddress* pFirstAddress, Tizen::Net::IpAddress* pSecondAddress);
static Tizen::Base::Collection::IList* GetWifiBssInfoListCloneN(const Tizen::Base::Collection::IList* pSrcList);
* This default constructor is intentionally declared as private because this class cannot be constructed.
*
*/
- _WifiUtility(void);
+ _WifiUtility(void);
/**
- * This destructor is intentionally declared as private because this class cannot be constructed.
+ * This destructor is intentionally declared as private because this class cannot be constructed.
*
*/
virtual ~_WifiUtility(void);
private:
-
- /**
- * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
- *
- * @since 2.1
- *
- * @param[in] rhs An instance of %_WifiUtility
- */
+ /**
+ * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
+ *
+ * @since 2.1
+ *
+ * @param[in] rhs An instance of %_WifiUtility
+ */
_WifiUtility(const _WifiUtility& rhs);
- /**
- * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
- *
- * @param[in] rhs An instance of %_WifiUtility
- */
+ /**
+ * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
+ *
+ * @param[in] rhs An instance of %_WifiUtility
+ */
_WifiUtility& operator =(const _WifiUtility& rhs);
}; // _WifiUtility
} } } // Tizen::Net::Wifi
#endif // _FNET_WIFI_INTERNAL_WIFI_UTILITY_H_
-
namespace Tizen { namespace Net { namespace Wifi {
WifiBssInfo::WifiBssInfo(void)
+ : __pWifiBssInfoImpl(null)
{
__pWifiBssInfoImpl = new (std::nothrow) _WifiBssInfoImpl();
SysTryReturnVoidResult(NID_NET_WIFI, __pWifiBssInfoImpl, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
}
WifiBssInfo::WifiBssInfo(const WifiBssInfo& value)
+ : __pWifiBssInfoImpl(null)
{
__pWifiBssInfoImpl = new (std::nothrow) _WifiBssInfoImpl(*(value.__pWifiBssInfoImpl));
SysTryReturnVoidResult(NID_NET_WIFI, __pWifiBssInfoImpl, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
WifiDirectDeviceInfo&
WifiDirectDeviceInfo::operator=(const WifiDirectDeviceInfo& rhs)
{
- SysLog(NID_NET_WIFI, "Enter");
-
if (this != &rhs)
{
*__pWifiDirectDeviceInfoImpl = *rhs.__pWifiDirectDeviceInfoImpl;
}
- SysLog(NID_NET_WIFI, "Exit");
return *this;
}
/**
* @file FNetWifiWifiDirectDeviceManager.cpp
- * @brief This is the implementation file for the WifiDirectDeviceManager
- * Class.
+ * @brief This is the implementation file for the WifiDirectDeviceManager Class.
*
* This file contains implementation of the WifiDirectDeviceManager Class.
*/
using namespace Tizen::Security;
-namespace Tizen { namespace Net { namespace Wifi {
+namespace Tizen { namespace Net { namespace Wifi
+{
WifiDirectGroupClient::~WifiDirectGroupClient(void)
if (__pWifiDirectGroupClientImpl != null)
{
__pWifiDirectGroupClientImpl->Release();
- __pWifiDirectGroupClientImpl = null;
}
}
result
WifiDirectGroupClient::Disassociate(void)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- r = _AccessController::CheckUserPrivilege(_PRV_WIFI_WIFIDIRECT_ADMIN);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, E_PRIVILEGE_DENIED, "The application does not have the privilege to call this method.");
+ r = _AccessController::CheckUserPrivilege(_PRV_WIFI_WIFIDIRECT_ADMIN);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, E_PRIVILEGE_DENIED, "The application does not have the privilege to call this method.");
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectGroupClientImpl, E_SYSTEM, "This instance has not been constructed yet.");
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectGroupClientImpl, E_SYSTEM, "This instance has not been constructed yet.");
- r = __pWifiDirectGroupClientImpl->Disassociate();
+ r = __pWifiDirectGroupClientImpl->Disassociate();
- if (IsFailed(r))
- {
- SysLogException(NID_NET_WIFI, r, "[%s] Propagating.", GetErrorMessage(r));
- }
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Propagating.");
- return r;
+ return r;
}
result
WifiDirectGroupClient::RequestGroupOwnerInfo(int portNumber)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- r = _AccessController::CheckUserPrivilege(_PRV_WIFI_WIFIDIRECT_READ);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, E_PRIVILEGE_DENIED, "The application does not have the privilege to call this method.");
+ r = _AccessController::CheckUserPrivilege(_PRV_WIFI_WIFIDIRECT_READ);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, E_PRIVILEGE_DENIED, "The application does not have the privilege to call this method.");
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectGroupClientImpl, E_SYSTEM, "This instance has not been constructed yet.");
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectGroupClientImpl, E_SYSTEM, "This instance has not been constructed yet.");
- r = __pWifiDirectGroupClientImpl->RequestGroupOwnerInfo(portNumber);
+ r = __pWifiDirectGroupClientImpl->RequestGroupOwnerInfo(portNumber);
- if (IsFailed(r))
- {
- SysLogException(NID_NET_WIFI, r, "[%s] Propagating.", GetErrorMessage(r));
- }
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Propagating.");
- return r;
+ return r;
}
result
WifiDirectGroupClient::RequestAllGroupMemberInfo(int portNumber)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- r = _AccessController::CheckUserPrivilege(_PRV_WIFI_WIFIDIRECT_READ);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, E_PRIVILEGE_DENIED, "The application does not have the privilege to call this method.");
+ r = _AccessController::CheckUserPrivilege(_PRV_WIFI_WIFIDIRECT_READ);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, E_PRIVILEGE_DENIED, "The application does not have the privilege to call this method.");
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectGroupClientImpl, E_SYSTEM, "This instance has not been constructed yet.");
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectGroupClientImpl, E_SYSTEM, "This instance has not been constructed yet.");
- r = __pWifiDirectGroupClientImpl->RequestAllGroupMemberInfo(portNumber);
+ r = __pWifiDirectGroupClientImpl->RequestAllGroupMemberInfo(portNumber);
- if (IsFailed(r))
- {
- SysLogException(NID_NET_WIFI, r, "[%s] Propagating", GetErrorMessage(r));
- }
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Propagating.");
- return r;
+ return r;
}
WifiDirectGroupClient::WifiDirectGroupClient(void)
- : __pWifiDirectGroupClientImpl(null)
+ : __pWifiDirectGroupClientImpl(null)
{
}
WifiDirectGroupInfo::WifiDirectGroupInfo(void)
+ : __pWifiDirectGroupInfoImpl(null)
{
- __pWifiDirectGroupInfoImpl = new (std::nothrow) _WifiDirectGroupInfoImpl;
- SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectGroupInfoImpl, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectGroupInfoImpl = new (std::nothrow) _WifiDirectGroupInfoImpl;
+ SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectGroupInfoImpl != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
}
WifiDirectGroupInfo::WifiDirectGroupInfo(const WifiDirectGroupInfo& value)
+ : __pWifiDirectGroupInfoImpl(null)
{
- __pWifiDirectGroupInfoImpl = new (std::nothrow) _WifiDirectGroupInfoImpl(*value.__pWifiDirectGroupInfoImpl);
- SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectGroupInfoImpl, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectGroupInfoImpl = new (std::nothrow) _WifiDirectGroupInfoImpl(*value.__pWifiDirectGroupInfoImpl);
+ SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectGroupInfoImpl != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
}
WifiDirectGroupInfo::~WifiDirectGroupInfo(void)
using namespace Tizen::Base::Collection;
using namespace Tizen::Security;
-namespace Tizen { namespace Net { namespace Wifi {
+namespace Tizen { namespace Net { namespace Wifi
+{
WifiDirectGroupOwner::~WifiDirectGroupOwner(void)
{
- if (__pWifiDirectGroupOwnerImpl != null)
- {
- __pWifiDirectGroupOwnerImpl->Release();
- __pWifiDirectGroupOwnerImpl = null;
- }
+ if (__pWifiDirectGroupOwnerImpl != null)
+ {
+ __pWifiDirectGroupOwnerImpl->Release();
+ }
}
result
/**
* @file FNetWifiWifiManager.cpp
* @brief This is the implementation file for the WifiManager Class.
- * @version 1.0
*
* This file contains the implementation of the WifiManager Class.
*/
using namespace Tizen::Security;
using namespace Tizen::System;
-namespace Tizen { namespace Net { namespace Wifi {
+namespace Tizen { namespace Net { namespace Wifi
+{
WifiManager::WifiManager(void)
:__pWifiManagerImpl(null)
/**
* @file FNetWifiWifiNetAccountInfo.cpp
* @brief This is the implementation file for the WifiNetAccountInfo Class.
- * @version 1.0
*
* This file contains the implementation of the WifiNetAccountInfo Class.
*/
{
WifiNetAccountInfo::WifiNetAccountInfo(void)
+ : __pWifiNetAccountInfoImpl(null)
{
__pWifiNetAccountInfoImpl = new (std::nothrow) _WifiNetAccountInfoImpl();
SysTryReturnVoidResult(NID_NET_WIFI, __pWifiNetAccountInfoImpl, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
}
WifiNetAccountInfo::WifiNetAccountInfo(const WifiNetAccountInfo& value)
+ : __pWifiNetAccountInfoImpl(null)
{
__pWifiNetAccountInfoImpl = new (std::nothrow) _WifiNetAccountInfoImpl(*value.__pWifiNetAccountInfoImpl);
SysTryReturnVoidResult(NID_NET_WIFI, __pWifiNetAccountInfoImpl, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
WifiNetAccountInfo::~WifiNetAccountInfo(void)
{
- if (__pWifiNetAccountInfoImpl)
- {
- delete __pWifiNetAccountInfoImpl;
- __pWifiNetAccountInfoImpl = null;
- }
+ delete __pWifiNetAccountInfoImpl;
}
String
bool
WifiNetAccountInfo::Equals(const Tizen::Base::Object& obj) const
{
- if (NetAccountInfo::Equals(obj) == false)
- {
- return false;
- }
+ const WifiNetAccountInfo* pOther = dynamic_cast< const WifiNetAccountInfo* >(&obj);
- const WifiNetAccountInfo* pOther = dynamic_cast<const WifiNetAccountInfo*>(&obj);
+ if (pOther == null)
+ {
+ return false;
+ }
- if (pOther == null)
- {
- return false;
- }
+ if (pOther == this)
+ {
+ return true;
+ }
- if (pOther == this)
- {
- return true;
- }
+ if (NetAccountInfo::Equals(obj) == false)
+ {
+ return false;
+ }
- return __pWifiNetAccountInfoImpl->Equals(*pOther->__pWifiNetAccountInfoImpl);
+ return __pWifiNetAccountInfoImpl->Equals(*pOther->__pWifiNetAccountInfoImpl);
}
int
/**
* @file FNetWifiWifiSecurityInfo.cpp
* @brief This is the implementation file for the WifiSecurityInfo Class.
- * @version 1.0
*
* This file contains the implementation of the WifiSecurityInfo Class.
*/
{
WifiSecurityInfo::WifiSecurityInfo(void)
+ : __pWifiSecurityInfoImpl(null)
{
- __pWifiSecurityInfoImpl = new (std::nothrow) _WifiSecurityInfoImpl();
- SysTryReturnVoidResult(NID_NET_WIFI, __pWifiSecurityInfoImpl, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiSecurityInfoImpl = new (std::nothrow) _WifiSecurityInfoImpl();
+ SysTryReturnVoidResult(NID_NET_WIFI, __pWifiSecurityInfoImpl, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
}
WifiSecurityInfo::WifiSecurityInfo(const WifiSecurityInfo& value)
+ : __pWifiSecurityInfoImpl(null)
{
- __pWifiSecurityInfoImpl = new (std::nothrow) _WifiSecurityInfoImpl(*(value.__pWifiSecurityInfoImpl));
- SysTryReturnVoidResult(NID_NET_WIFI, __pWifiSecurityInfoImpl, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiSecurityInfoImpl = new (std::nothrow) _WifiSecurityInfoImpl(*(value.__pWifiSecurityInfoImpl));
+ SysTryReturnVoidResult(NID_NET_WIFI, __pWifiSecurityInfoImpl, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
}
WifiSecurityInfo::~WifiSecurityInfo(void)
{
- if (__pWifiSecurityInfoImpl)
- {
- delete __pWifiSecurityInfoImpl;
- __pWifiSecurityInfoImpl = null;
- }
+ delete __pWifiSecurityInfoImpl;
}
WifiSecurityInfo&
using namespace std;
using namespace Tizen::Base;
-namespace Tizen { namespace Net { namespace Wifi {
+namespace Tizen { namespace Net { namespace Wifi
+{
_WifiBssInfoImpl::_WifiBssInfoImpl(void)
- : __ssid("")
- , __bssid("")
- , __bssType(WIFI_BSS_TYPE_INFRASTRUCTURE)
- , __channel(WIFI_RADIO_CHANNEL_UNKNOWN)
- , __rssi(0)
- , __dataRate(-1.0)
+ : __bssType(WIFI_BSS_TYPE_INFRASTRUCTURE)
+ , __channel(WIFI_RADIO_CHANNEL_UNKNOWN)
+ , __rssi(0)
+ , __dataRate(-1.0)
, __isKnown(false)
, __scheme(NET_ADDRESS_SCHEME_NONE)
, __pLocalAddress(null)
* This header file contains implementation of the _WifiDirectDeviceEvent Class.
*/
+#include <unique_ptr.h>
#include <FBaseRtIEventListener.h>
#include <FNetWifiIWifiDirectDeviceListener.h>
#include <FBaseColIList.h>
#include "FNetWifi_WifiDirectDeviceEvent.h"
#include "FNetWifi_WifiDirectEventArg.h"
+using namespace std;
using namespace Tizen::Base::Collection;
using namespace Tizen::Base;
namespace Tizen { namespace Net { namespace Wifi
{
-////////////////////////////////////////////////////////////////////////////
_WifiDirectDeviceEvent::_WifiDirectDeviceEvent(_WifiDirectDeviceImpl* pWifiDirectDeviceImpl)
{
__pWifiDirectDeviceImpl = pWifiDirectDeviceImpl;
return _Event::Initialize();
}
-////////////////////////////////////////////////////////////////////////////////
-/// Operation : Protected
-
void
_WifiDirectDeviceEvent::FireImpl(Tizen::Base::Runtime::IEventListener& listener, const Tizen::Base::Runtime::IEventArg& arg)
{
case WIFI_DIRECT_DEVICE_EVENT_SCAN_COMPLETED:
SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_DEVICE_EVENT_SCAN_COMPLETED) : %s", GetErrorMessage(r));
{
- if (!IsFailed(r))
+ if (r == E_SUCCESS)
{
- ArrayList* pSrcDeviceInfoList = dynamic_cast< ArrayList* >(pArg->GetDeviceInfoList());
- if (pSrcDeviceInfoList == null)
- {
- SysLogException(NID_NET_WIFI, E_SYSTEM, "[E_SYSTEM] Failed to dynamic casting DeviceInfo list.");
- pDeviceListener->OnWifiDirectScanCompletedN(localDeviceId, null, E_SYSTEM);
- return;
- }
+ unique_ptr<ArrayList> pDeviceInfoList(new (std::nothrow) ArrayList(SingleObjectDeleter));
- ArrayList* pDescDeviceInfoList = new (std::nothrow) ArrayList();
- if (pSrcDeviceInfoList == null)
+ if (pDeviceInfoList == null)
{
SysLogException(NID_NET_WIFI, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
pDeviceListener->OnWifiDirectScanCompletedN(localDeviceId, null, E_SYSTEM);
return;
}
- result res = pDescDeviceInfoList->Construct(*pSrcDeviceInfoList);
-
- if (IsFailed(res))
+ for (int i = 0 ; i < pArg->GetDeviceInfoList()->GetCount() ; i++)
{
- delete pDescDeviceInfoList;
- pDescDeviceInfoList = null;
+ WifiDirectDeviceInfo* pDeviceInfo = new (std::nothrow) WifiDirectDeviceInfo(*static_cast<WifiDirectDeviceInfo*>(pArg->GetDeviceInfoList()->GetAt(i)));
+ SysLogException(NID_NET_WIFI, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- r = E_SYSTEM;
+ result res = pDeviceInfoList->Add(*pDeviceInfo);
+
+ if (IsFailed(res))
+ {
+ SysLogException(NID_NET_WIFI, res, "[%s] Memory allocation failed.", GetErrorMessage(res));
+ pDeviceListener->OnWifiDirectScanCompletedN(localDeviceId, null, E_SYSTEM);
+ break;
+ }
}
- pDeviceListener->OnWifiDirectScanCompletedN(localDeviceId, pDescDeviceInfoList, r);
+ pDeviceListener->OnWifiDirectScanCompletedN(localDeviceId, pDeviceInfoList.release(), r);
+
}
else
{
* @brief This is the implementation file for _WifiDirectDeviceImpl class.
*/
-// Includes
#include <unique_ptr.h>
#include <FNetNetAccountManager.h>
#include <FNetNetConnection.h>
using namespace Tizen::Net;
-namespace Tizen { namespace Net { namespace Wifi
+namespace Tizen { namespace Net { namespace Wifi
{
-////////////////////////////////////////////////////////////////////////////////
-/// Lifecycle : Public
_WifiDirectDeviceImpl::_WifiDirectDeviceImpl(void)
- : __localDeviceId(-1)
- , __deviceState(WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED)
- , __scanState(WIFI_DIRECT_SCAN_INTERNAL_IDLE)
- , __pWifiDirectSystemAdapter(null)
- , __refCount(1)
+ : __localDeviceId(-1)
+ , __deviceState(WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED)
+ , __scanState(WIFI_DIRECT_SCAN_INTERNAL_IDLE)
+ , __pWifiDirectSystemAdapter(null)
+ , __refCount(1)
{
}
{
}
-////////////////////////////////////////////////////////////////////////////////
-/// Operation : Public
-
result
_WifiDirectDeviceImpl::Construct(WifiDirectDeviceId localDeviceId, bool enableIpInfoService /*= true*/)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- WifiDirectDeviceStatus deviceStatus = WIFI_DIRECT_DEVICE_DEACTIVATED;
- WifiDirectGroupMemberType groupMemberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE;
+ WifiDirectDeviceStatus deviceStatus = WIFI_DIRECT_DEVICE_DEACTIVATED;
+ WifiDirectGroupMemberType groupMemberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE;
- __localDeviceId = localDeviceId;
+ __localDeviceId = localDeviceId;
- unique_ptr<_WifiDirectDeviceEvent> pWifiDirectDeviceEvent(new (std::nothrow) _WifiDirectDeviceEvent(this));
- SysTryReturnResult(NID_NET_WIFI, pWifiDirectDeviceEvent != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
+ unique_ptr< _WifiDirectDeviceEvent > pWifiDirectDeviceEvent(new (std::nothrow) _WifiDirectDeviceEvent(this));
+ SysTryReturnResult(NID_NET_WIFI, pWifiDirectDeviceEvent != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
- r = pWifiDirectDeviceEvent->Construct();
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to construct _WifiDirectDeviceEvent.");
+ r = pWifiDirectDeviceEvent->Construct();
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to construct _WifiDirectDeviceEvent.");
- unique_ptr<_WifiDirectGroupOwnerEvent> pWifiDirectGroupOwnerEvent(new (std::nothrow) _WifiDirectGroupOwnerEvent());
- SysTryReturnResult(NID_NET_WIFI, pWifiDirectGroupOwnerEvent != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
+ unique_ptr< _WifiDirectGroupOwnerEvent > pWifiDirectGroupOwnerEvent(new (std::nothrow) _WifiDirectGroupOwnerEvent());
+ SysTryReturnResult(NID_NET_WIFI, pWifiDirectGroupOwnerEvent != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
- r = pWifiDirectGroupOwnerEvent->Construct();
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to construct _WifiDirectGroupOwnerEvent.");
+ r = pWifiDirectGroupOwnerEvent->Construct();
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to construct _WifiDirectGroupOwnerEvent.");
- unique_ptr<_WifiDirectGroupClientEvent> pWifiDirectGroupClientEvent(new (std::nothrow) _WifiDirectGroupClientEvent());
- SysTryReturnResult(NID_NET_WIFI, pWifiDirectGroupClientEvent != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
+ unique_ptr< _WifiDirectGroupClientEvent > pWifiDirectGroupClientEvent(new (std::nothrow) _WifiDirectGroupClientEvent());
+ SysTryReturnResult(NID_NET_WIFI, pWifiDirectGroupClientEvent != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
- r = pWifiDirectGroupClientEvent->Construct();
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to construct _WifiDirectGroupClientEvent.");
+ r = pWifiDirectGroupClientEvent->Construct();
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to construct _WifiDirectGroupClientEvent.");
- r = __groupOwnerImpl.Construct(__localDeviceId, *this, enableIpInfoService);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to construct _WifiDirectGroupOwnerImpl.");
+ r = __groupOwnerImpl.Construct(__localDeviceId, *this, enableIpInfoService);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to construct _WifiDirectGroupOwnerImpl.");
- r = __groupClientImpl.Construct(__localDeviceId, *this, enableIpInfoService);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to construct _WifiDirectGroupClientImpl.");
+ r = __groupClientImpl.Construct(__localDeviceId, *this, enableIpInfoService);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to construct _WifiDirectGroupClientImpl.");
- __pWifiDirectSystemAdapter = _WifiDirectSystemAdapter::GetInstance();
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectSystemAdapter != null, E_SYSTEM,
- "Failed to acquire the instance of _WifiDirectSystemAdapter.");
+ __pWifiDirectSystemAdapter = _WifiDirectSystemAdapter::GetInstance();
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectSystemAdapter != null, E_SYSTEM,
+ "Failed to acquire the instance of _WifiDirectSystemAdapter.");
- __pWifiDirectSystemAdapter->AddListener(*this);
+ __pWifiDirectSystemAdapter->AddListener(*this);
- unique_ptr<WifiDirectDeviceInfo> pLocalDeviceInfo(__pWifiDirectSystemAdapter->GetLocalDeviceInfoN());
- r = GetLastResult();
+ unique_ptr< WifiDirectDeviceInfo > pLocalDeviceInfo(__pWifiDirectSystemAdapter->GetLocalDeviceInfoN());
+ r = GetLastResult();
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS && pLocalDeviceInfo != null, r,
- "Failed to construct WifiDirectDevice while obtaining the device information.");
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS && pLocalDeviceInfo != null, r,
+ "Failed to construct WifiDirectDevice while obtaining the device information.");
- deviceStatus = pLocalDeviceInfo->GetDeviceStatus();
- groupMemberType = pLocalDeviceInfo->GetGroupMemberType();
+ deviceStatus = pLocalDeviceInfo->GetDeviceStatus();
+ groupMemberType = pLocalDeviceInfo->GetGroupMemberType();
- r = __stateMutex.Create();
- r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "The mutex creation failed.");
+ r = __stateMutex.Create();
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "The mutex creation failed.");
- __stateMutex.Acquire();
- if (deviceStatus == WIFI_DIRECT_DEVICE_DEACTIVATED)
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED;
- }
- else
- {
- switch (groupMemberType)
- {
- case WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE:
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
- break;
- case WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER:
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER;
- break;
- case WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT:
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT;
- break;
- }
- }
- __stateMutex.Release();
+ __stateMutex.Acquire();
+ if (deviceStatus == WIFI_DIRECT_DEVICE_DEACTIVATED)
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED;
+ }
+ else
+ {
+ switch (groupMemberType)
+ {
+ case WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE:
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
+ break;
+
+ case WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER:
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER;
+ break;
+
+ case WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT:
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT;
+ break;
+ }
+ }
+ __stateMutex.Release();
- __pWifiDirectDeviceEvent = move(pWifiDirectDeviceEvent);
- __pWifiDirectGroupOwnerEvent = move(pWifiDirectGroupOwnerEvent);
- __pWifiDirectGroupClientEvent = move(pWifiDirectGroupClientEvent);
+ __pWifiDirectDeviceEvent = move(pWifiDirectDeviceEvent);
+ __pWifiDirectGroupOwnerEvent = move(pWifiDirectGroupOwnerEvent);
+ __pWifiDirectGroupClientEvent = move(pWifiDirectGroupClientEvent);
- return r;
+ return r;
}
result
-_WifiDirectDeviceImpl::AddWifiDirectDeviceListener(IWifiDirectDeviceListener &listener)
+_WifiDirectDeviceImpl::AddWifiDirectDeviceListener(IWifiDirectDeviceListener& listener)
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceEvent != null, E_SYSTEM, "The event instance has not been constructed yet.");
result r = E_SUCCESS;
}
result
-_WifiDirectDeviceImpl::AddWifiDirectGroupOwnerListener(IWifiDirectGroupOwnerListener &listener)
+_WifiDirectDeviceImpl::AddWifiDirectGroupOwnerListener(IWifiDirectGroupOwnerListener& listener)
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectGroupOwnerEvent != null, E_SYSTEM, "The event instance has not been constructed yet.");
result r = E_SUCCESS;
}
result
-_WifiDirectDeviceImpl::AddWifiDirectGroupClientListener(IWifiDirectGroupClientListener &listener)
+_WifiDirectDeviceImpl::AddWifiDirectGroupClientListener(IWifiDirectGroupClientListener& listener)
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectGroupClientEvent != null, E_SYSTEM, "The event instance has not been constructed yet.");
result r = E_SUCCESS;
}
result
-_WifiDirectDeviceImpl::RemoveWifiDirectDeviceListener(IWifiDirectDeviceListener &listener)
+_WifiDirectDeviceImpl::RemoveWifiDirectDeviceListener(IWifiDirectDeviceListener& listener)
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceEvent != null, E_SYSTEM, "The event instance has not been constructed yet.");
}
result
-_WifiDirectDeviceImpl::RemoveWifiDirectGroupOwnerListener(IWifiDirectGroupOwnerListener &listener)
+_WifiDirectDeviceImpl::RemoveWifiDirectGroupOwnerListener(IWifiDirectGroupOwnerListener& listener)
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectGroupOwnerEvent != null, E_SYSTEM, "The event instance has not been constructed yet.");
}
result
-_WifiDirectDeviceImpl::RemoveWifiDirectGroupClientListener(IWifiDirectGroupClientListener &listener)
+_WifiDirectDeviceImpl::RemoveWifiDirectGroupClientListener(IWifiDirectGroupClientListener& listener)
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectGroupClientEvent != null, E_SYSTEM, "The event instance has not been constructed yet.");
result
_WifiDirectDeviceImpl::Activate(void)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- __stateMutex.Acquire();
- switch (__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED:
- r = __pWifiDirectSystemAdapter->Activate();
- if (r == E_SUCCESS)
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATING;
- }
- break;
- case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATING:
- r = E_IN_PROGRESS;
- break;
- default:
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
- r = E_INVALID_OPERATION;
- break;
- }
- (void)__stateMutex.Release();
+ __stateMutex.Acquire();
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED:
+ r = __pWifiDirectSystemAdapter->Activate();
+ if (r == E_SUCCESS)
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATING;
+ }
+ break;
- if (IsFailed(r))
- {
- SysLogException(NID_NET_WIFI, r, "[%s] exception occurred on activating Wi-Fi Direct.", GetErrorMessage(r));
- }
+ case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATING:
+ r = E_IN_PROGRESS;
+ break;
+
+ default:
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
+ r = E_INVALID_OPERATION;
+ break;
+ }
+ (void) __stateMutex.Release();
+
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "[%s] exception occurred on activating Wi-Fi Direct.", GetErrorMessage(r));
- return r;
+ return r;
}
bool
result
_WifiDirectDeviceImpl::Deactivate(void)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- __stateMutex.Acquire();
- switch (__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED:
- case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATING:
- r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
- break;
- case WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATING:
- r = E_IN_PROGRESS;
- break;
- default:
- r = __pWifiDirectSystemAdapter->Deactivate();
- if (r == E_SUCCESS)
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATING;
- }
- break;
- }
- __stateMutex.Release();
+ __stateMutex.Acquire();
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED:
+ case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATING:
+ r = E_INVALID_OPERATION;
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
+ break;
- if (IsFailed(r))
- {
- SysLogException(NID_NET_WIFI, r, "[%s] exception occurred on deactivating Wi-Fi Direct.", GetErrorMessage(r));
- }
+ case WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATING:
+ r = E_IN_PROGRESS;
+ break;
+
+ default:
+ r = __pWifiDirectSystemAdapter->Deactivate();
+ if (r == E_SUCCESS)
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATING;
+ }
+ break;
+ }
+ __stateMutex.Release();
- return r;
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "[%s] exception occurred on deactivating Wi-Fi Direct.", GetErrorMessage(r));
+
+ return r;
}
WifiDirectGroupInfo*
if (pWifiDirectGroupInfo == null)
{
- r = GetLastResult();
- r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
+ r = GetLastResult();
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
- SetLastResult(r);
- SysLogException(NID_NET_WIFI, r, "[%s] Failed to acquire a group setting information.", GetErrorMessage(r));
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
+ SetLastResult(r);
+ SysLogException(NID_NET_WIFI, r, "[%s] Failed to acquire a group setting information.", GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
}
return pWifiDirectGroupInfo;
WifiDirectDeviceInfo*
_WifiDirectDeviceImpl::GetLocalDeviceInfoN(void) const
{
- return __pWifiDirectSystemAdapter->GetLocalDeviceInfoN();
+ return __pWifiDirectSystemAdapter->GetLocalDeviceInfoN();
}
WifiWpsConfigurationMode
}
result
-_WifiDirectDeviceImpl::SetLocalDeviceName(const String &name)
+_WifiDirectDeviceImpl::SetLocalDeviceName(const String& name)
{
result r = E_SUCCESS;
int nameLength = name.GetLength();
SysTryReturnResult(NID_NET_WIFI, nameLength > 0 && nameLength <= MAX_DEVICE_NAME_LENGTH, E_INVALID_ARG,
- "The argument is invalid. The length of name is %d.", nameLength);
+ "The argument is invalid. The length of name is %d.", nameLength);
switch (__deviceState)
- {
+ {
case WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED:
r = __pWifiDirectSystemAdapter->SetLocalDeviceName(name);
break;
+
default:
r = E_INVALID_OPERATION;
SysLogException(NID_NET_WIFI, E_INVALID_OPERATION, "[E_INVALID_OPERATION] The operation is not allowed in this state.");
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
break;
- }
+ }
return r;
}
result
_WifiDirectDeviceImpl::SetWpsConfigurationModePreference(WifiWpsConfigurationMode mode)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
switch (__deviceState)
{
case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
r = __pWifiDirectSystemAdapter->SetWpsConfigurationModePreference(mode);
break;
+
default:
r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "[%s] The current state is %s", GetErrorMessage(r), GetStringOfCurrentState());
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s", GetErrorMessage(r), GetStringOfDeviceState());
break;
}
}
result
-_WifiDirectDeviceImpl::CreateGroup(const WifiDirectGroupInfo *pWifiDirectGroupInfo,
- const WifiDirectDeviceInfo *pWifiDirectRemoteDeviceInfo)
+_WifiDirectDeviceImpl::CreateGroup(const WifiDirectGroupInfo* pWifiDirectGroupInfo,
+ const WifiDirectDeviceInfo* pWifiDirectRemoteDeviceInfo)
{
SysTryReturnResult(NID_NET_WIFI, !(pWifiDirectGroupInfo != null
- && pWifiDirectGroupInfo->GetAutonomousGroupOwnerMode() == true
- && pWifiDirectRemoteDeviceInfo != null), E_INVALID_OPERATION,
- "The operation does not allowed to create an autonomous group with a specified remote device.");
+ && pWifiDirectGroupInfo->GetAutonomousGroupOwnerMode() == true
+ && pWifiDirectRemoteDeviceInfo != null), E_INVALID_OPERATION,
+ "The operation does not allowed to create an autonomous group with a specified remote device.");
result r = E_SUCCESS;
__deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING;
}
break;
+
case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
r = E_IN_PROGRESS;
break;
+
default:
r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
break;
}
- __stateMutex.Release();
+ __stateMutex.Release();
return r;
}
{
result r = E_SUCCESS;
- __stateMutex.Acquire();
+ __stateMutex.Acquire();
switch (__deviceState)
{
case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
__deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CONNECT_CANCELLING;
}
break;
+
case WIFI_DIRECT_DEVICE_INTERNAL_CONNECT_CANCELLING:
r = E_IN_PROGRESS;
break;
+
default:
r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
break;
}
- __stateMutex.Release();
+ __stateMutex.Release();
return r;
}
result r = E_SUCCESS;
SysTryReturnResult(NID_NET_WIFI, __scanState != WIFI_DIRECT_SCAN_INTERNAL_SCANNING, E_IN_PROGRESS,
- "The scanning process is in progress.");
+ "The scanning process is in progress.");
- __stateMutex.Acquire();
- switch (__deviceState)
+ __stateMutex.Acquire();
+ switch (__deviceState)
{
- case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
- if (__scanState == WIFI_DIRECT_SCAN_INTERNAL_IDLE)
- {
- r = __pWifiDirectSystemAdapter->Scan();
- if (r == E_SUCCESS)
- {
- __scanState = WIFI_DIRECT_SCAN_INTERNAL_SCANNING;
- }
- }
- else
- {
- r = E_INVALID_OPERATION;
- }
- break;
- default:
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
- r = E_INVALID_OPERATION;
- break;
+ case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
+ if (__scanState == WIFI_DIRECT_SCAN_INTERNAL_IDLE)
+ {
+ r = __pWifiDirectSystemAdapter->Scan();
+ if (r == E_SUCCESS)
+ {
+ __scanState = WIFI_DIRECT_SCAN_INTERNAL_SCANNING;
+ }
+ }
+ else
+ {
+ r = E_INVALID_OPERATION;
+ }
+ break;
+
+ default:
+ r = E_INVALID_OPERATION;
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
+ break;
}
- __stateMutex.Release();
+ __stateMutex.Release();
return r;
}
{
result r = E_SUCCESS;
- __stateMutex.Acquire();
+ __stateMutex.Acquire();
switch (__scanState)
{
case WIFI_DIRECT_SCAN_INTERNAL_SCANNING:
__scanState = WIFI_DIRECT_SCAN_INTERNAL_CANCELLING;
}
break;
+
case WIFI_DIRECT_SCAN_INTERNAL_CANCELLING:
r = E_IN_PROGRESS;
break;
+
default:
r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
break;
}
- __stateMutex.Release();
+ __stateMutex.Release();
return r;
}
result
-_WifiDirectDeviceImpl::Associate(const WifiDirectDeviceInfo &wifiDirectGroupOwnerDeviceInfo)
+_WifiDirectDeviceImpl::Associate(const WifiDirectDeviceInfo& wifiDirectGroupOwnerDeviceInfo)
{
result r = E_SUCCESS;
- __stateMutex.Acquire();
+ __stateMutex.Acquire();
switch (__deviceState)
- {
+ {
case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
if (__scanState == WIFI_DIRECT_SCAN_INTERNAL_IDLE)
{
r = __pWifiDirectSystemAdapter->Associate(wifiDirectGroupOwnerDeviceInfo);
}
else
- {
- r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "Discovery process is in progress.");
- }
+ {
+ r = E_INVALID_OPERATION;
+ SysLog(NID_NET_WIFI, "Discovery process is in progress.");
+ }
- if (!IsFailed(r))
+ if (r == E_SUCCESS)
{
__deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING;
}
break;
+
case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
r = E_IN_PROGRESS;
break;
+
default:
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
r = E_INVALID_OPERATION;
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
break;
- }
- __stateMutex.Release();
+ }
+ __stateMutex.Release();
return r;
}
case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
pWifiDirectGroupMember = _WifiDirectGroupOwnerImpl::GetWifiDirectGroupOwnerInstanceN(__groupOwnerImpl);
break;
+
case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
pWifiDirectGroupMember = _WifiDirectGroupClientImpl::GetWifiDirectGroupClientInstanceN(__groupClientImpl);
break;
+
default:
- // During Cancel, Delete, and Disassociate operation, the member instance would be meaningless. - Scott.Cho
+ // During Cancel, Delete, and Disassociate operation, the member instance would be meaningless.
r = E_INVALID_OPERATION;
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
break;
}
result
_WifiDirectDeviceImpl::Connect(const WifiDirectDeviceInfo& remoteDeviceInfo)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- __stateMutex.Acquire();
- switch(__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
- r = E_IN_PROGRESS;
- break;
- case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
- if (__scanState == WIFI_DIRECT_SCAN_INTERNAL_IDLE)
- {
- r = __pWifiDirectSystemAdapter->Connect(remoteDeviceInfo);
- }
- else
- {
- r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "Discovery process is in progress.");
- }
-
- if (!IsFailed(r))
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING;
- }
- break;
- default:
- r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
- break;
- }
- __stateMutex.Release();
+ __stateMutex.Acquire();
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
+ r = E_IN_PROGRESS;
+ break;
+
+ case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
+ if (__scanState == WIFI_DIRECT_SCAN_INTERNAL_IDLE)
+ {
+ r = __pWifiDirectSystemAdapter->Connect(remoteDeviceInfo);
+ }
+ else
+ {
+ r = E_INVALID_OPERATION;
+ SysLog(NID_NET_WIFI, "Discovery process is in progress.");
+ }
+
+ if (r == E_SUCCESS)
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING;
+ }
+ break;
+
+ default:
+ r = E_INVALID_OPERATION;
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
+ break;
+ }
+ __stateMutex.Release();
- r = TransExceptionsExclusive(r, E_SYSTEM, E_IN_PROGRESS, E_INVALID_OPERATION, E_OUT_OF_MEMORY);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_IN_PROGRESS, E_INVALID_OPERATION, E_OUT_OF_MEMORY);
- return r;
+ return r;
}
result
_WifiDirectDeviceImpl::CancelConnect(void)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- __stateMutex.Acquire();
- switch(__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_CONNECT_CANCELLING:
- r = E_IN_PROGRESS;
- break;
- case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
- r = __pWifiDirectSystemAdapter->CancelConnect();
- if (r == E_SUCCESS)
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CONNECT_CANCELLING;
- }
- break;
- default:
- r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
- break;
- }
- __stateMutex.Release();
+ __stateMutex.Acquire();
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_CONNECT_CANCELLING:
+ r = E_IN_PROGRESS;
+ break;
+
+ case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
+ r = __pWifiDirectSystemAdapter->CancelConnect();
+ if (r == E_SUCCESS)
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CONNECT_CANCELLING;
+ }
+ break;
+
+ default:
+ r = E_INVALID_OPERATION;
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
+ break;
+ }
+ __stateMutex.Release();
- r = TransExceptionsExclusive(r, E_SYSTEM, E_IN_PROGRESS, E_INVALID_OPERATION);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_IN_PROGRESS, E_INVALID_OPERATION);
- return r;
+ return r;
}
result
_WifiDirectDeviceImpl::CreateAutonomousGroup(void)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- __stateMutex.Acquire();
- switch(__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
- r = __pWifiDirectSystemAdapter->CreateAutonomousGroup();
- if (r == E_SUCCESS)
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_GROUP_CREATING;
- }
- break;
- default:
- r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
- break;
- }
- __stateMutex.Release();
+ __stateMutex.Acquire();
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
+ r = __pWifiDirectSystemAdapter->CreateAutonomousGroup();
+ if (r == E_SUCCESS)
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_GROUP_CREATING;
+ }
+ break;
+
+ default:
+ r = E_INVALID_OPERATION;
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
+ break;
+ }
+ __stateMutex.Release();
- r = TransExceptionsExclusive(r, E_SYSTEM, E_INVALID_OPERATION);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_INVALID_OPERATION);
- return r;
+ return r;
}
result
_WifiDirectDeviceImpl::SetGroupSettingInfo(const WifiDirectGroupInfo& groupConfigurationInfo)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- switch(__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED:
- case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATING:
- case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
- r = __pWifiDirectSystemAdapter->SetGroupSettingInfo(groupConfigurationInfo);
- break;
- default:
- r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
- break;
- }
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED:
+ case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATING:
+ case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
+ r = __pWifiDirectSystemAdapter->SetGroupSettingInfo(groupConfigurationInfo);
+ break;
+
+ default:
+ r = E_INVALID_OPERATION;
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
+ break;
+ }
- return r;
+ return r;
}
result
_WifiDirectDeviceImpl::Disconnect(const WifiDirectDeviceInfo& remoteDeviceInfo)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- __stateMutex.Acquire();
- switch(__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
- r = __pWifiDirectSystemAdapter->Disconnect(remoteDeviceInfo);
- if ( r == E_SUCCESS )
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING;
- }
- break;
- case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
- r = E_IN_PROGRESS;
- break;
- default:
- r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
- break;
- }
- __stateMutex.Release();
+ __stateMutex.Acquire();
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
+ r = __pWifiDirectSystemAdapter->Disconnect(remoteDeviceInfo);
+ if (r == E_SUCCESS)
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING;
+ }
+ break;
+
+ case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
+ r = E_IN_PROGRESS;
+ break;
+
+ default:
+ r = E_INVALID_OPERATION;
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
+ break;
+ }
+ __stateMutex.Release();
- r = TransExceptionsExclusive(r, E_SYSTEM, E_IN_PROGRESS, E_INVALID_OPERATION, E_OUT_OF_MEMORY);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_IN_PROGRESS, E_INVALID_OPERATION, E_OUT_OF_MEMORY);
- return r;
+ return r;
}
result
_WifiDirectDeviceImpl::LeaveGroup(void)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
+
+ __stateMutex.Acquire();
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
+ r = __pWifiDirectSystemAdapter->LeaveGroup();
+ if (r == E_SUCCESS)
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_LEAVING;
+ }
+ break;
- __stateMutex.Acquire();
- switch(__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
- r = __pWifiDirectSystemAdapter->LeaveGroup();
- if ( r == E_SUCCESS )
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_LEAVING;
- }
- break;
- default:
- r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
- break;
- }
- __stateMutex.Release();
+ default:
+ r = E_INVALID_OPERATION;
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
+ break;
+ }
+ __stateMutex.Release();
- r = TransExceptionsExclusive(r, E_SYSTEM, E_IN_PROGRESS, E_INVALID_OPERATION);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_IN_PROGRESS, E_INVALID_OPERATION);
- return r;
+ return r;
}
WifiDirectDeviceInfo*
_WifiDirectDeviceImpl::GetGroupOwnerInfoN(void) const
{
- ClearLastResult();
+ ClearLastResult();
- WifiDirectDeviceInfo* pGroupOwnerInfo = null;
+ WifiDirectDeviceInfo* pGroupOwnerInfo = null;
- switch(__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
- case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
- pGroupOwnerInfo = __pWifiDirectSystemAdapter->GetGroupOwnerInfoN();
- break;
- default:
- SetLastResult(E_INVALID_OPERATION);
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(GetLastResult()), GetStringOfCurrentState());
- break;
- }
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
+ case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
+ pGroupOwnerInfo = __pWifiDirectSystemAdapter->GetGroupOwnerInfoN();
+ break;
+
+ default:
+ SetLastResult(E_INVALID_OPERATION);
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(GetLastResult()), GetStringOfDeviceState());
+ break;
+ }
- return pGroupOwnerInfo;
+ return pGroupOwnerInfo;
}
IList*
_WifiDirectDeviceImpl::GetGroupClientInfoListN(void) const
{
- ClearLastResult();
+ ClearLastResult();
- IList* pClientList = null;
+ IList* pClientList = null;
- switch(__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
- case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
- pClientList = __pWifiDirectSystemAdapter->GetGroupClientInfoListN();
- break;
- default:
- SetLastResult(E_INVALID_OPERATION);
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(GetLastResult()), GetStringOfCurrentState());
- break;
- }
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
+ case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
+ pClientList = __pWifiDirectSystemAdapter->GetGroupClientInfoListN();
+ break;
- return pClientList;
+ default:
+ SetLastResult(E_INVALID_OPERATION);
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(GetLastResult()), GetStringOfDeviceState());
+ break;
+ }
+
+ return pClientList;
}
WifiRadioChannel
_WifiDirectDeviceImpl::GetOperatingChannel(void) const
{
- WifiRadioChannel channel = WIFI_RADIO_CHANNEL_UNKNOWN;
+ WifiRadioChannel channel = WIFI_RADIO_CHANNEL_UNKNOWN;
- switch(__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
- case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
- channel = __pWifiDirectSystemAdapter->GetOperatingChannel();
- break;
- default:
- SysLog(NID_NET_WIFI, "The current state is %s.", GetStringOfCurrentState());
- break;
- }
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
+ case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
+ channel = __pWifiDirectSystemAdapter->GetOperatingChannel();
+ break;
- return channel;
-}
+ default:
+ SysLog(NID_NET_WIFI, "The current state is %s.", GetStringOfDeviceState());
+ break;
+ }
-//////////////////////////////////////////////////////////////////////////
-// WifiDirectDevice Event Listener
+ return channel;
+}
void
_WifiDirectDeviceImpl::OnWifiDirectDeviceActivated(const _WifiDirectEventArg& arg, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
bool isFired = false;
- __stateMutex.Acquire();
+ __stateMutex.Acquire();
switch (__deviceState)
{
case WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED:
isFired = true;
}
break;
+
case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATING:
isFired = true;
break;
+
default:
break;
}
- if (r == E_SUCCESS)
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
- }
- else
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED;
- }
+ UpdateCurrentState(WIFI_DIRECT_CALL_BACK_ACTIVATED, r);
- __stateMutex.Release();
+ __stateMutex.Release();
if (isFired)
{
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
}
- SysLog(NID_NET_WIFI, "[ACTIVATED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
void
_WifiDirectDeviceImpl::OnWifiDirectDeviceDeactivated(const _WifiDirectEventArg& arg, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
bool isFired = false;
- WifiDirectDeviceInfo* pLocalDeviceInfo = null;
- WifiDirectGroupMemberType groupMemberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE;
- __stateMutex.Acquire();
+ __stateMutex.Acquire();
switch (__deviceState)
{
case WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATING:
isFired = true;
break;
+
default:
if (r == E_SUCCESS)
{
if (r == E_SUCCESS)
{
__scanState = WIFI_DIRECT_SCAN_INTERNAL_IDLE;
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED;
__groupOwnerImpl.CleanUpServerSocket();
__groupClientImpl.CleanUpServerSocket();
}
- else
- {
- if (__deviceState == WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATING)
- {
- pLocalDeviceInfo = __pWifiDirectSystemAdapter->GetLocalDeviceInfoN();
- r = GetLastResult();
+ UpdateCurrentState(WIFI_DIRECT_CALL_BACK_DEACTIVATED, r);
- if (pLocalDeviceInfo != null)
- {
- groupMemberType = pLocalDeviceInfo->GetGroupMemberType();
- delete pLocalDeviceInfo;
-
- switch (groupMemberType)
- {
- case WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE:
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
- break;
- case WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER:
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER;
- break;
- case WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT:
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT;
- break;
- }
- }
- else
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
- SysLog(NID_NET_WIFI, "[E_SYSTEM] Failed to acquire information of local device");
- }
- }
- }
- __stateMutex.Release();
+ __stateMutex.Release();
if (isFired)
{
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
}
- SysLog(NID_NET_WIFI, "[DEACTIVATED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
void
_WifiDirectDeviceImpl::OnWifiDirectGroupCreated(const _WifiDirectEventArg& arg,
- WifiDirectGroupMemberType wifiDirectMemberType, result r)
+ WifiDirectGroupMemberType wifiDirectMemberType, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
bool isFired = false;
- __stateMutex.Acquire();
+ __stateMutex.Acquire();
// check the state, in case of (ACTIVATED or CREATED) and E_SUCCESS: Fire, CREATING: Fire.
switch (__deviceState)
{
isFired = true;
}
break;
+
case WIFI_DIRECT_DEVICE_INTERNAL_GROUP_CREATING:
case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
- case WIFI_DIRECT_DEVICE_INTERNAL_CONNECT_CANCELLING:
+ case WIFI_DIRECT_DEVICE_INTERNAL_CONNECT_CANCELLING:
isFired = true;
break;
+
default:
- SysLog(NID_NET_WIFI, "[%s] The current state is %s", GetErrorMessage(r), GetStringOfCurrentState());
- break;
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s", GetErrorMessage(r), GetStringOfDeviceState());
+ break;
}
- __stateMutex.Release();
+ __stateMutex.Release();
if (isFired)
{
- WifiDirectGroupMember* pWifiDirectGroupMember = null;
+ WifiDirectGroupMember* pWifiDirectGroupMember = null;
- if (wifiDirectMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER)
- {
- pWifiDirectGroupMember = _WifiDirectGroupOwnerImpl::GetWifiDirectGroupOwnerInstanceN(__groupOwnerImpl);
+ if (wifiDirectMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER)
+ {
+ pWifiDirectGroupMember = _WifiDirectGroupOwnerImpl::GetWifiDirectGroupOwnerInstanceN(__groupOwnerImpl);
- }
- else if(wifiDirectMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT)
- {
- pWifiDirectGroupMember = _WifiDirectGroupClientImpl::GetWifiDirectGroupClientInstanceN(__groupClientImpl);
- }
+ }
+ else if (wifiDirectMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT)
+ {
+ pWifiDirectGroupMember = _WifiDirectGroupClientImpl::GetWifiDirectGroupClientInstanceN(__groupClientImpl);
+ }
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- pNewArg->SetGroupMember(pWifiDirectGroupMember);
+ pNewArg->SetGroupMember(pWifiDirectGroupMember);
- __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
+ __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
}
- SysLog(NID_NET_WIFI, "[CREATED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
void
}
}
+
void
_WifiDirectDeviceImpl::OnWifiDirectScanCompleted(const _WifiDirectEventArg& arg, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
+ ;
bool isFired = false;
if (isFired)
{
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
}
- SysLog(NID_NET_WIFI, "[SCANCOMPLETED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
void
_WifiDirectDeviceImpl::OnWifiDirectAssociationCompleted(const _WifiDirectEventArg& arg, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
+ ;
bool isFired = false;
- __stateMutex.Acquire();
- switch (__deviceState)
- {
+ __stateMutex.Acquire();
+ switch (__deviceState)
+ {
case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
if (r == E_SUCCESS)
{
isFired = true;
}
break;
+
case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
isFired = true;
break;
+
default:
- break;
- }
- __stateMutex.Release();
+ break;
+ }
+ __stateMutex.Release();
if (isFired)
{
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
}
- SysLog(NID_NET_WIFI, "[ASSOCIATED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
void
_WifiDirectDeviceImpl::OnWifiDirectConnected(const _WifiDirectEventArg& arg, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
- bool isFired = false;
+ bool isFired = false;
- __stateMutex.Acquire();
- switch (__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
- if (r == E_SUCCESS)
- {
- isFired = true;
- }
- break;
- case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
- case WIFI_DIRECT_DEVICE_INTERNAL_CONNECT_CANCELLING:
- isFired = true;
- break;
- default:
- SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfCurrentState());
- break;
- }
+ __stateMutex.Acquire();
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
+ if (r == E_SUCCESS)
+ {
+ isFired = true;
+ }
+ break;
- WifiDirectGroupMemberType wifiDirectMemberType = __pWifiDirectSystemAdapter->GetCurrentMemberType();
- if (r == E_SUCCESS && wifiDirectMemberType != WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- {
- if (wifiDirectMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER)
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER;
- }
- else if (wifiDirectMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT)
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT;
- }
- }
- else
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
- }
+ case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
+ case WIFI_DIRECT_DEVICE_INTERNAL_CONNECT_CANCELLING:
+ isFired = true;
+ break;
- __stateMutex.Release();
+ default:
+ SysLog(NID_NET_WIFI, "[%s] The current state is %s.", GetErrorMessage(r), GetStringOfDeviceState());
+ break;
+ }
- if (isFired)
- {
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
- }
+ UpdateCurrentState(WIFI_DIRECT_CALL_BACK_CONNECTED, r);
- SysLog(NID_NET_WIFI, "[CONNECTED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ __stateMutex.Release();
+
+ if (isFired)
+ {
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
+ }
+
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
void
_WifiDirectDeviceImpl::OnWifiDirectDisconnected(const _WifiDirectEventArg& arg, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
- bool isFired = false;
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
- __stateMutex.Acquire();
+ bool isFired = false;
- switch (__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
- if (r == E_SUCCESS)
- {
- isFired = true;
- }
- break;
- case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
- isFired = true;
- break;
- default:
- break;
- }
+ __stateMutex.Acquire();
- WifiDirectGroupMemberType wifiDirectMemberType = __pWifiDirectSystemAdapter->GetCurrentMemberType();
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
+ if (r == E_SUCCESS)
+ {
+ isFired = true;
+ }
+ break;
- if (wifiDirectMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER)
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER;
- }
- else if(wifiDirectMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT)
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT;
- }
- else
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
- }
- __stateMutex.Release();
+ case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
+ isFired = true;
+ break;
- if (isFired)
- {
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
- }
+ default:
+ break;
+ }
+
+ UpdateCurrentState(WIFI_DIRECT_CALL_BACK_DISCONNECTED, r);
+
+ __stateMutex.Release();
+
+ if (isFired)
+ {
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
+ }
- SysLog(NID_NET_WIFI, "[DISCONNECTED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
void
_WifiDirectDeviceImpl::OnWifiDirectGroupLeft(const _WifiDirectEventArg& arg, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
- bool isFired = false;
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
- __stateMutex.Acquire();
+ bool isFired = false;
- switch (__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
- case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
- if (r == E_SUCCESS)
- {
- isFired = true;
- }
- break;
- case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
- case WIFI_DIRECT_DEVICE_INTERNAL_LEAVING:
- isFired = true;
- break;
- default:
- break;
- }
+ __stateMutex.Acquire();
- WifiDirectGroupMemberType wifiDirectMemberType = __pWifiDirectSystemAdapter->GetCurrentMemberType();
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
+ case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
+ if (r == E_SUCCESS)
+ {
+ isFired = true;
+ }
+ break;
- if (wifiDirectMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER)
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER;
- }
- else if(wifiDirectMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT)
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT;
- }
- else
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
- }
- __stateMutex.Release();
+ case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
+ case WIFI_DIRECT_DEVICE_INTERNAL_LEAVING:
+ isFired = true;
+ break;
- if (isFired)
- {
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
- }
+ default:
+ break;
+ }
+
+ UpdateCurrentState(WIFI_DIRECT_CALL_BACK_GROUP_LEFT, r);
+
+ __stateMutex.Release();
+
+ if (isFired)
+ {
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
+ }
- SysLog(NID_NET_WIFI, "[LEFT_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
void
_WifiDirectDeviceImpl::OnWifiDirectAutonomousGroupCreated(const _WifiDirectEventArg& arg, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
- bool isFired = false;
+ bool isFired = false;
- __stateMutex.Acquire();
- switch (__deviceState)
- {
- case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
- if (r == E_SUCCESS)
- {
- isFired = true;
- }
- break;
- case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
- case WIFI_DIRECT_DEVICE_INTERNAL_GROUP_CREATING:
- isFired = true;
- break;
- default:
- SysLog(NID_NET_WIFI, "[%s] The current state is %s", GetErrorMessage(r), GetStringOfCurrentState());
- break;
- }
+ __stateMutex.Acquire();
+ switch (__deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED:
+ if (r == E_SUCCESS)
+ {
+ isFired = true;
+ }
+ break;
- if (r == E_SUCCESS )
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER;
- }
- else
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
- }
+ case WIFI_DIRECT_DEVICE_INTERNAL_CONNECTING:
+ case WIFI_DIRECT_DEVICE_INTERNAL_GROUP_CREATING:
+ isFired = true;
+ break;
- __stateMutex.Release();
+ default:
+ break;
+ }
- if (isFired)
- {
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
- }
+ UpdateCurrentState(WIFI_DIRECT_CALL_BACK_AUTO_GROUP_CREATED, r);
+
+ __stateMutex.Release();
+
+ if (isFired)
+ {
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectDeviceEvent->FireAsync(*pNewArg);
+ }
- SysLog(NID_NET_WIFI, "[AUTOGROUP_CREATED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
-//////////////////////////////////////////////////////////////////////////
-// WifiDirectGroupOwner Event Listener
void
_WifiDirectDeviceImpl::OnWifiDirectClientAssociated(const _WifiDirectEventArg& arg)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s]", GetStringOfCurrentState(), GetStringOfScanState());
+ SysLog(NID_NET_WIFI, ">>> %ls", GetStringOfAllCurrentState().GetPointer());
+
bool isFired = false;
if (__deviceState == WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER
- || __deviceState == WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING)
+ || __deviceState == WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING)
{
isFired = true;
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
__pWifiDirectGroupOwnerEvent->FireAsync(*pNewArg);
}
- SysLog(NID_NET_WIFI, "[CLIENT_ASSOCIATED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s]", GetStringOfCurrentState(), GetStringOfScanState());
+
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
void
_WifiDirectDeviceImpl::OnWifiDirectClientDisassociated(const _WifiDirectEventArg& arg,
- WifiDirectAssociationTerminationReason reason)
+ WifiDirectAssociationTerminationReason reason)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s]", GetStringOfCurrentState(), GetStringOfScanState());
+ SysLog(NID_NET_WIFI, ">>> %ls", GetStringOfAllCurrentState().GetPointer());
+
bool isFired = false;
if (__deviceState == WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER
- || __deviceState == WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING)
+ || __deviceState == WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING)
{
isFired = true;
__groupOwnerImpl.ResetDisconnect();
}
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectGroupOwnerEvent->FireAsync(*pNewArg);
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectGroupOwnerEvent->FireAsync(*pNewArg);
}
- SysLog(NID_NET_WIFI, "[CLIENT_DISASSOCIATED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s]", GetStringOfCurrentState(), GetStringOfScanState());
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
void
_WifiDirectDeviceImpl::OnWifiDirectGroupDestroyed(const _WifiDirectEventArg& arg, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
+
bool isFired = false;
__stateMutex.Acquire();
switch (__deviceState)
- {
+ {
case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER:
if (r == E_SUCCESS)
{
isFired = true;
}
break;
+
case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
case WIFI_DIRECT_DEVICE_INTERNAL_LEAVING:
isFired = true;
break;
+
default:
- break;
- }
+ break;
+ }
if (r == E_SUCCESS)
{
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
__groupOwnerImpl.CleanUpServerSocket();
__groupClientImpl.CleanUpServerSocket();
}
- else
- {
- __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER;
- }
__stateMutex.Release();
if (isFired)
{
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectGroupOwnerEvent->FireAsync(*pNewArg);
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectGroupOwnerEvent->FireAsync(*pNewArg);
}
- SysLog(NID_NET_WIFI, "[GROUPDELETED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
-
-
-//////////////////////////////////////////////////////////////////////////
-// WifiDirectGroupClient Event Listener
void
_WifiDirectDeviceImpl::OnWifiDirectAssociationTerminated(const _WifiDirectEventArg& arg, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
+
bool isFired = false;
- __stateMutex.Acquire();
- switch (__deviceState)
- {
+ __stateMutex.Acquire();
+ switch (__deviceState)
+ {
case WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT:
if (r == E_SUCCESS)
{
isFired = true;
}
break;
+
case WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING:
case WIFI_DIRECT_DEVICE_INTERNAL_LEAVING:
isFired = true;
break;
+
default:
- break;
- }
+ break;
+ }
if (r == E_SUCCESS)
{
__groupClientImpl.CleanUpServerSocket();
}
- __stateMutex.Release();
+ __stateMutex.Release();
if (isFired)
{
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectGroupClientEvent->FireAsync(*pNewArg);
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectGroupClientEvent->FireAsync(*pNewArg);
}
- SysLog(NID_NET_WIFI, "[DISASSOCIATED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
-
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
void
_WifiDirectDeviceImpl::OnWifiDirectGroupOwnerInfoReceived(const _WifiDirectEventArg& arg, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
bool isFired = false;
{
isFired = true;
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectGroupClientEvent->FireAsync(*pNewArg);
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectGroupClientEvent->FireAsync(*pNewArg);
}
- SysLog(NID_NET_WIFI, "[GROUPINFORESPONDED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
void
_WifiDirectDeviceImpl::OnWifiDirectAllGroupMemberInfoReceivedN(const _WifiDirectEventArg& arg, result r)
{
- SysLog(NID_NET_WIFI, "Enter, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, ">>> %ls result : %s", GetStringOfAllCurrentState().GetPointer(), GetErrorMessage(r));
bool isFired = false;
{
isFired = true;
- _WifiDirectEventArg* pNewArg = new (std::nothrow)_WifiDirectEventArg(arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectGroupClientEvent->FireAsync(*pNewArg);
+ _WifiDirectEventArg* pNewArg = new (std::nothrow) _WifiDirectEventArg(arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pNewArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pWifiDirectGroupClientEvent->FireAsync(*pNewArg);
}
- SysLog(NID_NET_WIFI, "[GROUPINFORESPONDED_Event:%s]", isFired ? "Fired" : "NotFired");
- SysLog(NID_NET_WIFI, "Exit, [DeviceState:%s], [ScanState:%s], [result:%s]",
- GetStringOfCurrentState(), GetStringOfScanState(), GetErrorMessage(r));
+ SysLog(NID_NET_WIFI, "<<< %ls - %s", GetStringOfAllCurrentState().GetPointer(), isFired ? "Fired" : "NotFired");
}
-//////////////////////////////////////////////////////////////////////////
-// Internal Function
int
_WifiDirectDeviceImpl::AddRef(void)
{
_WifiDirectDeviceState
_WifiDirectDeviceImpl::GetWifiDirectDeviceCurrentState(void) const
{
- SysLog(NID_NET_WIFI, "[DeviceState:%s], [ScanState:%s]", GetStringOfCurrentState(), GetStringOfScanState());
return __deviceState;
}
void
_WifiDirectDeviceImpl::SetWifiDirectDeviceCurrentState(_WifiDirectDeviceState currentState)
{
- SysLog(NID_NET_WIFI, "[DeviceState:%s], [ScanState:%s]", GetStringOfCurrentState(), GetStringOfScanState());
__deviceState = currentState;
}
_WifiDirectGroupOwnerEvent*
_WifiDirectDeviceImpl::GetWifiDirectGroupOwnerEvent() const
{
- return __pWifiDirectGroupOwnerEvent.get();
+ return __pWifiDirectGroupOwnerEvent.get();
}
_WifiDirectGroupClientEvent*
_WifiDirectDeviceImpl::GetWifiDirectGroupClientEvent() const
{
- return __pWifiDirectGroupClientEvent.get();
+ return __pWifiDirectGroupClientEvent.get();
}
const char*
-_WifiDirectDeviceImpl::GetStringOfCurrentState(void) const
-{
- const char* pStateStr[] = { "DEACTIVATED",
- "ACTIVATING",
- "DEACTIVATING",
- "ACTIVATED",
- "CONNECTING",
- "CONNECT_CANCELLING",
- "CREATED_OWNER",
- "CREATED_CLIENT",
- "DISCONNECTING",
- "LEAVING",
- "GROUP_CREATING" };
+_WifiDirectDeviceImpl::GetStringOfDeviceState(void) const
+{
+ const char* pStateStr[] =
+ {
+ "DEACTIVATED",
+ "ACTIVATING",
+ "DEACTIVATING",
+ "ACTIVATED",
+ "CONNECTING",
+ "CONNECT_CANCELLING",
+ "CREATED_OWNER",
+ "CREATED_CLIENT",
+ "DISCONNECTING",
+ "LEAVING",
+ "GROUP_CREATING"
+ };
return pStateStr[__deviceState];
}
const char*
_WifiDirectDeviceImpl::GetStringOfScanState(void) const
{
- const char* pStateStr[] = { "IDLE",
- "SCANNING",
- "CANCELLING"};
+ const char* pStateStr[] =
+ {
+ "IDLE",
+ "SCANNING",
+ "CANCELLING"
+ };
return pStateStr[__scanState];
}
-_WifiDirectDeviceImpl*
-_WifiDirectDeviceImpl::CreateWifiDirectDeviceImplInstanceN(void)
-{
- _WifiDirectDeviceImpl* pWifiDirectDeviceImpl = null;
- pWifiDirectDeviceImpl = new (std::nothrow) _WifiDirectDeviceImpl();
+String
+_WifiDirectDeviceImpl::GetStringOfAllCurrentState(void) const
+{
+ String currentState;
- SysTryReturn(NID_NET_WIFI, pWifiDirectDeviceImpl != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ (void) currentState.Append("DeviceState : ");
+ (void) currentState.Append(GetStringOfDeviceState());
+ (void) currentState.Append(" | ");
+ (void) currentState.Append("ScanState : ");
+ (void) currentState.Append(GetStringOfScanState());
- return pWifiDirectDeviceImpl;
+ return currentState;
}
-WifiDirectDevice*
-_WifiDirectDeviceImpl::GetWifiDirectDeviceInstanceN(const WifiDirectDeviceInfo* pDeviceInfo)
-{
- result r = E_SUCCESS;
- WifiDirectDevice* pWifiDirectDevice = null;
- pWifiDirectDevice = new (std::nothrow) WifiDirectDevice;
- SysTryCatch(NID_NET_WIFI, pWifiDirectDevice != null, r = E_OUT_OF_MEMORY, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+_WifiDirectDeviceImpl*
+_WifiDirectDeviceImpl::CreateWifiDirectDeviceImplInstanceN(void)
+{
+ _WifiDirectDeviceImpl* pWifiDirectDeviceImpl = null;
- if (pDeviceInfo == null)
- {
- _WifiDirectSystemAdapter* pWifiSystemAdapter = null;
- IList* pWifiDirectDeviceInfoList = null;
- WifiDirectDeviceInfo* pTempDeviceInfo = null;
+ pWifiDirectDeviceImpl = new (std::nothrow) _WifiDirectDeviceImpl();
- pWifiSystemAdapter = _WifiDirectSystemAdapter::GetInstance();
+ SysTryReturn(NID_NET_WIFI, pWifiDirectDeviceImpl != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- SysTryCatch(NID_NET_WIFI, pWifiSystemAdapter != null, , E_SYSTEM,
- "[E_SYSTEM] Failed to acquire the instance of _WifiDirectSystemAdapter.");
+ return pWifiDirectDeviceImpl;
+}
- pWifiDirectDeviceInfoList = pWifiSystemAdapter->GetAllDeviceInfoN();
+WifiDirectDevice*
+_WifiDirectDeviceImpl::GetWifiDirectDeviceInstanceN(const WifiDirectDeviceInfo* pDeviceInfo)
+{
+ result r = E_SUCCESS;
- r = GetLastResult();
+ unique_ptr< WifiDirectDevice > pWifiDirectDevice(new (std::nothrow) WifiDirectDevice);
+ SysTryReturn(NID_NET_WIFI, pWifiDirectDevice != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- SysTryCatch(NID_NET_WIFI, pWifiDirectDeviceInfoList != null, ,r,
- "[%s] Failed to acquire the list of WifiDiectDeviceInfo.", GetErrorMessage(r));
+ if (pDeviceInfo == null)
+ {
+ _WifiDirectSystemAdapter* pWifiSystemAdapter = null;
+ IList* pWifiDirectDeviceInfoList = null;
+ WifiDirectDeviceInfo* pTempDeviceInfo = null;
- // Get the default setting info
- pTempDeviceInfo = static_cast< WifiDirectDeviceInfo* >(pWifiDirectDeviceInfoList->GetAt(0));
+ pWifiSystemAdapter = _WifiDirectSystemAdapter::GetInstance();
+ SysTryReturn(NID_NET_WIFI, pWifiSystemAdapter != null, null, E_SYSTEM,
+ "[E_SYSTEM] Failed to acquire the instance of _WifiDirectSystemAdapter.");
- SysLog(NID_NET_WIFI, "device ID is %d", pTempDeviceInfo->GetDeviceId());
+ pWifiDirectDeviceInfoList = pWifiSystemAdapter->GetAllDeviceInfoN();
- r = pWifiDirectDevice->Construct(pTempDeviceInfo->GetDeviceId());
+ r = GetLastResult();
- // release resource
- pWifiDirectDeviceInfoList->RemoveAll(true);
+ SysTryReturn(NID_NET_WIFI, pWifiDirectDeviceInfoList != null, null, r,
+ "[%s] Failed to acquire the list of WifiDiectDeviceInfo.", GetErrorMessage(r));
- delete pWifiDirectDeviceInfoList;
+ // Get the default setting info
+ pTempDeviceInfo = static_cast< WifiDirectDeviceInfo* >(pWifiDirectDeviceInfoList->GetAt(0));
- }
- else
- {
- r = pWifiDirectDevice->Construct(pDeviceInfo->GetDeviceId());
- }
+ r = pWifiDirectDevice->Construct(pTempDeviceInfo->GetDeviceId());
- SetLastResult(r);
- SysLog(NID_NET_WIFI, "Exit, [result:%s]", GetErrorMessage(r));
- return pWifiDirectDevice;
+ delete pWifiDirectDeviceInfoList;
-CATCH:
- if (pWifiDirectDevice != null)
- {
- delete pWifiDirectDevice;
- }
+ }
+ else
+ {
+ r = pWifiDirectDevice->Construct(pDeviceInfo->GetDeviceId());
+ }
- SysLog(NID_NET_WIFI, "Exit, [result:%s]", GetErrorMessage(r));
- return null;
+ SetLastResult(r);
+ return pWifiDirectDevice.release();
}
WifiDirectDevice*
_WifiDirectDeviceImpl::GetWifiDirectDeviceInstanceWithoutIpServiceN(void)
{
- static const wchar_t* _WIFI_DIRECT = L"http://tizen.org/feature/network.wifi.direct";
- static const int DEFAULT_ID = 0;
+ static const wchar_t* _WIFI_DIRECT = L"http://tizen.org/feature/network.wifi.direct";
+ static const int DEFAULT_ID = 0;
- result r = E_SUCCESS;
- bool isWifiDirectSupported = false;
+ result r = E_SUCCESS;
+ bool isWifiDirectSupported = false;
- r = _SystemInfoImpl::GetSysInfo(_WIFI_DIRECT, isWifiDirectSupported);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS && isWifiDirectSupported == true, null, E_UNSUPPORTED_OPERATION,
- "[E_UNSUPPORTED_OPERATION] No WifiDirectDeviceInfo available since the device don't support the Wi-Fi Direct.");
+ r = _SystemInfoImpl::GetSysInfo(_WIFI_DIRECT, isWifiDirectSupported);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS && isWifiDirectSupported == true, null, E_UNSUPPORTED_OPERATION,
+ "[E_UNSUPPORTED_OPERATION] No WifiDirectDeviceInfo available since the device don't support the Wi-Fi Direct.");
- unique_ptr<WifiDirectDevice> pWifiDirectDevice(new (std::nothrow) WifiDirectDevice);
- SysTryReturn(NID_NET_WIFI, pWifiDirectDevice != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ unique_ptr< WifiDirectDevice > pWifiDirectDevice(new (std::nothrow) WifiDirectDevice);
+ SysTryReturn(NID_NET_WIFI, pWifiDirectDevice != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- unique_ptr<_WifiDirectDeviceImpl> pWifiDirectDeviceImpl(_WifiDirectDeviceImpl::CreateWifiDirectDeviceImplInstanceN());
- SysTryReturn(NID_NET_WIFI, pWifiDirectDeviceImpl != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ unique_ptr< _WifiDirectDeviceImpl > pWifiDirectDeviceImpl(_WifiDirectDeviceImpl::CreateWifiDirectDeviceImplInstanceN());
+ SysTryReturn(NID_NET_WIFI, pWifiDirectDeviceImpl != null, null, GetLastResult(), "[%s] Propagating.", GetErrorMessage(GetLastResult()));
- r = pWifiDirectDeviceImpl->Construct(DEFAULT_ID, false);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ r = pWifiDirectDeviceImpl->Construct(DEFAULT_ID, false);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, GetLastResult(), "[%s] Propagating.", GetErrorMessage(GetLastResult()));
- pWifiDirectDevice->__pWifiDirectDeviceImpl = pWifiDirectDeviceImpl.release();
+ pWifiDirectDevice->__pWifiDirectDeviceImpl = pWifiDirectDeviceImpl.release();
- return pWifiDirectDevice.release();
+ return pWifiDirectDevice.release();
}
IList*
_WifiDirectDeviceImpl::GetAllDeviceInfoN(void)
{
- result r = E_SUCCESS;
-
- _WifiDirectSystemAdapter* pWifiSystemAdapter = null;
- IList* pWifiDirectDeviceInfoList = null;
+ result r = E_SUCCESS;
- pWifiSystemAdapter = _WifiDirectSystemAdapter::GetInstance();
+ _WifiDirectSystemAdapter* pWifiSystemAdapter = null;
+ IList* pWifiDirectDeviceInfoList = null;
- SysTryCatch(NID_NET_WIFI, pWifiSystemAdapter != null, r = E_SYSTEM, E_SYSTEM,
- "[E_SYSTEM] Failed to acquire the instance of _WifiDirectSystemAdapter.");
+ pWifiSystemAdapter = _WifiDirectSystemAdapter::GetInstance();
- pWifiDirectDeviceInfoList = pWifiSystemAdapter->GetAllDeviceInfoN();
- r = GetLastResult();
+ SysTryReturn(NID_NET_WIFI, pWifiSystemAdapter != null, null, E_SYSTEM,
+ "[E_SYSTEM] Failed to acquire the instance of _WifiDirectSystemAdapter.");
- SysTryCatch(NID_NET_WIFI, pWifiDirectDeviceInfoList != null, , r, "[%s] Propagating.", GetErrorMessage(r));
+ pWifiDirectDeviceInfoList = pWifiSystemAdapter->GetAllDeviceInfoN();
+ r = GetLastResult();
+ SysTryReturn(NID_NET_WIFI, pWifiDirectDeviceInfoList != null, null, r,
+ "[%s] Failed to acquire the list of WifiDiectDeviceInfo.", GetErrorMessage(r));
-CATCH:
- SysLog(NID_NET_WIFI, "Exit, [result:%s]", GetErrorMessage(r));
- SetLastResult(r);
- return pWifiDirectDeviceInfoList;
+ return pWifiDirectDeviceInfoList;
}
_WifiDirectDeviceImpl*
_WifiDirectDeviceImpl::GetInstance(WifiDirectDevice& wifiDirectDevice)
{
- return wifiDirectDevice.__pWifiDirectDeviceImpl;
+ return wifiDirectDevice.__pWifiDirectDeviceImpl;
}
const _WifiDirectDeviceImpl*
_WifiDirectDeviceImpl::GetInstance(const WifiDirectDevice& wifiDirectDevice)
{
- return wifiDirectDevice.__pWifiDirectDeviceImpl;
+ return wifiDirectDevice.__pWifiDirectDeviceImpl;
+}
+
+void
+_WifiDirectDeviceImpl::UpdateCurrentState(_CallbackType type, result r)
+{
+ WifiDirectGroupMemberType wifiDirectMemberType = __pWifiDirectSystemAdapter->GetCurrentMemberType();
+
+ switch (type)
+ {
+ case WIFI_DIRECT_CALL_BACK_ACTIVATED:
+ if (r == E_SUCCESS)
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
+ }
+ else
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED;
+ }
+ break;
+
+ case WIFI_DIRECT_CALL_BACK_DEACTIVATED:
+ if (r == E_SUCCESS)
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_DEACTIVATED;
+ }
+ else
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
+ }
+ break;
+
+ case WIFI_DIRECT_CALL_BACK_CONNECTED:
+ case WIFI_DIRECT_CALL_BACK_DISCONNECTED:
+ case WIFI_DIRECT_CALL_BACK_AUTO_GROUP_CREATED:
+ case WIFI_DIRECT_CALL_BACK_GROUP_LEFT:
+ if (wifiDirectMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER)
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER;
+ }
+ else if (wifiDirectMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT)
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT;
+ }
+ else
+ {
+ __deviceState = WIFI_DIRECT_DEVICE_INTERNAL_ACTIVATED;
+ }
+ break;
+
+ default:
+ SysLog(NID_NET_WIFI, "The unknown callback type.");
+ break;
+ }
}
-}}}// Tizen::Net::Wifi
+}}} // Tizen::Net::Wifi
#ifdef __cplusplus
extern "C"
_OSP_EXPORT_ void
_WifiDirectDeviceImpl_DeleteWifiDirectDevice(Tizen::Net::Wifi::WifiDirectDevice* pWifiDirectDevice, Tizen::Net::Wifi::IWifiDirectDeviceListener* pDeviceListener,
- Tizen::Net::Wifi::IWifiDirectGroupOwnerListener* pOwnerListener, Tizen::Net::Wifi::IWifiDirectGroupClientListener* pClientListener)
+ Tizen::Net::Wifi::IWifiDirectGroupOwnerListener* pOwnerListener, Tizen::Net::Wifi::IWifiDirectGroupClientListener* pClientListener)
{
- SysTryReturnVoidResult(NID_NET_WIFI, pWifiDirectDevice != null, E_INVALID_ARG, "[E_INVALID_ARG] WifiDirectDevice is null.");
+ SysTryReturnVoidResult(NID_NET_WIFI, pWifiDirectDevice != null, E_INVALID_ARG, "[E_INVALID_ARG] WifiDirectDevice is null.");
- if (pClientListener != null)
+ if (pClientListener != null)
{
pWifiDirectDevice->RemoveWifiDirectGroupClientListener(*pClientListener);
}
_OSP_EXPORT_ result
_WifiDirectDeviceImpl_Activate(void)
{
- Tizen::Net::Wifi::_WifiDirectSystemAdapter* pWifiDirectSystemAdapter = Tizen::Net::Wifi::_WifiDirectSystemAdapter::GetInstance();
- SysTryReturnResult(NID_NET_WIFI, pWifiDirectSystemAdapter != null, E_OUT_OF_MEMORY, "Failed to get Wi-Fi System adapter instance");
+ Tizen::Net::Wifi::_WifiDirectSystemAdapter* pWifiDirectSystemAdapter = Tizen::Net::Wifi::_WifiDirectSystemAdapter::GetInstance();
+ SysTryReturnResult(NID_NET_WIFI, pWifiDirectSystemAdapter != null, E_OUT_OF_MEMORY, "Failed to get Wi-Fi System adapter instance");
- return pWifiDirectSystemAdapter->Activate();
+ return pWifiDirectSystemAdapter->Activate();
}
_OSP_EXPORT_ result
_WifiDirectDeviceImpl_Deactivate(void)
{
- Tizen::Net::Wifi::_WifiDirectSystemAdapter* pWifiDirectSystemAdapter = Tizen::Net::Wifi::_WifiDirectSystemAdapter::GetInstance();
- SysTryReturnResult(NID_NET_WIFI, pWifiDirectSystemAdapter != null, E_OUT_OF_MEMORY, "Failed to get Wi-Fi System adapter instance");
+ Tizen::Net::Wifi::_WifiDirectSystemAdapter* pWifiDirectSystemAdapter = Tizen::Net::Wifi::_WifiDirectSystemAdapter::GetInstance();
+ SysTryReturnResult(NID_NET_WIFI, pWifiDirectSystemAdapter != null, E_OUT_OF_MEMORY, "Failed to get Wi-Fi System adapter instance");
- return pWifiDirectSystemAdapter->Deactivate();
+ return pWifiDirectSystemAdapter->Deactivate();
}
_OSP_EXPORT_ bool
_WifiDirectDeviceImpl_IsActivated(void)
{
- Tizen::Net::Wifi::_WifiDirectSystemAdapter* pWifiDirectSystemAdapter = Tizen::Net::Wifi::_WifiDirectSystemAdapter::GetInstance();
- SysTryReturnResult(NID_NET_WIFI, pWifiDirectSystemAdapter != null, E_OUT_OF_MEMORY, "Failed to get Wi-Fi System adapter instance");
+ Tizen::Net::Wifi::_WifiDirectSystemAdapter* pWifiDirectSystemAdapter = Tizen::Net::Wifi::_WifiDirectSystemAdapter::GetInstance();
+ SysTryReturnResult(NID_NET_WIFI, pWifiDirectSystemAdapter != null, E_OUT_OF_MEMORY, "Failed to get Wi-Fi System adapter instance");
- return pWifiDirectSystemAdapter->IsActivated();
+ return pWifiDirectSystemAdapter->IsActivated();
}
_OSP_EXPORT_ bool
_WifiDirectDeviceImpl_IsGroupMember(void)
{
- Tizen::Net::Wifi::_WifiDirectSystemAdapter* pWifiDirectSystemAdapter = Tizen::Net::Wifi::_WifiDirectSystemAdapter::GetInstance();
- SysTryReturnResult(NID_NET_WIFI, pWifiDirectSystemAdapter != null, E_OUT_OF_MEMORY, "Failed to get Wi-Fi System adapter instance");
+ Tizen::Net::Wifi::_WifiDirectSystemAdapter* pWifiDirectSystemAdapter = Tizen::Net::Wifi::_WifiDirectSystemAdapter::GetInstance();
+ SysTryReturnResult(NID_NET_WIFI, pWifiDirectSystemAdapter != null, E_OUT_OF_MEMORY, "Failed to get Wi-Fi System adapter instance");
- Tizen::Net::Wifi::WifiDirectGroupMemberType memberType = pWifiDirectSystemAdapter->GetCurrentMemberType();
+ Tizen::Net::Wifi::WifiDirectGroupMemberType memberType = pWifiDirectSystemAdapter->GetCurrentMemberType();
- if (memberType == Tizen::Net::Wifi::WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- {
- return false;
- }
+ if (memberType == Tizen::Net::Wifi::WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
+ {
+ return false;
+ }
- return true;
+ return true;
}
#ifdef __cplusplus
}
using namespace Tizen::Base;
-namespace Tizen { namespace Net { namespace Wifi
+namespace Tizen { namespace Net { namespace Wifi
{
-////////////////////////////////////////////////////////////////////////////////
-/// Lifecycle : Public
_WifiDirectDeviceInfoImpl::_WifiDirectDeviceInfoImpl(void)
- : __localDeviceId(-1)
- , __deviceName("")
- , __macAddress("")
- , __virtualMacAddress("")
- , __ssid("")
- , __pIpAddress(null)
- , __deviceStatus(WIFI_DIRECT_DEVICE_DEACTIVATED)
- , __groupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- , __deviceTypeCategory(WIFI_DIRECT_DEVICE_TYPE_CATEGORY_OTHERS)
- , __isDisconnecting(false)
+ : __localDeviceId(-1)
+ , __pIpAddress(null)
+ , __deviceStatus(WIFI_DIRECT_DEVICE_DEACTIVATED)
+ , __groupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
+ , __deviceTypeCategory(WIFI_DIRECT_DEVICE_TYPE_CATEGORY_OTHERS)
+ , __isDisconnecting(false)
{
}
_WifiDirectDeviceInfoImpl::_WifiDirectDeviceInfoImpl(const _WifiDirectDeviceInfoImpl& value)
- : __localDeviceId(value.__localDeviceId)
- , __deviceName(value.__deviceName)
- , __macAddress(value.__macAddress)
- , __virtualMacAddress(value.__virtualMacAddress)
- , __ssid(value.__ssid)
- , __pIpAddress(null)
- , __deviceStatus(value.__deviceStatus)
- , __groupMemberType(value.__groupMemberType)
- , __deviceTypeCategory(value.__deviceTypeCategory)
- , __isDisconnecting(false)
+ : __localDeviceId(value.__localDeviceId)
+ , __deviceName(value.__deviceName)
+ , __macAddress(value.__macAddress)
+ , __virtualMacAddress(value.__virtualMacAddress)
+ , __ssid(value.__ssid)
+ , __pIpAddress(null)
+ , __deviceStatus(value.__deviceStatus)
+ , __groupMemberType(value.__groupMemberType)
+ , __deviceTypeCategory(value.__deviceTypeCategory)
+ , __isDisconnecting(false)
{
__wpsConfigurationModeList.Construct(value.__wpsConfigurationModeList);
if (value.__pIpAddress != null)
{
Ip4Address* pIp4Addr = null;
- pIp4Addr = dynamic_cast<Ip4Address*>(value.__pIpAddress);
+ pIp4Addr = dynamic_cast< Ip4Address* >(value.__pIpAddress);
if (pIp4Addr != null)
- {
+ {
__pIpAddress = new (std::nothrow) Ip4Address(*pIp4Addr);
- }
+ }
}
}
_WifiDirectDeviceInfoImpl::_WifiDirectDeviceInfoImpl(const String& deviceName, const String& macAddr)
- : __localDeviceId(-1)
- , __deviceName(deviceName)
- , __macAddress(macAddr)
- , __virtualMacAddress("")
- , __ssid("")
- , __pIpAddress(null)
- , __deviceStatus(WIFI_DIRECT_DEVICE_DEACTIVATED)
- , __groupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- , __deviceTypeCategory(WIFI_DIRECT_DEVICE_TYPE_CATEGORY_OTHERS)
- , __isDisconnecting(false)
+ : __localDeviceId(-1)
+ , __deviceName(deviceName)
+ , __macAddress(macAddr)
+ , __pIpAddress(null)
+ , __deviceStatus(WIFI_DIRECT_DEVICE_DEACTIVATED)
+ , __groupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
+ , __deviceTypeCategory(WIFI_DIRECT_DEVICE_TYPE_CATEGORY_OTHERS)
+ , __isDisconnecting(false)
{
}
_WifiDirectDeviceInfoImpl::~_WifiDirectDeviceInfoImpl(void)
{
- if (__pIpAddress != null)
- {
- delete __pIpAddress;
- __pIpAddress = null;
- }
+ delete __pIpAddress;
}
-////////////////////////////////////////////////////////////////////////////////
-/// Operation : Public
_WifiDirectDeviceInfoImpl&
-_WifiDirectDeviceInfoImpl::operator=(const _WifiDirectDeviceInfoImpl& rhs)
+_WifiDirectDeviceInfoImpl::operator =(const _WifiDirectDeviceInfoImpl& rhs)
{
if (this != &rhs)
{
__deviceStatus = rhs.__deviceStatus;
__groupMemberType = rhs.__groupMemberType;
__deviceTypeCategory = rhs.__deviceTypeCategory;
- __isDisconnecting = rhs.__isDisconnecting;
+ __isDisconnecting = rhs.__isDisconnecting;
__wpsConfigurationModeList.Construct(rhs.__wpsConfigurationModeList);
IpAddress* pOrigIpAddr = null;
- Ip4Address* pIp4Addr = null;
+ Ip4Address* pIp4Addr = null;
- pIp4Addr = dynamic_cast<Ip4Address*>(rhs.__pIpAddress);
+ pIp4Addr = dynamic_cast< Ip4Address* >(rhs.__pIpAddress);
- if (pIp4Addr != null)
- {
- pOrigIpAddr = __pIpAddress;
- __pIpAddress = new (std::nothrow) Ip4Address(*pIp4Addr);
+ if (pIp4Addr != null)
+ {
+ pOrigIpAddr = __pIpAddress;
+ __pIpAddress = new (std::nothrow) Ip4Address(*pIp4Addr);
- SysTryCatch(NID_NET_WIFI, __pIpAddress != null, __pIpAddress = pOrigIpAddr, E_OUT_OF_MEMORY,
- "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ SysTryCatch(NID_NET_WIFI, __pIpAddress != null, __pIpAddress = pOrigIpAddr, E_OUT_OF_MEMORY,
+ "[E_OUT_OF_MEMORY] Memory allocation failed.");
- delete pOrigIpAddr;
- }
+ delete pOrigIpAddr;
+ }
}
CATCH:
return *this;
{
return __deviceTypeCategory;
}
-const Tizen::Base::Collection::IListT<WifiWpsConfigurationMode>*
+const Tizen::Base::Collection::IListT< WifiWpsConfigurationMode >*
_WifiDirectDeviceInfoImpl::GetSupportedWpsConfigurationModeList(void) const
{
return &__wpsConfigurationModeList;
// need to check(device name's length)
SysTryReturnResult(NID_NET_WIFI, nameLength > 0 && nameLength <= MAX_DEVICE_NAME_LENGTH, E_INVALID_ARG,
- "The argument is invalid. The length of name is %d.", nameLength);
+ "The argument is invalid. The length of name is %d.", nameLength);
__deviceName = deviceName;
{
//need to check(mac address's range)
SysTryReturnResult(NID_NET_WIFI, _WifiDirectUtility::CheckMacAddress(macAddress), E_INVALID_ARG,
- "The argument is invalid.");
+ "The argument is invalid.");
__macAddress = macAddress;
}
__pIpAddress = new (std::nothrow) Ip4Address(ipAddress);
- SysTryReturnResult(NID_NET_WIFI, __pIpAddress != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
+ SysTryReturnResult(NID_NET_WIFI, __pIpAddress != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
return E_SUCCESS;
}
__deviceTypeCategory = deviceTypeCategory;
}
-void
-_WifiDirectDeviceInfoImpl::SetSupportedWpsConfigurationMode(
- const Tizen::Base::Collection::IListT<WifiWpsConfigurationMode>& wpsConfigurationModeList)
+result
+_WifiDirectDeviceInfoImpl::SetSupportedWpsConfigurationMode(const Tizen::Base::Collection::IListT< WifiWpsConfigurationMode >& wpsConfigurationModeList)
{
- result r = E_SUCCESS;
- r = __wpsConfigurationModeList.Construct(wpsConfigurationModeList);
- SetLastResult(r);
+ return __wpsConfigurationModeList.Construct(wpsConfigurationModeList);
}
void
_WifiDirectDeviceInfoImpl::SetSsidOfWifiDirectDeviceInfo(WifiDirectDeviceInfo& wifiDirectDeviceInfo, const String& ssid)
{
- wifiDirectDeviceInfo.__pWifiDirectDeviceInfoImpl->SetSsid(ssid);
+ wifiDirectDeviceInfo.__pWifiDirectDeviceInfoImpl->SetSsid(ssid);
}
WifiDirectDeviceInfo*
_WifiDirectDeviceInfoImpl::GetWifiDirectDeviceInfoInstanceN(_WifiDirectDeviceInfoImpl& wifiDirectDeviceInfoImpl)
{
- PrintDeviceInfo(wifiDirectDeviceInfoImpl);
-
WifiDirectDeviceInfo* pWifiDirectDeviceInfo = new (std::nothrow) WifiDirectDeviceInfo();
- SysTryReturn(NID_NET_WIFI, pWifiDirectDeviceInfo != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ SysTryReturn(NID_NET_WIFI, pWifiDirectDeviceInfo != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
*(pWifiDirectDeviceInfo->__pWifiDirectDeviceInfoImpl) = wifiDirectDeviceInfoImpl;
case WIFI_DIRECT_DEVICE_TYPE_CATEGORY_COMPUTER:
SysLog(NID_NET_WIFI, "WifiDirectDeviceTypeCategory : WIFI_DIRECT_DEVICE_TYPE_CATEGORY_COMPUTER");
break;
+
case WIFI_DIRECT_DEVICE_TYPE_CATEGORY_INPUT_DEVICE:
SysLog(NID_NET_WIFI, "WifiDirectDeviceTypeCategory : WIFI_DIRECT_DEVICE_TYPE_CATEGORY_INPUT_DEVICE");
break;
+
case WIFI_DIRECT_DEVICE_TYPE_CATEGORY_PRINTER_SCANNER_FAX_COPIER:
SysLog(NID_NET_WIFI, "WifiDirectDeviceTypeCategory : WIFI_DIRECT_DEVICE_TYPE_CATEGORY_PRINTER_SCANNER_FAX_COPIER");
break;
+
case WIFI_DIRECT_DEVICE_TYPE_CATEGORY_CAMERA:
SysLog(NID_NET_WIFI, "WifiDirectDeviceTypeCategory : WIFI_DIRECT_DEVICE_TYPE_CATEGORY_CAMERA");
break;
+
case WIFI_DIRECT_DEVICE_TYPE_CATEGORY_STORAGE:
SysLog(NID_NET_WIFI, "WifiDirectDeviceTypeCategory : WIFI_DIRECT_DEVICE_TYPE_CATEGORY_STORAGE");
break;
+
case WIFI_DIRECT_DEVICE_TYPE_CATEGORY_NETWORK_INFRASTRUCTURE:
SysLog(NID_NET_WIFI, "WifiDirectDeviceTypeCategory : WIFI_DIRECT_DEVICE_TYPE_CATEGORY_NETWORK_INFRASTRUCTURE");
break;
+
case WIFI_DIRECT_DEVICE_TYPE_CATEGORY_DISPLAY:
SysLog(NID_NET_WIFI, "WifiDirectDeviceTypeCategory : WIFI_DIRECT_DEVICE_TYPE_CATEGORY_DISPLAY");
break;
+
case WIFI_DIRECT_DEVICE_TYPE_CATEGORY_MULTIMEDIA_DEVICE:
SysLog(NID_NET_WIFI, "WifiDirectDeviceTypeCategory : WIFI_DIRECT_DEVICE_TYPE_CATEGORY_MULTIMEDIA_DEVICE");
break;
+
case WIFI_DIRECT_DEVICE_TYPE_CATEGORY_GAMING_DEVICE:
SysLog(NID_NET_WIFI, "WifiDirectDeviceTypeCategory : WIFI_DIRECT_DEVICE_TYPE_CATEGORY_GAMING_DEVICE");
break;
+
case WIFI_DIRECT_DEVICE_TYPE_CATEGORY_TELEPHONE:
SysLog(NID_NET_WIFI, "WifiDirectDeviceTypeCategory : WIFI_DIRECT_DEVICE_TYPE_CATEGORY_TELEPHONE");
break;
+
case WIFI_DIRECT_DEVICE_TYPE_CATEGORY_AUDIO_DEVICE:
SysLog(NID_NET_WIFI, "WifiDirectDeviceTypeCategory : WIFI_DIRECT_DEVICE_TYPE_CATEGORY_AUDIO_DEVICE");
break;
+
case WIFI_DIRECT_DEVICE_TYPE_CATEGORY_OTHERS:
SysLog(NID_NET_WIFI, "WifiDirectDeviceTypeCategory : WIFI_DIRECT_DEVICE_TYPE_CATEGORY_OTHERS");
break;
{
//need to check(mac address's range)
SysTryReturnResult(NID_NET_WIFI, _WifiDirectUtility::CheckMacAddress(macAddress), E_INVALID_ARG,
- "The argument is invalid.");
+ "The argument is invalid.");
__virtualMacAddress = macAddress;
bool
_WifiDirectDeviceInfoImpl::Equals(const Tizen::Base::Object& obj) const
{
- const _WifiDirectDeviceInfoImpl* pOther = dynamic_cast<const _WifiDirectDeviceInfoImpl*>(&obj);
-
- if (pOther == null
- || __localDeviceId != pOther->__localDeviceId
- || !__deviceName.Equals(pOther->__deviceName)
- || !__macAddress.Equals(pOther->__macAddress)
- || !__virtualMacAddress.Equals(pOther->__virtualMacAddress)
- || !__ssid.Equals(pOther->__ssid)
- || __deviceStatus != pOther->__deviceStatus
- || __groupMemberType != pOther->__groupMemberType
- || __deviceTypeCategory != pOther->__deviceTypeCategory
- || !__wpsConfigurationModeList.Equals(pOther->__wpsConfigurationModeList) )
- {
- return false;
- }
-
- if (__pIpAddress != null && pOther->__pIpAddress != null)
- {
- if( !__pIpAddress->Equals(*pOther->__pIpAddress) )
- {
- return false;
- }
- }
- else if (__pIpAddress != null && pOther->__pIpAddress == null)
- {
- return false;
- }
- else if (__pIpAddress == null && pOther->__pIpAddress != null)
- {
- return false;
- }
-
- return true;
+ const _WifiDirectDeviceInfoImpl* pOther = dynamic_cast< const _WifiDirectDeviceInfoImpl* >(&obj);
+
+ if (pOther == null
+ || __localDeviceId != pOther->__localDeviceId
+ || !__deviceName.Equals(pOther->__deviceName)
+ || !__macAddress.Equals(pOther->__macAddress)
+ || !__virtualMacAddress.Equals(pOther->__virtualMacAddress)
+ || !__ssid.Equals(pOther->__ssid)
+ || __deviceStatus != pOther->__deviceStatus
+ || __groupMemberType != pOther->__groupMemberType
+ || __deviceTypeCategory != pOther->__deviceTypeCategory
+ || !__wpsConfigurationModeList.Equals(pOther->__wpsConfigurationModeList))
+ {
+ return false;
+ }
+
+ if (__pIpAddress != null && pOther->__pIpAddress != null)
+ {
+ if (!__pIpAddress->Equals(*pOther->__pIpAddress))
+ {
+ return false;
+ }
+ }
+ else if (__pIpAddress != null && pOther->__pIpAddress == null)
+ {
+ return false;
+ }
+ else if (__pIpAddress == null && pOther->__pIpAddress != null)
+ {
+ return false;
+ }
+
+ return true;
}
int
_WifiDirectDeviceInfoImpl::GetHashCode(void) const
{
- return __localDeviceId ^ __deviceName.GetHashCode() ^ __macAddress.GetHashCode() ^ __virtualMacAddress.GetHashCode() ^ __ssid.GetHashCode();
+ return __localDeviceId ^ __deviceName.GetHashCode() ^ __macAddress.GetHashCode() ^ __virtualMacAddress.GetHashCode() ^ __ssid.GetHashCode();
}
_WifiDirectDeviceInfoImpl*
_WifiDirectDeviceInfoImpl::GetInstance(WifiDirectDeviceInfo& wifiDirectDeviceInfo)
{
- return wifiDirectDeviceInfo.__pWifiDirectDeviceInfoImpl;
+ return wifiDirectDeviceInfo.__pWifiDirectDeviceInfoImpl;
}
const _WifiDirectDeviceInfoImpl*
_WifiDirectDeviceInfoImpl::GetInstance(const WifiDirectDeviceInfo& wifiDirectDeviceInfo)
{
- return wifiDirectDeviceInfo.__pWifiDirectDeviceInfoImpl;
+ return wifiDirectDeviceInfo.__pWifiDirectDeviceInfoImpl;
}
void
_WifiDirectDeviceInfoImpl::SetDisconnect(bool value)
{
- __isDisconnecting = value;
+ __isDisconnecting = value;
}
bool
_WifiDirectDeviceInfoImpl::IsDisconnecting(void)
{
- return __isDisconnecting;
+ return __isDisconnecting;
}
-} } }// Tizen::Net::Wifi
+} } } // Tizen::Net::Wifi
#ifdef __cplusplus
extern "C"
namespace Tizen { namespace Net { namespace Wifi
{
-////////////////////////////////////////////////////////////////////////////////
-/// Lifecycle : Public
_WifiDirectDeviceManagerImpl::_WifiDirectDeviceManagerImpl(void)
{
}
-////////////////////////////////////////////////////////////////////////////////
-/// Operation : Public
-
IList*
_WifiDirectDeviceManagerImpl::GetAllDeviceInfoN(void)
{
return pWifiDirectDevice;
CATCH:
- if (pWifiDirectDevice != null)
+ if (pClientListener != null)
+ {
+ pWifiDirectDevice->RemoveWifiDirectGroupClientListener(*pClientListener);
+ }
+ if (pOwnerListener != null)
{
- if (pClientListener != null)
- {
- pWifiDirectDevice->RemoveWifiDirectGroupClientListener(*pClientListener);
- }
- if (pOwnerListener != null)
- {
- pWifiDirectDevice->RemoveWifiDirectGroupOwnerListener(*pOwnerListener);
- }
- if (pDeviceListener != null)
- {
- pWifiDirectDevice->RemoveWifiDirectDeviceListener(*pDeviceListener);
- }
-
- delete pWifiDirectDevice;
+ pWifiDirectDevice->RemoveWifiDirectGroupOwnerListener(*pOwnerListener);
}
+ if (pDeviceListener != null)
+ {
+ pWifiDirectDevice->RemoveWifiDirectDeviceListener(*pDeviceListener);
+ }
+
+ delete pWifiDirectDevice;
return null;
}
namespace Tizen { namespace Net { namespace Wifi
{
-////////////////////////////////////////////////////////////////////////////
-// Lifecycle : Public
_WifiDirectEvent::_WifiDirectEvent(void)
{
}
result
_WifiDirectEvent::Construct(void)
{
- return _Event::Initialize();
+ return _Event::Initialize();
}
-////////////////////////////////////////////////////////////////////////////////
-/// Operation : Protected
-
void
_WifiDirectEvent::FireImpl(Tizen::Base::Runtime::IEventListener& listener, const Tizen::Base::Runtime::IEventArg& arg)
{
#ifndef _FNET_WIFI_INTERNAL_WIFI_DIRECT_EVENT_H_
#define _FNET_WIFI_INTERNAL_WIFI_DIRECT_EVENT_H_
-// Includes
#include <FBaseResult.h>
#include <FBaseRt_Event.h>
class IEventArg;
}}}
-namespace Tizen { namespace Net { namespace Wifi
+namespace Tizen { namespace Net { namespace Wifi
{
/**
* @class _WifiDirectEvent
*/
class _WifiDirectEvent
- : public Tizen::Base::Runtime::_Event
+ : public Tizen::Base::Runtime::_Event
{
public:
/**
/**
* Initializes this instance.
- */
- result Construct(void);
+ */
+ result Construct(void);
protected:
/**
* @exception E_SUCCESS The method is successful.
* @exception E_INVALID_ARG The argument passed to a method contains an invalid value.@n
*/
- void FireImpl(Tizen::Base::Runtime::IEventListener& listener, const Tizen::Base::Runtime::IEventArg& arg);
+ void FireImpl(Tizen::Base::Runtime::IEventListener& listener, const Tizen::Base::Runtime::IEventArg& arg);
private:
- /**
- * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
- *
- * @since 2.0
- * @param[in] rhs An instance of %_WifiDirectEvent
- */
+ /**
+ * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
+ *
+ * @param[in] rhs An instance of %_WifiDirectEvent
+ */
_WifiDirectEvent(const _WifiDirectEvent& rhs);
-
- /**
- * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
- *
- * @since 2.0
- *
- * @param[in] rhs An instance of %_WifiDirectEvent
- */
+
+ /**
+ * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
+ *
+ * @param[in] rhs An instance of %_WifiDirectEvent
+ */
_WifiDirectEvent& operator =(const _WifiDirectEvent& rhs);
}; // _WifiDirectEvent
#include <FBaseRtIEventArg.h>
#include "FNetWifi_WifiDirectEventArg.h"
+using namespace std;
using namespace Tizen::Base::Collection;
-namespace Tizen { namespace Net { namespace Wifi
+namespace Tizen { namespace Net { namespace Wifi
{
_WifiDirectEventArg::_WifiDirectEventArg(void)
: __eventType(WIFI_DIRECT_DEVICE_EVENT_NONE)
- , __localDeviceId(-1)
- , __error(E_SUCCESS)
- , __pGroupInfo(null)
- , __pDeviceInfo(null)
- , __pDeviceInfoList(null)
- , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
- , __pNetConnection(null)
- , __pGroupMember(null)
+ , __localDeviceId(-1)
+ , __error(E_SUCCESS)
+ , __pGroupInfo(null)
+ , __pDeviceInfo(null)
+ , __pDeviceInfoList(null)
+ , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
+ , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
+ , __pNetConnection(null)
+ , __pGroupMember(null)
{
}
_WifiDirectEventArg::_WifiDirectEventArg(const _WifiDirectEventArg& rhs)
- : __eventType(rhs.__eventType)
- , __localDeviceId(rhs.__localDeviceId)
- , __error(rhs.__error)
- , __pGroupInfo(null)
- , __pDeviceInfo(null)
- , __pDeviceInfoList(null)
- , __wifiDirectGroupMemberType(rhs.__wifiDirectGroupMemberType)
- , __disassociationReason(rhs.__disassociationReason)
- , __pNetConnection(rhs.__pNetConnection)
- , __pGroupMember(null)
+ : __eventType(rhs.__eventType)
+ , __localDeviceId(rhs.__localDeviceId)
+ , __error(rhs.__error)
+ , __pGroupInfo(null)
+ , __pDeviceInfo(null)
+ , __pDeviceInfoList(null)
+ , __wifiDirectGroupMemberType(rhs.__wifiDirectGroupMemberType)
+ , __disassociationReason(rhs.__disassociationReason)
+ , __pNetConnection(rhs.__pNetConnection) // shallow copy is intended
+ , __remoteDeviceMacAddress(rhs.__remoteDeviceMacAddress)
+ , __pGroupMember(null)
{
- if (rhs.__pGroupInfo != null)
- {
- __pGroupInfo = new (std::nothrow) WifiDirectGroupInfo(*rhs.__pGroupInfo);
- SysTryReturnVoidResult(NID_NET_WIFI, __pGroupInfo != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- }
-
- if (rhs.__pDeviceInfo != null)
- {
- __pDeviceInfo = new (std::nothrow) WifiDirectDeviceInfo(*rhs.__pDeviceInfo);
- SysTryReturnVoidResult(NID_NET_WIFI, __pDeviceInfo != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- }
-
- if (rhs.__pDeviceInfoList != null)
- {
- __pDeviceInfoList = new (std::nothrow) ArrayList();
- SysTryReturnVoidResult(NID_NET_WIFI, __pDeviceInfoList != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- result r = dynamic_cast<ArrayList*>(__pDeviceInfoList)->Construct(*rhs.__pDeviceInfoList);
- SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS, r, "[%s] Propagating.", GetErrorMessage(r));
- }
+ if (rhs.__pGroupInfo != null)
+ {
+ __pGroupInfo.reset(new (std::nothrow) WifiDirectGroupInfo(*rhs.__pGroupInfo));
+ SysTryReturnVoidResult(NID_NET_WIFI, __pGroupInfo != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ }
+
+ if (rhs.__pDeviceInfo != null)
+ {
+ __pDeviceInfo.reset(new (std::nothrow) WifiDirectDeviceInfo(*rhs.__pDeviceInfo));
+ SysTryReturnVoidResult(NID_NET_WIFI, __pDeviceInfo != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ }
+
+ if (rhs.__pDeviceInfoList != null)
+ {
+ unique_ptr<ArrayList> pDeviceInfoList(new (std::nothrow) ArrayList());
+ SysTryReturnVoidResult(NID_NET_WIFI, pDeviceInfoList != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ result r = pDeviceInfoList->Construct(*rhs.__pDeviceInfoList);
+ SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS, r, "[%s] Propagating.", GetErrorMessage(r));
+
+ __pDeviceInfoList = move(pDeviceInfoList);
+ }
}
_WifiDirectEventArg::~_WifiDirectEventArg(void)
{
- delete __pGroupInfo;
- delete __pDeviceInfo;
-
- if (__pDeviceInfoList != null)
- {
- __pDeviceInfoList->RemoveAll(false);
-
- delete __pDeviceInfoList;
- }
}
_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, result r)
- : __eventType(eventType)
- , __localDeviceId(localDeviceId)
- , __error(r)
- , __pGroupInfo(null)
- , __pDeviceInfo(null)
- , __pDeviceInfoList(null)
- , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
- , __pNetConnection(null)
- , __pGroupMember(null)
+ : __eventType(eventType)
+ , __localDeviceId(localDeviceId)
+ , __error(r)
+ , __pGroupInfo(null)
+ , __pDeviceInfo(null)
+ , __pDeviceInfoList(null)
+ , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
+ , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
+ , __pNetConnection(null)
+ , __pGroupMember(null)
{
}
-_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- const WifiDirectGroupInfo& wifiDirectGroupInfo,
- const WifiDirectDeviceInfo& wifiDirectGroupOwnerDeviceInfo,
- const WifiDirectGroupMemberType wifiDirectMemberType, result r)
- : __eventType(eventType)
- , __localDeviceId(localDeviceId)
- , __error(r)
- , __pDeviceInfoList(null)
- , __wifiDirectGroupMemberType(wifiDirectMemberType)
- , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
- , __pNetConnection(null)
- , __pGroupMember(null)
+_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, const WifiDirectGroupInfo& wifiDirectGroupInfo, const WifiDirectDeviceInfo& wifiDirectGroupOwnerDeviceInfo, const WifiDirectGroupMemberType wifiDirectMemberType, result r)
+ : __eventType(eventType)
+ , __localDeviceId(localDeviceId)
+ , __error(r)
+ , __pDeviceInfoList(null)
+ , __wifiDirectGroupMemberType(wifiDirectMemberType)
+ , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
+ , __pNetConnection(null)
+ , __pGroupMember(null)
{
- __pGroupInfo = new (std::nothrow) WifiDirectGroupInfo(wifiDirectGroupInfo);
- SysTryReturnVoidResult(NID_NET_WIFI, __pGroupInfo != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pGroupInfo.reset(new (std::nothrow) WifiDirectGroupInfo(wifiDirectGroupInfo));
+ SysTryReturnVoidResult(NID_NET_WIFI, __pGroupInfo != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pDeviceInfo = new (std::nothrow) WifiDirectDeviceInfo(wifiDirectGroupOwnerDeviceInfo);
- SysTryReturnVoidResult(NID_NET_WIFI, __pDeviceInfo != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pDeviceInfo.reset(new (std::nothrow) WifiDirectDeviceInfo(wifiDirectGroupOwnerDeviceInfo));
+ SysTryReturnVoidResult(NID_NET_WIFI, __pDeviceInfo != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
}
-_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- Tizen::Base::Collection::IList* pDeviceInfoList, result r)
- : __eventType(eventType)
- , __localDeviceId(localDeviceId)
- , __error(r)
- , __pGroupInfo(null)
- , __pDeviceInfo(null)
- , __pDeviceInfoList(null)
- , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
- , __pNetConnection(null)
- , __pGroupMember(null)
+_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, Tizen::Base::Collection::IList* pDeviceInfoList, result r)
+ : __eventType(eventType)
+ , __localDeviceId(localDeviceId)
+ , __error(r)
+ , __pGroupInfo(null)
+ , __pDeviceInfo(null)
+ , __pDeviceInfoList(null)
+ , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
+ , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
+ , __pNetConnection(null)
+ , __pGroupMember(null)
{
- if (pDeviceInfoList != null)
- {
- __pDeviceInfoList = new (std::nothrow) ArrayList();
- SysTryReturnVoidResult(NID_NET_WIFI, __pDeviceInfoList != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- result r = __pDeviceInfoList->Construct(*pDeviceInfoList);
- SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS, r, "[%s] Propagating.", GetErrorMessage(r));
- }
+ if (pDeviceInfoList != null)
+ {
+ __pDeviceInfoList.reset(new (std::nothrow) ArrayList());
+ SysTryReturnVoidResult(NID_NET_WIFI, __pDeviceInfoList != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ result r = __pDeviceInfoList->Construct(*pDeviceInfoList);
+ SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS, r, "[%s] Propagating.", GetErrorMessage(r));
+ }
}
-_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- const WifiDirectDeviceInfo& wifiDirectDeviceInfo, result r)
- : __eventType(eventType)
- , __localDeviceId(localDeviceId)
- , __error(r)
- , __pGroupInfo(null)
- , __pDeviceInfoList(null)
- , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
- , __pNetConnection(null)
- , __pGroupMember(null)
+_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, const WifiDirectDeviceInfo& wifiDirectDeviceInfo, result r)
+ : __eventType(eventType)
+ , __localDeviceId(localDeviceId)
+ , __error(r)
+ , __pGroupInfo(null)
+ , __pDeviceInfoList(null)
+ , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
+ , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
+ , __pNetConnection(null)
+ , __pGroupMember(null)
{
- __pDeviceInfo = new (std::nothrow) WifiDirectDeviceInfo(wifiDirectDeviceInfo);
- SysTryReturnVoidResult(NID_NET_WIFI, __pDeviceInfo != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pDeviceInfo.reset(new (std::nothrow) WifiDirectDeviceInfo(wifiDirectDeviceInfo));
+ SysTryReturnVoidResult(NID_NET_WIFI, __pDeviceInfo != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
}
-_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- const WifiDirectDeviceInfo& wifiDirectDeviceInfo,
- WifiDirectAssociationTerminationReason disassociationReason, result r)
- : __eventType(eventType)
- , __localDeviceId(localDeviceId)
- , __error(r)
- , __pGroupInfo(null)
- , __pDeviceInfo(null)
- , __pDeviceInfoList(null)
- , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- , __disassociationReason(disassociationReason)
- , __pNetConnection(null)
- , __pGroupMember(null)
+_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, const WifiDirectDeviceInfo& wifiDirectDeviceInfo, WifiDirectAssociationTerminationReason disassociationReason, result r)
+ : __eventType(eventType)
+ , __localDeviceId(localDeviceId)
+ , __error(r)
+ , __pGroupInfo(null)
+ , __pDeviceInfo(null)
+ , __pDeviceInfoList(null)
+ , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
+ , __disassociationReason(disassociationReason)
+ , __pNetConnection(null)
+ , __pGroupMember(null)
{
- __pDeviceInfo = new (std::nothrow) WifiDirectDeviceInfo(wifiDirectDeviceInfo);
- SysTryReturnVoidResult(NID_NET_WIFI, __pDeviceInfo != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __pDeviceInfo.reset(new (std::nothrow) WifiDirectDeviceInfo(wifiDirectDeviceInfo));
+ SysTryReturnVoidResult(NID_NET_WIFI, __pDeviceInfo != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
}
-_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- WifiDirectAssociationTerminationReason disassociationReason, result r)
- : __eventType(eventType)
- , __localDeviceId(localDeviceId)
- , __error(r)
- , __pGroupInfo(null)
- , __pDeviceInfo(null)
- , __pDeviceInfoList(null)
- , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- , __disassociationReason(disassociationReason)
- , __pNetConnection(null)
- , __pGroupMember(null)
+_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, WifiDirectAssociationTerminationReason disassociationReason, result r)
+ : __eventType(eventType)
+ , __localDeviceId(localDeviceId)
+ , __error(r)
+ , __pGroupInfo(null)
+ , __pDeviceInfo(null)
+ , __pDeviceInfoList(null)
+ , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
+ , __disassociationReason(disassociationReason)
+ , __pNetConnection(null)
+ , __pGroupMember(null)
{
}
-_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- Tizen::Net::NetConnection* pNetConnection, result r)
- : __eventType(eventType)
- , __localDeviceId(localDeviceId)
- , __error(r)
- , __pGroupInfo(null)
- , __pDeviceInfo(null)
- , __pDeviceInfoList(null)
- , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
- , __pNetConnection(pNetConnection)
- , __pGroupMember(null)
+_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, Tizen::Net::NetConnection* pNetConnection, result r)
+ : __eventType(eventType)
+ , __localDeviceId(localDeviceId)
+ , __error(r)
+ , __pGroupInfo(null)
+ , __pDeviceInfo(null)
+ , __pDeviceInfoList(null)
+ , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
+ , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
+ , __pNetConnection(pNetConnection)
+ , __pGroupMember(null)
{
}
-_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- const Tizen::Base::String& remoteDeviceMacAddress, result r)
- : __eventType(eventType)
- , __localDeviceId(localDeviceId)
- , __error(r)
- , __pGroupInfo(null)
- , __pDeviceInfo(null)
- , __pDeviceInfoList(null)
- , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
- , __pNetConnection(null)
- , __remoteDeviceMacAddress(remoteDeviceMacAddress)
- , __pGroupMember(null)
+_WifiDirectEventArg::_WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, const Tizen::Base::String& remoteDeviceMacAddress, result r)
+ : __eventType(eventType)
+ , __localDeviceId(localDeviceId)
+ , __error(r)
+ , __pGroupInfo(null)
+ , __pDeviceInfo(null)
+ , __pDeviceInfoList(null)
+ , __wifiDirectGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
+ , __disassociationReason(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED)
+ , __pNetConnection(null)
+ , __remoteDeviceMacAddress(remoteDeviceMacAddress)
+ , __pGroupMember(null)
{
}
void
_WifiDirectEventArg::SetGroupMember(WifiDirectGroupMember* pGroupMember)
{
- __pGroupMember = pGroupMember;
+ __pGroupMember = pGroupMember;
}
WifiDirectGroupMember*
_WifiDirectEventArg::GetGroupMember(void) const
{
- return __pGroupMember;
+ return __pGroupMember;
}
_WifiDirectEventType
IList*
_WifiDirectEventArg::GetDeviceInfoList(void) const
{
- return __pDeviceInfoList;
+ return __pDeviceInfoList.get();
}
WifiDirectGroupInfo*
_WifiDirectEventArg::GetGroupInfo(void) const
{
- return __pGroupInfo;
+ return __pGroupInfo.get();
}
WifiDirectDeviceInfo*
_WifiDirectEventArg::GetDeviceInfo(void) const
{
- return __pDeviceInfo;
+ return __pDeviceInfo.get();
}
WifiDirectGroupMemberType
WifiDirectAssociationTerminationReason
_WifiDirectEventArg::GetDisassociationReason(void) const
{
- return __disassociationReason;
+ return __disassociationReason;
}
Tizen::Net::NetConnection*
_WifiDirectEventArg::GetNetConnection(void) const
{
- return __pNetConnection;
+ return __pNetConnection;
}
Tizen::Base::String
_WifiDirectEventArg::GetMacAddress(void) const
{
- return __remoteDeviceMacAddress;
+ return __remoteDeviceMacAddress;
}
_WifiDirectEventArg&
-_WifiDirectEventArg::operator=(const _WifiDirectEventArg& rhs)
+_WifiDirectEventArg::operator =(const _WifiDirectEventArg& rhs)
{
- if (this != &rhs)
- {
- __eventType = rhs.__eventType;
- __localDeviceId = rhs.__localDeviceId;
- __wifiDirectGroupMemberType = rhs.__wifiDirectGroupMemberType;
- __disassociationReason = rhs.__disassociationReason;
- __pNetConnection = rhs.__pNetConnection;
-
- if (rhs.__pGroupInfo != null)
- {
- WifiDirectGroupInfo* pGroupInfo = new (std::nothrow) WifiDirectGroupInfo(*rhs.__pGroupInfo);
- SysTryCatch(NID_NET_WIFI, pGroupInfo != null, , E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- delete __pGroupInfo;
- __pGroupInfo = pGroupInfo;
- }
-
- if (rhs.__pDeviceInfo != null)
- {
- WifiDirectDeviceInfo* pDeviceInfo = new (std::nothrow) WifiDirectDeviceInfo(*rhs.__pDeviceInfo);
- SysTryCatch(NID_NET_WIFI, pDeviceInfo != null, , E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- delete __pDeviceInfo;
- __pDeviceInfo = pDeviceInfo;
- }
-
- if (rhs.__pDeviceInfoList != null)
- {
- ArrayList* pDeviceInfoList = new (std::nothrow) ArrayList();
- SysTryCatch(NID_NET_WIFI, pDeviceInfoList != null, , E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- result r = pDeviceInfoList->Construct(*rhs.__pDeviceInfoList);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
- if (__pDeviceInfoList != null)
- {
- __pDeviceInfoList->RemoveAll(true);
- delete __pDeviceInfoList;
- }
- __pDeviceInfoList = pDeviceInfoList;
- }
- }
-CATCH:
- return *this;
+ if (this != &rhs)
+ {
+ unique_ptr<WifiDirectGroupInfo> pGroupInfo;
+ unique_ptr<WifiDirectDeviceInfo> pDeviceInfo;
+ unique_ptr<ArrayList> pDeviceInfoList;
+
+ if (rhs.__pGroupInfo != null)
+ {
+ pGroupInfo.reset(new (std::nothrow) WifiDirectGroupInfo(*rhs.__pGroupInfo));
+ SysTryReturn(NID_NET_WIFI, pGroupInfo != null, *this, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ }
+
+ if (rhs.__pDeviceInfo != null)
+ {
+ pDeviceInfo.reset(new (std::nothrow) WifiDirectDeviceInfo(*rhs.__pDeviceInfo));
+ SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, *this, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ }
+
+ if (rhs.__pDeviceInfoList != null)
+ {
+ pDeviceInfoList.reset(new (std::nothrow) ArrayList());
+ SysTryReturn(NID_NET_WIFI, pDeviceInfoList != null, *this, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ result r = pDeviceInfoList->Construct(*rhs.__pDeviceInfoList);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, *this, r, "[%s] Propagating.", GetErrorMessage(r));
+ }
+
+ __pGroupInfo = move(pGroupInfo);
+ __pDeviceInfo = move(pDeviceInfo);
+ __pDeviceInfoList = move(pDeviceInfoList);
+ __eventType = rhs.__eventType;
+ __localDeviceId = rhs.__localDeviceId;
+ __wifiDirectGroupMemberType = rhs.__wifiDirectGroupMemberType;
+ __disassociationReason = rhs.__disassociationReason;
+ __pNetConnection = rhs.__pNetConnection; // shallow copy is intended
+
+ }
+
+ return *this;
}
-} } }//Tizen::Net::Wifi
+} } } //Tizen::Net::Wifi
#ifndef _FNET_WIFI_INTERNAL_WIFI_DIRECT_EVENT_ARG_H_
#define _FNET_WIFI_INTERNAL_WIFI_DIRECT_EVENT_ARG_H_
+#include <unique_ptr.h>
#include <FBaseObject.h>
#include <FBaseRtIEventArg.h>
#include <FNetWifiWifiTypes.h>
-namespace Tizen { namespace Base { namespace Collection {
+namespace Tizen { namespace Base { namespace Collection
+{
class IList;
class ArrayList;
-}}}// Tizen::Base::Collection
+}}} // Tizen::Base::Collection
-namespace Tizen { namespace Net {
+namespace Tizen { namespace Net
+{
class NetConnection;
-namespace Wifi {
+namespace Wifi
+{
class WifiDirectGroupInfo;
class WifiDirectDeviceInfo;
class WifiDirectGroupMember;
WIFI_DIRECT_DEVICE_EVENT_DISCONNECTED,
WIFI_DIRECT_DEVICE_EVENT_AUTONOMOS_GROUP_CREATED,
WIFI_DIRECT_DEVICE_EVENT_GROUP_LEFT,
- WIFI_DIRECT_GO_EVENT_CLIENT_ASSOCIATED,
- WIFI_DIRECT_GO_EVENT_CLIENT_DISASSOCIATED,
- WIFI_DIRECT_GO_EVENT_GROUP_DESTROYED,
- WIFI_DIRECT_GO_EVENT_SERVICE_STARTED,
- WIFI_DIRECT_GO_EVENT_SERVICE_STOPPED,
- WIFI_DIRECT_GC_EVENT_DISASSOCIATED,
- WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED,
- WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED
+ WIFI_DIRECT_GO_EVENT_CLIENT_ASSOCIATED,
+ WIFI_DIRECT_GO_EVENT_CLIENT_DISASSOCIATED,
+ WIFI_DIRECT_GO_EVENT_GROUP_DESTROYED,
+ WIFI_DIRECT_GO_EVENT_SERVICE_STARTED,
+ WIFI_DIRECT_GO_EVENT_SERVICE_STOPPED,
+ WIFI_DIRECT_GC_EVENT_DISASSOCIATED,
+ WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED,
+ WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED
};
/**
* @class _WifiDirectEventArg
* @brief This class is used as an argument of methods of the IWifiDirectDeviceListener class.
*
- * @since 2.0
- *
* This class is used as an argument of IWifiDirectDeviceListener's methods.
* When a %WifiDirectDevice event occurs, the __WifiDirectDeviceEvent object finds a IWifiDirectDeviceListener object
* which is registered for the WifiDirectDevice object and calls an appropriate method of the listener.
*/
-class _WifiDirectEventArg:
- public Tizen::Base::Runtime::IEventArg,
- public Tizen::Base::Object
+class _WifiDirectEventArg
+ : public Tizen::Base::Runtime::IEventArg
+ , public Tizen::Base::Object
{
public:
/**
- * This is the default constructor for this class.
+ * This is the default constructor for this class.
*/
_WifiDirectEventArg(void);
/**
- * This is the copy constructor.
- *
- * @param[in] rhs An instance of %_WifiDirectEventArg
- */
- _WifiDirectEventArg(const _WifiDirectEventArg& rhs);
+ * This is the copy constructor.
+ *
+ * @param[in] rhs An instance of %_WifiDirectEventArg
+ */
+ _WifiDirectEventArg(const _WifiDirectEventArg& rhs);
/**
* This destructor overrides Tizen::Base::Object::~Object().
*/
virtual ~_WifiDirectEventArg(void);
- /**
+ /**
* This constructor initializes the instance of this class with the specified values.
*
- * @param[in] memberType The type of the member.
+ * @param[in] memberType The type of the member.
* @param[in] eventType The type of the WifiDirectDeviceEvent.
* @param[in] localDeviceId An Id for a Wi-Fi Direct device.
* @param[in] r The error code.
/**
* This constructor initializes the instance of this class with the specified values.
*
- * @param[in] memberType The type of the member.
+ * @param[in] memberType The type of the member.
* @param[in] eventType The type of the WifiDirectDeviceEvent.
* @param[in] localDeviceId An Id for a Wi-Fi Direct device.
* @param[in] wifiDirectGroupInfo A reference to the WifiDirecrGroupInfo instance.
* @remarks This method can be used for WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED event.
*/
- _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- const WifiDirectGroupInfo& wifiDirectGroupInfo, const WifiDirectDeviceInfo& wifiDirectGroupOwnerDeviceInfo,
- const WifiDirectGroupMemberType wifiDirectMemberType, result r = E_SUCCESS);
+ _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, const WifiDirectGroupInfo& wifiDirectGroupInfo, const WifiDirectDeviceInfo& wifiDirectGroupOwnerDeviceInfo, const WifiDirectGroupMemberType wifiDirectMemberType, result r = E_SUCCESS);
/**
* This constructor initializes the instance of this class with the specified values.
*
- * @param[in] memberType The type of the member.
+ * @param[in] memberType The type of the member.
* @param[in] eventType The type of the WifiDirectDeviceEvent.
* @param[in] localDeviceId An Id for a Wi-Fi Direct device.
* @param[in] pGroupOwnerInfoList The list of WifiDirectDeviceInfo information.
* @remarks This method can be used for WIFI_DIRECT_DEVICE_EVENT_SCAN_COMPLETED
* or WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED event.
*/
- _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- Tizen::Base::Collection::IList* pDeviceInfoList, result r = E_SUCCESS);
+ _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, Tizen::Base::Collection::IList* pDeviceInfoList, result r = E_SUCCESS);
/**
* This constructor initializes the instance of this class with the specified values.
*
- * @param[in] memberType The type of the member.
+ * @param[in] memberType The type of the member.
* @param[in] eventType The type of the WifiDirectDeviceEvent.
* @param[in] localDeviceId An Id for a Wi-Fi Direct device.
* @param[in] wifiDirectGroupOwnerDeviceInfo A reference to the WifiDirectDeviceInfo instance of the group owner.
* @remarks This method can be used for WIFI_DIRECT_DEVICE_EVENT_SCAN_FOUND, WIFI_DIRECT_DEVICE_EVENT_ASSOCIATED, WIFI_DIRECT_GO_EVENT_CLIENT_ASSOCIATED
* ,WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED or WIFI_DIRECT_DEVICE_EVENT_CONNECTED event.
*/
- _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- const WifiDirectDeviceInfo& wifiDirectDeviceInfo, result r = E_SUCCESS);
+ _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, const WifiDirectDeviceInfo& wifiDirectDeviceInfo, result r = E_SUCCESS);
- /**
+ /**
* This constructor initializes the instance of this class with the specified values.
*
- * @param[in] memberType The type of the member.
+ * @param[in] memberType The type of the member.
* @param[in] eventType The type of the WifiDirectGroupOwnerEvent.
* @param[in] localDeviceId An Id for a Wi-Fi Direct device.
* @param[in] wifiDirectDeviceInfo A reference to the WifiDirectDeviceInfo instance.
*
* @remarks This method can be used for WIFI_DIRECT_GO_EVENT_CLIENT_ASSOCIATED or WIFI_DIRECT_GO_EVENT_CLIENT_DISASSOCIATED
*/
- _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- const WifiDirectDeviceInfo& wifiDirectDeviceInfo, WifiDirectAssociationTerminationReason disassociationReason,
- result r = E_SUCCESS);
+ _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, const WifiDirectDeviceInfo& wifiDirectDeviceInfo, WifiDirectAssociationTerminationReason disassociationReason, result r = E_SUCCESS);
- /**
+ /**
* This constructor initializes the instance of this class with the specified values.
*
- * @param[in] memberType The type of the member.
+ * @param[in] memberType The type of the member.
* @param[in] eventType The type of the WifiDirectGroupClientEvent.
* @param[in] localDeviceId An Id for a Wi-Fi Direct device.
* @param[in] disassociationReason The reason of association termination
*
* @remarks This method can be used for WIFI_DIRECT_GC_EVENT_DISASSOCIATED event.
*/
- _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- WifiDirectAssociationTerminationReason disassociationReason, result r = E_SUCCESS);
+ _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, WifiDirectAssociationTerminationReason disassociationReason, result r = E_SUCCESS);
/**
- * This constructor initializes the instance of this class with the specified values.
- *
- * @param[in] memberType The type of the member.
- * @param[in] eventType The type of the WifiDirectGroupClientEvent.
- * @param[in] localDeviceId An Id for a Wi-Fi Direct device.
- * @param[in] pNetConnection The network connection that started with the Wi-Fi Direct net account.
- * @param[in] r The error code.
- *
- * @remarks This method can be used for WIFI_DIRECT_GO_EVENT_SERVICE_STARTED event.
- */
- _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- Tizen::Net::NetConnection* pNetConnection, result r = E_SUCCESS);
-
- /**
- * This constructor initializes the instance of this class with the specified values.
- *
- * @param[in] memberType The type of the member.
- * @param[in] eventType The type of the WifiDirectGroupClientEvent.
- * @param[in] localDeviceId An Id for a Wi-Fi Direct device.
- * @param[in] pNetConnection The network connection that started with the Wi-Fi Direct net account.
- * @param[in] r The error code.
- *
- * @remarks This method can be used for WIFI_DIRECT_DEVICE_EVENT_DISCONNECTED event.
- */
- _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId,
- const Tizen::Base::String& remoteDeviceMacAddress, result r = E_SUCCESS);
-
-
- /**
- * Sets the group member instance.
- *
- * @param[in] pGroupMember The WifiDirectGroupMember instance.
- *
- * @remark This takes the ownership of @c arg. So arg should be created on a heap and should not be deleted.
- */
- void SetGroupMember(WifiDirectGroupMember* pGroupMember);
-
- /**
- * Gets the group member instance.
- *
- * @return WifiDirectGroupMember Group member instance.
- *
- */
- WifiDirectGroupMember* GetGroupMember(void) const;
+ * This constructor initializes the instance of this class with the specified values.
+ *
+ * @param[in] memberType The type of the member.
+ * @param[in] eventType The type of the WifiDirectGroupClientEvent.
+ * @param[in] localDeviceId An Id for a Wi-Fi Direct device.
+ * @param[in] pNetConnection The network connection that started with the Wi-Fi Direct net account.
+ * @param[in] r The error code.
+ *
+ * @remarks This method can be used for WIFI_DIRECT_GO_EVENT_SERVICE_STARTED event.
+ */
+ _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, Tizen::Net::NetConnection* pNetConnection, result r = E_SUCCESS);
+
+ /**
+ * This constructor initializes the instance of this class with the specified values.
+ *
+ * @param[in] memberType The type of the member.
+ * @param[in] eventType The type of the WifiDirectGroupClientEvent.
+ * @param[in] localDeviceId An Id for a Wi-Fi Direct device.
+ * @param[in] pNetConnection The network connection that started with the Wi-Fi Direct net account.
+ * @param[in] r The error code.
+ *
+ * @remarks This method can be used for WIFI_DIRECT_DEVICE_EVENT_DISCONNECTED event.
+ */
+ _WifiDirectEventArg(_WifiDirectEventType eventType, WifiDirectDeviceId localDeviceId, const Tizen::Base::String& remoteDeviceMacAddress, result r = E_SUCCESS);
+
+
+ /**
+ * Sets the group member instance.
+ *
+ * @param[in] pGroupMember The WifiDirectGroupMember instance.
+ *
+ * @remark This takes the ownership of @c arg. So arg should be created on a heap and should not be deleted.
+ */
+ void SetGroupMember(WifiDirectGroupMember* pGroupMember);
+
+ /**
+ * Gets the group member instance.
+ *
+ * @return WifiDirectGroupMember Group member instance.
+ *
+ */
+ WifiDirectGroupMember* GetGroupMember(void) const;
/**
* Gets the event type.
* @return Pointer to the WifiDirectDeviceInfo object
*
*/
- WifiDirectDeviceInfo* GetDeviceInfo(void) const;
+ WifiDirectDeviceInfo* GetDeviceInfo(void) const;
/**
* Gets the WifiDirectGroupMemberType.
*/
void SetDeviceInfoList(Tizen::Base::Collection::IList* pDeviceInfoList);
- /**
+ /**
* Gets the reason of Wi-Fi Direct group client association termination.
*
* @return The reason of association termination
/**
- * Gets the network connection that started with the Wi-Fi Direct net account.
- *
- * @return The network connection
- *
- */
+ * Gets the network connection that started with the Wi-Fi Direct net account.
+ *
+ * @return The network connection
+ *
+ */
Tizen::Net::NetConnection* GetNetConnection(void) const;
/**
- * Gets the mac address of remote device.
- *
- * @return The mac address
- *
- */
+ * Gets the mac address of remote device.
+ *
+ * @return The mac address
+ *
+ */
Tizen::Base::String GetMacAddress(void) const;
- /**
- * Copying of objects using this copy assignment operator is allowed.
- *
- * @param[in] rhs An instance of %_WifiDirectEventArg
- */
+ /**
+ * Copying of objects using this copy assignment operator is allowed.
+ *
+ * @param[in] rhs An instance of %_WifiDirectEventArg
+ */
_WifiDirectEventArg& operator =(const _WifiDirectEventArg& rhs);
private:
- _WifiDirectEventType __eventType;
- WifiDirectDeviceId __localDeviceId;
- result __error;
+ _WifiDirectEventType __eventType;
+ WifiDirectDeviceId __localDeviceId;
+ result __error;
- WifiDirectGroupInfo* __pGroupInfo;
- WifiDirectDeviceInfo* __pDeviceInfo;
- Tizen::Base::Collection::ArrayList* __pDeviceInfoList;
+ std::unique_ptr<WifiDirectGroupInfo> __pGroupInfo;
+ std::unique_ptr<WifiDirectDeviceInfo> __pDeviceInfo;
+ std::unique_ptr<Tizen::Base::Collection::ArrayList> __pDeviceInfoList;
- WifiDirectGroupMemberType __wifiDirectGroupMemberType;
- WifiDirectAssociationTerminationReason __disassociationReason;
+ WifiDirectGroupMemberType __wifiDirectGroupMemberType;
+ WifiDirectAssociationTerminationReason __disassociationReason;
- Tizen::Net::NetConnection* __pNetConnection;
- Tizen::Base::String __remoteDeviceMacAddress;
- WifiDirectGroupMember* __pGroupMember;
+ Tizen::Net::NetConnection* __pNetConnection;
+ Tizen::Base::String __remoteDeviceMacAddress;
+ WifiDirectGroupMember* __pGroupMember;
}; // _WifiDirectEventArg
-}}}// Tizen::Net::Wifi
+}}} // Tizen::Net::Wifi
#endif // _FNET_WIFI_INTERNAL_WIFI_DIRECT_EVENT_ARG_H_
-
namespace Tizen { namespace Net { namespace Wifi
{
-////////////////////////////////////////////////////////////////////////////
-// Lifecycle : Public
_WifiDirectGroupClientEvent::_WifiDirectGroupClientEvent(void)
{
}
result
_WifiDirectGroupClientEvent::Construct(void)
{
- return _Event::Initialize();
+ return _Event::Initialize();
}
-////////////////////////////////////////////////////////////////////////////////
-/// Operation : Protected
-
void
_WifiDirectGroupClientEvent::FireImpl(Tizen::Base::Runtime::IEventListener& listener, const Tizen::Base::Runtime::IEventArg& arg)
{
- const _WifiDirectEventArg* pArg = dynamic_cast<const _WifiDirectEventArg*>(&arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pArg != null, E_INVALID_ARG, "[E_INVALID_ARG] The argument is a null pointer.");
-
- result r = pArg->GetError();
- SysLog(NID_NET_WIFI, "The result value of IEventArg is %s.", GetErrorMessage(r));
-
- IWifiDirectGroupClientListener* pGroupClientListener = dynamic_cast<IWifiDirectGroupClientListener*>(&listener);
-
- if (pGroupClientListener != null)
- {
- _WifiDirectEventType eventType = pArg->GetEventType();
- WifiDirectDeviceId localDeviceId = pArg->GetDeviceId();
-
- switch (eventType)
- {
- case WIFI_DIRECT_GC_EVENT_DISASSOCIATED:
- SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GC_EVENT_DISASSOCIATED)");
- {
- WifiDirectAssociationTerminationReason reason = pArg->GetDisassociationReason();
- pGroupClientListener->OnWifiDirectAssociationTerminated(localDeviceId, reason, r);
- }
- break;
- case WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED:
- SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED)");
- {
- WifiDirectDeviceInfo* pGroupOwnerInfo = pArg->GetDeviceInfo();
- pGroupClientListener->OnWifiDirectGroupOwnerInfoReceived(localDeviceId, *pGroupOwnerInfo, r);
- }
- break;
- case WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED:
- SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED)");
- {
- IList* pGroupMemberInfoList = pArg->GetDeviceInfoList();
- pGroupClientListener->OnWifiDirectAllGroupMemberInfoReceivedN(localDeviceId, pGroupMemberInfoList, r);
- }
- break;
- default:
- SysLog(NID_NET_WIFI, "An undefined external WifiDirectGroupClient event occurs. (Type: %d)",eventType);
- SysAssert(false);
- }
- }
- else
- {
- SysLog(NID_NET_WIFI, "The result of a dynamic_cast operation is null for external GC listener.");
- }
+ const _WifiDirectEventArg* pArg = dynamic_cast< const _WifiDirectEventArg* >(&arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pArg != null, E_INVALID_ARG, "[E_INVALID_ARG] The argument is a null pointer.");
+
+ result r = pArg->GetError();
+ SysLog(NID_NET_WIFI, "The result value of IEventArg is %s.", GetErrorMessage(r));
+
+ IWifiDirectGroupClientListener* pGroupClientListener = dynamic_cast< IWifiDirectGroupClientListener* >(&listener);
+ SysTryReturnVoidResult(NID_NET_WIFI, pGroupClientListener != null, E_INVALID_ARG, "[E_INVALID_ARG] The listener argument is invalid.");
+
+ _WifiDirectEventType eventType = pArg->GetEventType();
+ WifiDirectDeviceId localDeviceId = pArg->GetDeviceId();
+
+ switch (eventType)
+ {
+ case WIFI_DIRECT_GC_EVENT_DISASSOCIATED:
+ SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GC_EVENT_DISASSOCIATED)");
+ {
+ WifiDirectAssociationTerminationReason reason = pArg->GetDisassociationReason();
+ pGroupClientListener->OnWifiDirectAssociationTerminated(localDeviceId, reason, r);
+ }
+ break;
+
+ case WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED:
+ SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED)");
+ {
+ WifiDirectDeviceInfo* pGroupOwnerInfo = pArg->GetDeviceInfo();
+ pGroupClientListener->OnWifiDirectGroupOwnerInfoReceived(localDeviceId, *pGroupOwnerInfo, r);
+ }
+ break;
+
+ case WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED:
+ SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED)");
+ {
+ IList* pGroupMemberInfoList = pArg->GetDeviceInfoList();
+ pGroupClientListener->OnWifiDirectAllGroupMemberInfoReceivedN(localDeviceId, pGroupMemberInfoList, r);
+ }
+ break;
+
+ default:
+ SysLog(NID_NET_WIFI, "An undefined external WifiDirectGroupClient event occurs. (Type: %d)", eventType);
+ SysAssert(false);
+ }
}
} } } // Tizen::Net::Wifi
#ifndef _FNET_WIFI_INTERNAL_WIFI_DIRECT_GROUP_CLIENT_EVENT_H_
#define _FNET_WIFI_INTERNAL_WIFI_DIRECT_GROUP_CLIENT_EVENT_H_
-// Includes
#include <FBaseResult.h>
#include <FBaseRt_Event.h>
*/
class _WifiDirectGroupClientEvent
- : public Tizen::Base::Runtime::_Event
+ : public Tizen::Base::Runtime::_Event
{
public:
- /**
- * The object is not fully constructed after this constructor is called. For full construction,
- * the Construct() method must be called right after calling this constructor.
- */
- _WifiDirectGroupClientEvent(void);
+ /**
+ * The object is not fully constructed after this constructor is called. For full construction,
+ * the Construct() method must be called right after calling this constructor.
+ */
+ _WifiDirectGroupClientEvent(void);
- /**
- * This destructor overrides Tizen::Base::Runtime::_Event::~_Event().
- */
- virtual ~_WifiDirectGroupClientEvent(void);
+ /**
+ * This destructor overrides Tizen::Base::Runtime::_Event::~_Event().
+ */
+ virtual ~_WifiDirectGroupClientEvent(void);
- /**
- * Initializes this instance.
- */
- result Construct(void);
+ /**
+ * Initializes this instance.
+ */
+ result Construct(void);
protected:
- /**
- * Checks the arg and finds out the type of event. After that this method calls appropriate pListener's method.
- *
- * @return A result code.
- * @param[in] listener It is a event listener related to this WifiDirectGroupClient event.
- * @param[in] arg It is an argument-like instance of WifiDirectGroupClient event retransmitted to the listener's method as an argument.
- * @exception E_SUCCESS The method is successful.
- * @exception E_INVALID_ARG The argument passed to a method contains an invalid value.@n
- */
- void FireImpl(Tizen::Base::Runtime::IEventListener& listener, const Tizen::Base::Runtime::IEventArg& arg);
+ /**
+ * Checks the arg and finds out the type of event. After that this method calls appropriate pListener's method.
+ *
+ * @return A result code.
+ * @param[in] listener It is a event listener related to this WifiDirectGroupClient event.
+ * @param[in] arg It is an argument-like instance of WifiDirectGroupClient event retransmitted to the listener's method as an argument.
+ * @exception E_SUCCESS The method is successful.
+ * @exception E_INVALID_ARG The argument passed to a method contains an invalid value.@n
+ */
+ void FireImpl(Tizen::Base::Runtime::IEventListener& listener, const Tizen::Base::Runtime::IEventArg& arg);
private:
+ /**
+ * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
+ *
+ * @param[in] rhs An instance of %_WifiDirectGroupClientEvent
+ */
+ _WifiDirectGroupClientEvent(const _WifiDirectGroupClientEvent& rhs);
- /**
- * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
- *
- * @since 2.0
- *
- * @param[in] rhs An instance of %_WifiDirectGroupClientEvent
- */
- _WifiDirectGroupClientEvent(const _WifiDirectGroupClientEvent& rhs);
-
- /**
- * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
- *
- * @param[in] rhs An instance of %_WifiDirectGroupClientEvent
- */
- _WifiDirectGroupClientEvent& operator =(const _WifiDirectGroupClientEvent& rhs);
+ /**
+ * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
+ *
+ * @param[in] rhs An instance of %_WifiDirectGroupClientEvent
+ */
+ _WifiDirectGroupClientEvent& operator =(const _WifiDirectGroupClientEvent& rhs);
}; // _WifiDirectGroupClientEvent
}}} // Tizen::Net::Wifi
* @brief This is the implementation file for the _WifiDirectGroupClientImpl class.
* This header file contains implementation of the _WifiDirectGroupClientImpl class.
*/
-
+#include <unique_ptr.h>
#include <FNetNetAccountManager.h>
#include <FNetNetConnection.h>
#include <FNetSockSocket.h>
#include "FNetWifi_WifiDirectGroupClientEvent.h"
#include "FNetWifi_WifiDirectEventArg.h"
+using namespace std;
using namespace Tizen::Base;
using namespace Tizen::Net;
using namespace Tizen::Net::Wifi;
using namespace Tizen::Base::Collection;
using namespace Tizen::Base::Utility;
-namespace Tizen { namespace Net { namespace Wifi
+namespace Tizen { namespace Net { namespace Wifi
{
static const int MAX_RETRY_COUNT = 3;
static const int MAX_REQUEST_TIMEOUT = 3;
-////////////////////////////////////////////////////////////////////////////////
-/// Lifecycle : Public
_WifiDirectGroupClientImpl::_WifiDirectGroupClientImpl(void)
- : __localDeviceId(-1)
- , __pWifiDirectDeviceImpl(null)
- , __pWifiDirectSystemAdapter(null)
- , __pNetConnection(null)
- , __pClientSocket(null)
- , __pLocalIpAddress(null)
- , __portNumber(DEFAULT_PORT)
- , __refCount(1)
- , __currentState(WIFI_DIRECT_DEVICE_INFO_REQUEST_READY)
- , __retryCount(0)
+ : __localDeviceId(-1)
+ , __pWifiDirectDeviceImpl(null)
+ , __pWifiDirectSystemAdapter(null)
+ , __pNetConnection(null)
+ , __pClientSocket(null)
+ , __pLocalIpAddress(null)
+ , __portNumber(DEFAULT_PORT)
+ , __refCount(1)
+ , __currentState(WIFI_DIRECT_DEVICE_INFO_REQUEST_READY)
+ , __retryCount(0)
{
}
-////////////////////////////////////////////////////////////////////////////////
-/// Operation : Public
result
_WifiDirectGroupClientImpl::Disassociate(void)
{
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
-
- result r = E_SUCCESS;
-
- _WifiDirectDeviceState currentState = __pWifiDirectDeviceImpl->GetWifiDirectDeviceCurrentState();
-
- SysTryReturnResult(NID_NET_WIFI, currentState != WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING, E_IN_PROGRESS,
- "The currently device state is DISCONNECTING.");
-
- if (currentState == WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT)
- {
- r = __pWifiDirectSystemAdapter->Disassociate();
-
- if (r == E_SUCCESS)
- {
- __pWifiDirectDeviceImpl->SetWifiDirectDeviceCurrentState(WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING);
- }
- }
- else
- {
- r = E_INVALID_OPERATION;
- }
-
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
- return r;
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
+
+ result r = E_SUCCESS;
+
+ _WifiDirectDeviceState currentState = __pWifiDirectDeviceImpl->GetWifiDirectDeviceCurrentState();
+
+ SysTryReturnResult(NID_NET_WIFI, currentState != WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING, E_IN_PROGRESS,
+ "The currently device state is DISCONNECTING.");
+
+ if (currentState == WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT)
+ {
+ r = __pWifiDirectSystemAdapter->Disassociate();
+
+ if (r == E_SUCCESS)
+ {
+ __pWifiDirectDeviceImpl->SetWifiDirectDeviceCurrentState(WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING);
+ }
+ }
+ else
+ {
+ r = E_INVALID_OPERATION;
+ }
+
+ return r;
}
result
_WifiDirectGroupClientImpl::RequestGroupOwnerInfo(int portNumber)
{
- return RequestInfoProcess(WIFI_DIRECT_OWNER_INFO_REQUEST, portNumber);
+ return RequestInfoProcess(WIFI_DIRECT_OWNER_INFO_REQUEST, portNumber);
}
result
_WifiDirectGroupClientImpl::RequestAllGroupMemberInfo(int portNumber)
{
- return RequestInfoProcess(WIFI_DIRECT_MEMBER_INFO_REQUEST, portNumber);
+ return RequestInfoProcess(WIFI_DIRECT_MEMBER_INFO_REQUEST, portNumber);
}
-//////////////////////////////////////////////////////////////////////////
-// Internal Function
-
result
_WifiDirectGroupClientImpl::RequestInfoProcess(_WifiDirectMemberInfoRequestStateType requestType, int portNumber)
{
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
-
- result r = E_SUCCESS;
- _WifiDirectDeviceState deviceImplState = __pWifiDirectDeviceImpl->GetWifiDirectDeviceCurrentState();
-
- SysTryReturnResult(NID_NET_WIFI, !((portNumber < MIN_PORT_NUMBER) || (portNumber > MAX_PORT_NUMBER)), E_OUT_OF_RANGE,
- "The specified argument is not in a valid range.");
- SysTryReturnResult(NID_NET_WIFI, deviceImplState == WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT, E_INVALID_OPERATION,
- "The operation is not allowed in this state.");
-
- __stateMutex.Acquire();
-
- if (__currentState == WIFI_DIRECT_DEVICE_INFO_REQUEST_READY)
- {
- __currentState = requestType;
- __portNumber = portNumber;
- }
- else
- {
- __stateMutex.Release();
- r = E_IN_PROGRESS;
- SysLogException(NID_NET_WIFI, E_IN_PROGRESS, "[%s] Propagating.", GetErrorMessage(r));
- return r;
-
- }
-
- __stateMutex.Release();
-
- if (__pNetConnection->GetConnectionState() != NET_CONNECTION_STATE_STARTED)
- {
- r = __pNetConnection->Start();
- }
-
- r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Failed to start NetConnection.", GetErrorMessage(r));
-
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
- return r;
-CATCH:
- __currentState = WIFI_DIRECT_DEVICE_INFO_REQUEST_READY;
- __portNumber = DEFAULT_PORT;
- SysLog(NID_NET_WIFI, "Exit, [CurrentState:%s], [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetErrorMessage(r));
- return r;
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
+
+ result r = E_SUCCESS;
+ _WifiDirectDeviceState deviceImplState = __pWifiDirectDeviceImpl->GetWifiDirectDeviceCurrentState();
+
+ SysTryReturnResult(NID_NET_WIFI, !((portNumber < MIN_PORT_NUMBER) || (portNumber > MAX_PORT_NUMBER)), E_OUT_OF_RANGE,
+ "The specified argument is not in a valid range.");
+ SysTryReturnResult(NID_NET_WIFI, deviceImplState == WIFI_DIRECT_DEVICE_INTERNAL_CREATED_CLIENT, E_INVALID_OPERATION,
+ "The operation is not allowed in this state.");
+
+ __stateMutex.Acquire();
+
+ if (__currentState == WIFI_DIRECT_DEVICE_INFO_REQUEST_READY)
+ {
+ __currentState = requestType;
+ __portNumber = portNumber;
+ }
+ else
+ {
+ __stateMutex.Release();
+ r = E_IN_PROGRESS;
+ SysLogException(NID_NET_WIFI, E_IN_PROGRESS, "[%s] Propagating.", GetErrorMessage(r));
+ return r;
+
+ }
+
+ __stateMutex.Release();
+
+ if (__pNetConnection->GetConnectionState() != NET_CONNECTION_STATE_STARTED)
+ {
+ r = __pNetConnection->Start();
+ }
+
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
+
+ if (IsFailed(r))
+ {
+ SysLogException(NID_NET_WIFI, r, "[%s] Failed to start NetConnection.", GetErrorMessage(r));
+ __currentState = WIFI_DIRECT_DEVICE_INFO_REQUEST_READY;
+ __portNumber = DEFAULT_PORT;
+ }
+
+ return r;
}
void
_WifiDirectGroupClientImpl::OnNetConnectionStarted(NetConnection& netConnection, result r)
{
- SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "[DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [Action Result :%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
-
- const NetConnectionInfo* pNetConnectionInfo = null;
- result res = E_SYSTEM;
-
- if (__currentState != WIFI_DIRECT_DEVICE_INFO_REQUEST_READY)
- {
- if (r == E_SUCCESS)
- {
- // Get the local IP address using
- pNetConnectionInfo = netConnection.GetNetConnectionInfo();
-
- if (pNetConnectionInfo != null)
- {
- __pLocalIpAddress = pNetConnectionInfo->GetLocalAddress()->CloneN();
- }
-
- res = StartSocketServer();
-
- if (IsFailed(res))
- {
- goto CATCH;
- }
-
- if (__currentState == WIFI_DIRECT_OWNER_INFO_REQUEST)
- {
- res = SendRequestGroupMemberInfoMessage(REQUEST_OWNER_INFO);
- }
- else if (__currentState == WIFI_DIRECT_MEMBER_INFO_REQUEST)
- {
- res = SendRequestGroupMemberInfoMessage(REQUEST_ALL_MEMBER_INFO);
- }
-
- if (IsFailed(res))
- {
- goto CATCH;
- }
-
- res = StartTimer();
- if (IsFailed(res))
- {
- goto CATCH;
- }
- }
- else
- {
- goto CATCH;
- }
- }
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(res));
- return;
+ SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
+
+ const NetConnectionInfo* pNetConnectionInfo = null;
+ result res = E_SYSTEM;
+
+ if (__currentState != WIFI_DIRECT_DEVICE_INFO_REQUEST_READY)
+ {
+ if (r == E_SUCCESS)
+ {
+ // Get the local IP address using
+ pNetConnectionInfo = netConnection.GetNetConnectionInfo();
+
+ if (pNetConnectionInfo != null)
+ {
+ __pLocalIpAddress = pNetConnectionInfo->GetLocalAddress()->CloneN();
+ }
+
+ res = StartSocketServer();
+
+ if (IsFailed(res))
+ {
+ goto CATCH;
+ }
+
+ if (__currentState == WIFI_DIRECT_OWNER_INFO_REQUEST)
+ {
+ res = SendRequestGroupMemberInfoMessage(REQUEST_OWNER_INFO);
+ }
+ else if (__currentState == WIFI_DIRECT_MEMBER_INFO_REQUEST)
+ {
+ res = SendRequestGroupMemberInfoMessage(REQUEST_ALL_MEMBER_INFO);
+ }
+
+ if (IsFailed(res))
+ {
+ goto CATCH;
+ }
+
+ res = StartTimer();
+ if (IsFailed(res))
+ {
+ goto CATCH;
+ }
+ }
+ else
+ {
+ goto CATCH;
+ }
+ }
+
+ return;
CATCH:
- __currentState = WIFI_DIRECT_DEVICE_INFO_REQUEST_READY;
- if (__pLocalIpAddress != null)
- {
- delete __pLocalIpAddress;
- __pLocalIpAddress = null;
- }
- _WifiDirectEventArg* pEventArg = null;
-
- if (__currentState == WIFI_DIRECT_OWNER_INFO_REQUEST
- || __currentState == WIFI_DIRECT_OWNER_INFO_REQUEST_SENT)
- {
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED,
- __localDeviceId, WifiDirectDeviceInfo(), E_SYSTEM);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- }
- else if (__currentState == WIFI_DIRECT_MEMBER_INFO_REQUEST
- || __currentState == WIFI_DIRECT_MEMBER_INFO_REQUEST_SENT)
- {
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED,
- __localDeviceId, (Tizen::Base::Collection::IList*)null, E_SYSTEM);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- }
- __pWifiDirectDeviceImpl->GetWifiDirectGroupClientEvent()->Fire(*pEventArg);
-
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(res));
- }
+ __currentState = WIFI_DIRECT_DEVICE_INFO_REQUEST_READY;
+ if (__pLocalIpAddress != null)
+ {
+ delete __pLocalIpAddress;
+ __pLocalIpAddress = null;
+ }
+ _WifiDirectEventArg* pEventArg = null;
+
+ if (__currentState == WIFI_DIRECT_OWNER_INFO_REQUEST
+ || __currentState == WIFI_DIRECT_OWNER_INFO_REQUEST_SENT)
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED,
+ __localDeviceId, WifiDirectDeviceInfo(), E_SYSTEM);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ }
+ else if (__currentState == WIFI_DIRECT_MEMBER_INFO_REQUEST
+ || __currentState == WIFI_DIRECT_MEMBER_INFO_REQUEST_SENT)
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED,
+ __localDeviceId, (Tizen::Base::Collection::IList*) null, E_SYSTEM);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ }
+ __pWifiDirectDeviceImpl->GetWifiDirectGroupClientEvent()->Fire(*pEventArg);
+}
void
_WifiDirectGroupClientImpl::OnNetConnectionStopped(NetConnection& netConnection, result r)
{
- SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "[DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [Action Result :%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
-
- __currentState = WIFI_DIRECT_DEVICE_INFO_REQUEST_READY;
-
- StopTimer();
- ResetRetryCount();
- if (__pLocalIpAddress != null)
- {
- delete __pLocalIpAddress;
- __pLocalIpAddress = null;
- }
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
+ SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
+
+ __currentState = WIFI_DIRECT_DEVICE_INFO_REQUEST_READY;
+
+ StopTimer();
+ ResetRetryCount();
+ if (__pLocalIpAddress != null)
+ {
+ delete __pLocalIpAddress;
+ __pLocalIpAddress = null;
+ }
}
void
_WifiDirectGroupClientImpl::OnSocketReadyToReceive(Socket& socket)
{
- SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "[DeviceImplCurrentState:%s] [ClientImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
- SysTryReturnVoidResult(NID_NET_WIFI, __currentState != WIFI_DIRECT_DEVICE_INFO_REQUEST_READY, E_SYSTEM,
- "[CurrentState: %s]", GetStringOfCurrentState());
+ SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- result r = E_SUCCESS;
- {
- unsigned long arg = 0;
+ SysTryReturnVoidResult(NID_NET_WIFI, __currentState != WIFI_DIRECT_DEVICE_INFO_REQUEST_READY, E_SYSTEM, "The current state should not be REQUEST_READY");
- r = socket.Ioctl(NET_SOCKET_FIONREAD, arg);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Socket ioctl for read has failed.", GetErrorMessage(r));
+ result r = E_SUCCESS;
- Ip4Address peerAddr("0");
- NetEndPoint peerEndPoint(peerAddr, 0);
+ unsigned long arg = 0;
- ByteBuffer rxBuffer;
- rxBuffer.Construct(arg);
+ r = socket.Ioctl(NET_SOCKET_FIONREAD, arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS, r, "[%s] Socket ioctl for read has failed.", GetErrorMessage(r));
- r = socket.ReceiveFrom(rxBuffer, peerEndPoint);
+ Ip4Address peerAddr("0");
+ NetEndPoint peerEndPoint(peerAddr, 0);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Receiving data from socket has failed.", GetErrorMessage(r));
+ ByteBuffer rxBuffer;
+ rxBuffer.Construct(arg);
- IpAddress* pPeerAddress = peerEndPoint.GetAddress();
+ r = socket.ReceiveFrom(rxBuffer, peerEndPoint);
- SysTryCatch(NID_NET_WIFI, pPeerAddress != null, , E_SYSTEM, "[E_SYSTEM] PeerAddress is invalid.");
+ SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS, r, "[%s] Receiving data from socket has failed.", GetErrorMessage(r));
- // Receives only IPV4 Address
- SysTryCatch(NID_NET_WIFI, pPeerAddress->GetNetAddressFamily() == NET_AF_IPV4, , E_SYSTEM,
- "[E_SYSTEM] PeerAddress is not IPV4.");
+ IpAddress* pPeerAddress = peerEndPoint.GetAddress();
- String ipAddr = pPeerAddress->ToString();
- // Skip my address
- SysTryCatch(NID_NET_WIFI, __pLocalIpAddress != null && __pLocalIpAddress->ToString() != ipAddr, , E_SYSTEM,
- "[E_SYSTEM] broadcast received from my address.");
+ SysTryReturnVoidResult(NID_NET_WIFI, pPeerAddress != null, E_SYSTEM, "[E_SYSTEM] PeerAddress is invalid.");
- rxBuffer.Flip();
+ // Receives only IPV4 Address
+ SysTryReturnVoidResult(NID_NET_WIFI, pPeerAddress->GetNetAddressFamily() == NET_AF_IPV4, E_SYSTEM,
+ "[E_SYSTEM] PeerAddress is not IPV4.");
- String messageString(reinterpret_cast<const char*>(rxBuffer.GetPointer()));
- SysTryCatch(NID_NET_WIFI, messageString.IsEmpty() != true, , E_SYSTEM, "[E_SYSTEM] Message is Empty.");
- SysLog(NID_NET_WIFI, "Full message : %ls", messageString.GetPointer());
- // process the message received
- _WIFIDIRECT_MESSAGE_TYPE messageType = _WifiDirectUtility::GetMessageType(messageString);
+ String ipAddr = pPeerAddress->ToString();
+ // Skip my address
+ SysTryReturnVoidResult(NID_NET_WIFI, __pLocalIpAddress != null && __pLocalIpAddress->ToString() != ipAddr, E_SYSTEM,
+ "[E_SYSTEM] broadcast received from my address.");
- SysTryCatch(NID_NET_WIFI, messageType == RESPONSE_OWNER_INFO || messageType == RESPONSE_ALL_MEMBER_INFO, , E_SYSTEM,
- "[E_SYSTEM] Invalid message received.");
+ rxBuffer.Flip();
- IList* pList = ParsingMessageN(messageType, messageString);
+ String messageString(reinterpret_cast< const char* >(rxBuffer.GetPointer()));
+ SysTryReturnVoidResult(NID_NET_WIFI, messageString.IsEmpty() != true, E_SYSTEM, "[E_SYSTEM] Message is Empty.");
+ SysLog(NID_NET_WIFI, "Full message : %ls", messageString.GetPointer());
+ // process the message received
+ _WIFIDIRECT_MESSAGE_TYPE messageType = _WifiDirectUtility::GetMessageType(messageString);
- if (pList == null)
- {
- r = E_SYSTEM;
- }
+ SysTryReturnVoidResult(NID_NET_WIFI, messageType == RESPONSE_OWNER_INFO || messageType == RESPONSE_ALL_MEMBER_INFO, E_SYSTEM,
+ "[E_SYSTEM] Invalid message received.");
- _WifiDirectEventArg* pEventArg = null;
+ IList* pList = ParsingMessageN(messageType, messageString);
- if (messageType == RESPONSE_OWNER_INFO)
- {
- WifiDirectDeviceInfo* pGroupOwnerInfo = null;
+ if (pList == null)
+ {
+ r = E_SYSTEM;
+ }
- if (pList != null)
- {
- pGroupOwnerInfo = static_cast< WifiDirectDeviceInfo* >(pList->GetAt(0));
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED,
- __localDeviceId, *pGroupOwnerInfo, r);
+ _WifiDirectEventArg* pEventArg = null;
- pList->RemoveAll(true);
- delete pList;
- }
- else
- {
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED,
- __localDeviceId, WifiDirectDeviceInfo(), r);
- }
- }
- else
- {
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED,
- __localDeviceId, pList, r);
- }
+ if (messageType == RESPONSE_OWNER_INFO)
+ {
+ WifiDirectDeviceInfo* pGroupOwnerInfo = null;
- __pWifiDirectDeviceImpl->GetWifiDirectGroupClientEvent()->Fire(*pEventArg);
- __currentState = WIFI_DIRECT_DEVICE_INFO_REQUEST_READY;
- }
+ if (pList != null)
+ {
+ pGroupOwnerInfo = static_cast< WifiDirectDeviceInfo* >(pList->GetAt(0));
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED,
+ __localDeviceId, *pGroupOwnerInfo, r);
+ delete pList;
+ }
+ else
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED,
+ __localDeviceId, WifiDirectDeviceInfo(), r);
+ }
+ }
+ else
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED,
+ __localDeviceId, pList, r);
+ }
- CleanUpServerSocket();
+ __pWifiDirectDeviceImpl->GetWifiDirectGroupClientEvent()->Fire(*pEventArg);
+ __currentState = WIFI_DIRECT_DEVICE_INFO_REQUEST_READY;
- if (__pNetConnection != null)
- {
- __pNetConnection->Stop();
- }
+ CleanUpServerSocket();
-CATCH:
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
+ if (__pNetConnection != null)
+ {
+ __pNetConnection->Stop();
+ }
}
void
-_WifiDirectGroupClientImpl::OnTimerExpired(Tizen::Base::Runtime::Timer &timer)
+_WifiDirectGroupClientImpl::OnTimerExpired(Tizen::Base::Runtime::Timer& timer)
{
SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "[DeviceImplCurrentState:%s] [ClientImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
result r = E_SUCCESS;
_WifiDirectEventArg* pEventArg = null;
- if (__currentState == WIFI_DIRECT_OWNER_INFO_REQUEST_SENT)
- {
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED,
- __localDeviceId, WifiDirectDeviceInfo(), r);
- }
- else if (__currentState == WIFI_DIRECT_MEMBER_INFO_REQUEST_SENT)
- {
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED,
- __localDeviceId, (Tizen::Base::Collection::IList*)null, r);
- }
- __pWifiDirectDeviceImpl->GetWifiDirectGroupClientEvent()->Fire(*pEventArg);
+ if (__currentState == WIFI_DIRECT_OWNER_INFO_REQUEST_SENT)
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_OWNER_INFO_RESPONDED,
+ __localDeviceId, WifiDirectDeviceInfo(), r);
+ }
+ else if (__currentState == WIFI_DIRECT_MEMBER_INFO_REQUEST_SENT)
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_GROUP_MEMBER_INFO_LIST_RESPONDED,
+ __localDeviceId, (Tizen::Base::Collection::IList*) null, r);
+ }
+ __pWifiDirectDeviceImpl->GetWifiDirectGroupClientEvent()->Fire(*pEventArg);
CleanUpServerSocket();
__currentState = WIFI_DIRECT_DEVICE_INFO_REQUEST_READY;
}
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
return;
}
result
_WifiDirectGroupClientImpl::CreateNetConnection(void)
{
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
result r = E_SUCCESS;
NetAccountManager accountManager;
r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to add listner of Netconnection.");
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
return r;
}
result
_WifiDirectGroupClientImpl::SendRequestGroupMemberInfoMessage(_WIFIDIRECT_MESSAGE_TYPE messageType)
{
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
String broadcastMessage;
result r = E_SUCCESS;
// Makes NetEndPoint which the message will be sent to
NetEndPoint recvEndPoint(broadcastAddress, __portNumber);
r = GetLastResult();
- TryCatch(r == E_SUCCESS, , "[%s] Failed to create NetEndPoint.", GetErrorMessage(r));
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_INVALID_ARG);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to create NetEndPoint.");
broadcastMessage.Clear();
-
broadcastMessage.Append(messageType);
pTxBuffer = StringUtil::StringToUtf8N(broadcastMessage);
r = GetLastResult();
- TryCatch(r == E_SUCCESS, , "[%s] Failed to convert String.", GetErrorMessage(r));
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_INVALID_ARG);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to convert String.");
r = __pClientSocket->SendTo(*pTxBuffer, recvEndPoint);
- TryCatch(r == E_SUCCESS, , "[%s] Failed to send.", GetErrorMessage(r));
+ delete pTxBuffer;
+
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to send.");
if (messageType == REQUEST_OWNER_INFO)
{
__currentState = WIFI_DIRECT_MEMBER_INFO_REQUEST_SENT;
}
-CATCH:
- r = TransExceptionsExclusive ( r , E_SYSTEM, E_SUCCESS , E_OUT_OF_MEMORY );
-
- if (pTxBuffer != null)
- {
- delete pTxBuffer;
- pTxBuffer = null;
- }
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
return r;
}
_WifiDirectGroupClientImpl::StartSocketServer(void)
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
result r = E_SUCCESS;
Ip4Address localAddr(L"0"); // IN_ADDR_ANY
NetEndPoint localEndPoint(localAddr, __portNumber);
- __pClientSocket = new (std::nothrow) Socket();
- TryCatch(__pClientSocket, r = E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ unique_ptr<Socket> pClientSocket(new (std::nothrow) Socket());
+ SysTryReturnResult(NID_NET_WIFI, pClientSocket != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
- r = __pClientSocket->Construct(*__pNetConnection, NET_SOCKET_AF_IPV4, NET_SOCKET_TYPE_DATAGRAM, NET_SOCKET_PROTOCOL_UDP);
- TryCatch(r == E_SUCCESS, , "[%s] Socket Construction has failed.", GetErrorMessage(r));
+ r = pClientSocket->Construct(*__pNetConnection, NET_SOCKET_AF_IPV4, NET_SOCKET_TYPE_DATAGRAM, NET_SOCKET_PROTOCOL_UDP);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_ALREADY_BOUND, E_OUT_OF_MEMORY);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Socket Construction has failed.");
- r = __pClientSocket->SetSockOpt(NET_SOCKET_SOL_SOCKET, NET_SOCKET_SO_BROADCAST, 1);
- TryCatch(r == E_SUCCESS, , "[%s] Setting socket option has failed.", GetErrorMessage(r));
+ r = pClientSocket->SetSockOpt(NET_SOCKET_SOL_SOCKET, NET_SOCKET_SO_BROADCAST, 1);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_ALREADY_BOUND, E_OUT_OF_MEMORY);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Setting socket option has failed.");
- r = __pClientSocket->AddSocketListener(*dynamic_cast<ISocketEventListener*>(this));
- TryCatch(r == E_SUCCESS, , "[%s] Adding SocketListener has failed.", GetErrorMessage(r));
+ r = pClientSocket->AddSocketListener(*this);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_ALREADY_BOUND, E_OUT_OF_MEMORY);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Adding SocketListener has failed.");
- r = __pClientSocket->AsyncSelectByListener(NET_SOCKET_EVENT_READ | NET_SOCKET_EVENT_WRITE | NET_SOCKET_EVENT_CLOSE);
- TryCatch(r == E_SUCCESS, , "[%s] Setting the socket to the asynchronous mode has failed.", GetErrorMessage(r));
+ r = pClientSocket->AsyncSelectByListener(NET_SOCKET_EVENT_READ | NET_SOCKET_EVENT_WRITE | NET_SOCKET_EVENT_CLOSE);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_ALREADY_BOUND, E_OUT_OF_MEMORY);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Setting the socket to the asynchronous mode has failed.");
- r = __pClientSocket->Bind(localEndPoint);
- TryCatch(r == E_SUCCESS, , "[%s] Binding UDP socket has Failed.", GetErrorMessage(r));
+ r = pClientSocket->Bind(localEndPoint);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_ALREADY_BOUND, E_OUT_OF_MEMORY);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Binding UDP socket has Failed.", GetErrorMessage(r));
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
- return r;
-
-CATCH:
- r = TransExceptionsExclusive ( r , E_SYSTEM, E_ALREADY_BOUND , E_OUT_OF_MEMORY );
+ __pClientSocket = pClientSocket.release();
- if (__pClientSocket != null)
- {
- delete __pClientSocket;
- __pClientSocket = null;
- }
-
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
return r;
}
_WifiDirectGroupClientImpl::ParsingMessageN(_WIFIDIRECT_MESSAGE_TYPE messageType, const Tizen::Base::String& message)
{
SysTryReturn(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
-
- result r = E_SUCCESS;
int currentIndex = 0;
tempString = Message2String(currentIndex, message);
Tizen::Base::Integer::Decode(tempString, static_cast< int& >(deviceCount));
- SysTryCatch(NID_NET_WIFI, deviceCount != 0, , E_SYSTEM, "The device count is 0.");
+ SysTryReturn(NID_NET_WIFI, deviceCount != 0, null, E_SYSTEM, "The device count is 0.");
- pWifiDirectDeviceInfoList = new (std::nothrow) ArrayList();
- SysTryCatch(NID_NET_WIFI, pWifiDirectDeviceInfoList != null && (pWifiDirectDeviceInfoList->Construct(deviceCount) == E_SUCCESS),
- , E_SYSTEM, "Failed to construct ArrayList");
+ pWifiDirectDeviceInfoList = new (std::nothrow) ArrayList(SingleObjectDeleter);
+ SysTryReturn(NID_NET_WIFI, pWifiDirectDeviceInfoList != null && (pWifiDirectDeviceInfoList->Construct(deviceCount) == E_SUCCESS),
+ null, E_SYSTEM, "Failed to construct ArrayList");
- for (int i = 0 ; i < deviceCount ; i++)
+ for (int i = 0; i < deviceCount; i++)
{
pWifiDirectDeviceInfo = GenerateWifiDirectDeviceInfoN(message, currentIndex);
pWifiDirectDeviceInfoList->Add(*pWifiDirectDeviceInfo);
- }// end of for(int i = 0 ; i < deviceCount ; i++)
+ } // end of for(int i = 0 ; i < deviceCount ; i++)
return pWifiDirectDeviceInfoList;
-
-CATCH:
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
- return null;
}
String
SysLog(NID_NET_WIFI, "Getting the starting index of message has failed. [result:%s]", GetErrorMessage(r));
}
- r = message.SubString(currentIndex, nextIndex-currentIndex, tempString);
+ r = message.SubString(currentIndex, nextIndex - currentIndex, tempString);
if (IsFailed(r))
{
{
// e.g. device name or ssid -> "08MyDevice",
int nextIndex = 0;
- String tempString("");
+ String tempString;
result r = E_SUCCESS;
int len = 0;
_WifiDirectGroupClientImpl::StartTimer(void)
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
result r = E_SUCCESS;
- r = __retryTimer.Start(MAX_REQUEST_TIMEOUT*1000);
- TryReturn(r == E_SUCCESS, r, "[%s] Failed to start timer.", GetErrorMessage(r));
+ r = __retryTimer.Start(MAX_REQUEST_TIMEOUT * 1000);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to start timer.");
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [ClientImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
return r;
}
result r = E_SUCCESS;
r = __retryTimer.Cancel();
- TryReturn(r == E_SUCCESS, r, "Failed to cancel timer. (r = %s)", GetErrorMessage(r));
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to cancel timer.");
return r;
}
{
__retryCount = 0;
}
-////////////////////////////////////////////////////////////////////////////////
-/// Private
int
_WifiDirectGroupClientImpl::AddRef(void)
const char*
_WifiDirectGroupClientImpl::GetStringOfCurrentState(void) const
{
- const char* pStateStr[] = { "DEVICE_INFO_REQUEST_READY",
- "OWNER_INFO_REQUEST",
- "MEMBER_INFO_REQUEST",
- "OWNER_INFO_REQUEST_SENT",
- "MEMBER_INFO_REQUEST_SENT"};
+ const char* pStateStr[] =
+ {
+ "DEVICE_INFO_REQUEST_READY",
+ "OWNER_INFO_REQUEST",
+ "MEMBER_INFO_REQUEST",
+ "OWNER_INFO_REQUEST_SENT",
+ "MEMBER_INFO_REQUEST_SENT"
+ };
return pStateStr[__currentState];
}
-////////////////////////////////////////////////////////////////////////////////
-/// Lifecycle : Private
-
_WifiDirectGroupClientImpl::~_WifiDirectGroupClientImpl(void)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
CleanUpServerSocket();
- if (__pLocalIpAddress != null)
- {
- delete __pLocalIpAddress;
- __pLocalIpAddress = null;
- }
+ delete __pLocalIpAddress;
if (__pNetConnection != null)
{
r = __pNetConnection->RemoveNetConnectionListener(*this);
-
- if (IsFailed(r))
- {
- SysLog(NID_NET_WIFI, "Removing a NetConnectionListener has failed. [result:%s]", GetErrorMessage(r));
- }
+ SysTryLog(NID_NET_WIFI, r == E_SUCCESS, "[%s] Removing a NetConnectionListener has failed.", GetErrorMessage(r));
r = __pNetConnection->Close();
-
- if (IsFailed(r))
- {
- SysLog(NID_NET_WIFI, "Closing NetConncetion has failed. [result:%s]", GetErrorMessage(r));
- }
+ SysTryLog(NID_NET_WIFI, r == E_SUCCESS, "[%s] Closing NetConncetion has failed.", GetErrorMessage(r));
delete __pNetConnection;
- __pNetConnection = null;
}
}
result
_WifiDirectGroupClientImpl::Construct(WifiDirectDeviceId localDeviceId, _WifiDirectDeviceImpl& wifiDirectDeviceImpl, bool enableIpInfoService /*= true */)
{
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectSystemAdapter == null, E_SYSTEM,
- "This instance has already been constructed.");
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectSystemAdapter == null, E_SYSTEM,
+ "This instance has already been constructed.");
- __pWifiDirectSystemAdapter = _WifiDirectSystemAdapter::GetInstance();
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectSystemAdapter != null, E_SYSTEM,
- "Failed to acquire the instance of _WifiDirectSystemAdapter.");
+ __pWifiDirectSystemAdapter = _WifiDirectSystemAdapter::GetInstance();
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectSystemAdapter != null, E_SYSTEM,
+ "Failed to acquire the instance of _WifiDirectSystemAdapter.");
__localDeviceId = localDeviceId;
__pWifiDirectDeviceImpl = &wifiDirectDeviceImpl;
result r = E_SUCCESS;
if (enableIpInfoService == true)
- {
- r = CreateNetConnection();
- r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
- TryReturn(r == E_SUCCESS, r, "[%s] Failed to create netconnection.", GetErrorMessage(r));
- }
+ {
+ r = CreateNetConnection();
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
+ TryReturn(r == E_SUCCESS, r, "[%s] Failed to create netconnection.", GetErrorMessage(r));
+ }
- r = __stateMutex.Create();
+ r = __stateMutex.Create();
r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to create mutex.");
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to create mutex.");
- r = __retryTimer.Construct(*this);
- TryReturn(r == E_SUCCESS, r, "[%s] Failed to Construct timer.", GetErrorMessage(r));
+ r = __retryTimer.Construct(*this);
+ TryReturn(r == E_SUCCESS, r, "[%s] Failed to Construct timer.", GetErrorMessage(r));
return r;
}
{
if (__pClientSocket != null)
{
- __pClientSocket->RemoveSocketListener(*this);
+ __pClientSocket->RemoveSocketListener(*this);
__pClientSocket->Close();
delete __pClientSocket;
- __pClientSocket = null;
}
}
-
-//////////////////////////////////////////////////////////////////////////
-// static member function
WifiDirectGroupClient*
_WifiDirectGroupClientImpl::GetWifiDirectGroupClientInstanceN(_WifiDirectGroupClientImpl& groupClientImpl)
{
- WifiDirectGroupClient* pWifiDirectGroupClient = new (std::nothrow) WifiDirectGroupClient();
- SysTryReturn(NID_NET_WIFI, pWifiDirectGroupClient != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- SysLog(NID_NET_WIFI, "Enter");
+ unique_ptr<WifiDirectGroupClient> pWifiDirectGroupClient(new (std::nothrow) WifiDirectGroupClient());
+ SysTryReturn(NID_NET_WIFI, pWifiDirectGroupClient != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- result r = pWifiDirectGroupClient->Construct(groupClientImpl);
+ result r = pWifiDirectGroupClient->Construct(groupClientImpl);
- if (IsFailed(r))
- {
- SysLogException(NID_NET_WIFI, GetLastResult(), "[%s] Failed to construct WifiDirectGroupOwner.", GetErrorMessage(r));
- delete pWifiDirectGroupClient;
- pWifiDirectGroupClient = null;
- }
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r,"[%s] Failed to construct WifiDirectGroupClient.", GetErrorMessage(r));
- return pWifiDirectGroupClient;
+ return pWifiDirectGroupClient.release();
}
_WifiDirectGroupClientImpl*
_WifiDirectGroupClientImpl::GetInstance(WifiDirectGroupClient& wifiDirectGroupClient)
{
- return wifiDirectGroupClient.__pWifiDirectGroupClientImpl;
+ return wifiDirectGroupClient.__pWifiDirectGroupClientImpl;
}
const _WifiDirectGroupClientImpl*
_WifiDirectGroupClientImpl::GetInstance(const WifiDirectGroupClient& wifiDirectGroupClient)
{
- return wifiDirectGroupClient.__pWifiDirectGroupClientImpl;
+ return wifiDirectGroupClient.__pWifiDirectGroupClientImpl;
}
-}}}// Tizen::Net::Wifi
+}}} // Tizen::Net::Wifi
using namespace Tizen::Base;
-namespace Tizen { namespace Net { namespace Wifi {
+namespace Tizen { namespace Net { namespace Wifi
+{
static const int MAX_WIFI_DIRECT_SSID_LENGTH = 32;
-////////////////////////////////////////////////////////////////////////////////
-/// Lifecycle : Public
_WifiDirectGroupInfoImpl::_WifiDirectGroupInfoImpl(void)
- : __isAutoGroupOwnerMode(false)
- , __isHiddenMode(false)
- , __groupOwnerIntent(MAX_WIFI_DIRECT_GROUP_OWNER_INTENT)
- , __maxNumberOfClient(MAX_WIFI_DIRECT_CONNECTED_CLIENTS)
- , __ssid("")
- , __bssId("")
- , __radioChannel(WIFI_RADIO_CHANNEL_UNKNOWN)
+ : __isAutoGroupOwnerMode(false)
+ , __isHiddenMode(false)
+ , __groupOwnerIntent(MAX_WIFI_DIRECT_GROUP_OWNER_INTENT)
+ , __maxNumberOfClient(MAX_WIFI_DIRECT_CONNECTED_CLIENTS)
+ , __radioChannel(WIFI_RADIO_CHANNEL_UNKNOWN)
{
}
_WifiDirectGroupInfoImpl::_WifiDirectGroupInfoImpl(const _WifiDirectGroupInfoImpl& value)
- : __isAutoGroupOwnerMode(value.__isAutoGroupOwnerMode)
- , __isHiddenMode(value.__isHiddenMode)
- , __groupOwnerIntent(value.__groupOwnerIntent)
- , __maxNumberOfClient(value.__maxNumberOfClient)
- , __ssid(value.__ssid)
- , __bssId(value.__bssId)
- , __radioChannel(value.__radioChannel)
+ : __isAutoGroupOwnerMode(value.__isAutoGroupOwnerMode)
+ , __isHiddenMode(value.__isHiddenMode)
+ , __groupOwnerIntent(value.__groupOwnerIntent)
+ , __maxNumberOfClient(value.__maxNumberOfClient)
+ , __ssid(value.__ssid)
+ , __bssId(value.__bssId)
+ , __radioChannel(value.__radioChannel)
{
}
}
_WifiDirectGroupInfoImpl&
-_WifiDirectGroupInfoImpl::operator=(const _WifiDirectGroupInfoImpl& rhs)
+_WifiDirectGroupInfoImpl::operator =(const _WifiDirectGroupInfoImpl& rhs)
{
- if (this != &rhs)
- {
- __isAutoGroupOwnerMode = rhs.__isAutoGroupOwnerMode;
- __isHiddenMode = rhs.__isHiddenMode;
- __groupOwnerIntent = rhs.__groupOwnerIntent;
- __maxNumberOfClient = rhs.__maxNumberOfClient;
- __ssid = rhs.__ssid;
- __bssId = rhs.__bssId;
- __radioChannel = rhs.__radioChannel;
- }
- return *this;
+ if (this != &rhs)
+ {
+ __isAutoGroupOwnerMode = rhs.__isAutoGroupOwnerMode;
+ __isHiddenMode = rhs.__isHiddenMode;
+ __groupOwnerIntent = rhs.__groupOwnerIntent;
+ __maxNumberOfClient = rhs.__maxNumberOfClient;
+ __ssid = rhs.__ssid;
+ __bssId = rhs.__bssId;
+ __radioChannel = rhs.__radioChannel;
+ }
+ return *this;
}
-
-////////////////////////////////////////////////////////////////////////////////
-/// Operation : Public
-
bool
_WifiDirectGroupInfoImpl::GetAutonomousGroupOwnerMode(void) const
{
int
_WifiDirectGroupInfoImpl::GetGroupOwnerIntent(void) const
{
- return __groupOwnerIntent;
+ return __groupOwnerIntent;
}
int
result
_WifiDirectGroupInfoImpl::SetGroupOwnerIntent(int intent)
{
- SysTryReturnResult(NID_NET_WIFI, intent >= 0 && intent <= MAX_WIFI_DIRECT_GROUP_OWNER_INTENT,
- E_INVALID_ARG, "The argument is invalid. The intent value is %d.", intent);
+ SysTryReturnResult(NID_NET_WIFI, intent >= 0 && intent <= MAX_WIFI_DIRECT_GROUP_OWNER_INTENT,
+ E_INVALID_ARG, "The argument is invalid. The intent value is %d.", intent);
__groupOwnerIntent = intent;
result
_WifiDirectGroupInfoImpl::SetMaxNumberOfClients(int numberOfClient)
{
- SysTryReturnResult(NID_NET_WIFI, numberOfClient >= 0 && numberOfClient <= MAX_WIFI_DIRECT_CONNECTED_CLIENTS,
- E_INVALID_ARG, "The argument is invalid. The value of numberOfClient is %d.", numberOfClient);
+ SysTryReturnResult(NID_NET_WIFI, numberOfClient >= 0 && numberOfClient <= MAX_WIFI_DIRECT_CONNECTED_CLIENTS,
+ E_INVALID_ARG, "The argument is invalid. The value of numberOfClient is %d.", numberOfClient);
__maxNumberOfClient = numberOfClient;
}
result
-_WifiDirectGroupInfoImpl::SetSsid(const String &ssid)
+_WifiDirectGroupInfoImpl::SetSsid(const String& ssid)
{
int ssidLength = ssid.GetLength();
SysTryReturnResult(NID_NET_WIFI, ssidLength > 0 && ssidLength <= MAX_WIFI_DIRECT_SSID_LENGTH,
- E_INVALID_ARG, "The argument is invalid. The length of ssid is %d.", ssidLength);
+ E_INVALID_ARG, "The argument is invalid. The length of ssid is %d.", ssidLength);
- __ssid = String(ssid);
+ __ssid = ssid;
return E_SUCCESS;
}
bool
_WifiDirectGroupInfoImpl::Equals(const Tizen::Base::Object& obj) const
{
- const _WifiDirectGroupInfoImpl* pOther = dynamic_cast<const _WifiDirectGroupInfoImpl*>(&obj);
+ const _WifiDirectGroupInfoImpl* pOther = dynamic_cast< const _WifiDirectGroupInfoImpl* >(&obj);
- if (pOther == null
- || __isAutoGroupOwnerMode != pOther->__isAutoGroupOwnerMode
- || __isHiddenMode != pOther->__isHiddenMode
- || __groupOwnerIntent != pOther->__groupOwnerIntent
- || __maxNumberOfClient != pOther->__maxNumberOfClient
- || !__ssid.Equals(pOther->__ssid)
- || !__bssId.Equals(pOther->__bssId)
- || __radioChannel != pOther->__radioChannel )
- {
- return false;
- }
+ if (pOther == null
+ || __isAutoGroupOwnerMode != pOther->__isAutoGroupOwnerMode
+ || __isHiddenMode != pOther->__isHiddenMode
+ || __groupOwnerIntent != pOther->__groupOwnerIntent
+ || __maxNumberOfClient != pOther->__maxNumberOfClient
+ || !__ssid.Equals(pOther->__ssid)
+ || !__bssId.Equals(pOther->__bssId)
+ || __radioChannel != pOther->__radioChannel)
+ {
+ return false;
+ }
- return true;
+ return true;
}
int
_WifiDirectGroupInfoImpl::GetHashCode(void) const
{
- return __maxNumberOfClient ^ __groupOwnerIntent ^ __ssid.GetHashCode() ^ __bssId.GetHashCode();
+ return __maxNumberOfClient ^ __groupOwnerIntent ^ __ssid.GetHashCode() ^ __bssId.GetHashCode();
}
WifiDirectGroupInfo*
-_WifiDirectGroupInfoImpl::CreateWifiDirectGroupInfoInstanceN(_WifiDirectGroupInfoImpl &wifiDirectGroupInfoImpl)
+_WifiDirectGroupInfoImpl::CreateWifiDirectGroupInfoInstanceN(_WifiDirectGroupInfoImpl& wifiDirectGroupInfoImpl)
{
WifiDirectGroupInfo* pWifiDirectGroupInfo = new (std::nothrow) WifiDirectGroupInfo();
- SysTryReturn(NID_NET_WIFI, pWifiDirectGroupInfo != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ SysTryReturn(NID_NET_WIFI, pWifiDirectGroupInfo != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
*(_WifiDirectGroupInfoImpl::GetInstance(*pWifiDirectGroupInfo)) = wifiDirectGroupInfoImpl;
}
void
-_WifiDirectGroupInfoImpl::SetBssId(const Tizen::Base::String &bssId)
+_WifiDirectGroupInfoImpl::SetBssId(const Tizen::Base::String& bssId)
{
__bssId = bssId;
}
void
-_WifiDirectGroupInfoImpl::SetOperatingChannel(const WifiRadioChannel &radioChannel)
+_WifiDirectGroupInfoImpl::SetOperatingChannel(const WifiRadioChannel& radioChannel)
{
__radioChannel = radioChannel;
}
void
-_WifiDirectGroupInfoImpl::SetBssIdOfWifiDirectGroupInfo(WifiDirectGroupInfo& wifiDirectGroupInfo, const Tizen::Base::String &bssId)
+_WifiDirectGroupInfoImpl::SetBssIdOfWifiDirectGroupInfo(WifiDirectGroupInfo& wifiDirectGroupInfo, const Tizen::Base::String& bssId)
{
wifiDirectGroupInfo.__pWifiDirectGroupInfoImpl->SetBssId(bssId);
}
_WifiDirectGroupInfoImpl::GetInstance(WifiDirectGroupInfo& wifiDirectGroupInfo)
{
- return wifiDirectGroupInfo.__pWifiDirectGroupInfoImpl;
+ return wifiDirectGroupInfo.__pWifiDirectGroupInfoImpl;
}
const _WifiDirectGroupInfoImpl*
_WifiDirectGroupInfoImpl::GetInstance(const WifiDirectGroupInfo& wifiDirectGroupInfo)
{
- return wifiDirectGroupInfo.__pWifiDirectGroupInfoImpl;
+ return wifiDirectGroupInfo.__pWifiDirectGroupInfoImpl;
}
-} } }// Tizen::Net::Wifi
+} } } // Tizen::Net::Wifi
namespace Tizen { namespace Net { namespace Wifi
{
-////////////////////////////////////////////////////////////////////////////
-// Lifecycle : Public
_WifiDirectGroupOwnerEvent::_WifiDirectGroupOwnerEvent(void)
{
}
result
_WifiDirectGroupOwnerEvent::Construct(void)
{
- return _Event::Initialize();
+ return _Event::Initialize();
}
-////////////////////////////////////////////////////////////////////////////////
-/// Operation : Protected
-
void
_WifiDirectGroupOwnerEvent::FireImpl(Tizen::Base::Runtime::IEventListener& listener, const Tizen::Base::Runtime::IEventArg& arg)
{
- const _WifiDirectEventArg* pArg = dynamic_cast<const _WifiDirectEventArg*>(&arg);
- SysTryReturnVoidResult(NID_NET_WIFI, pArg != null, E_INVALID_ARG, "[E_INVALID_ARG] The argument is a null pointer.");
-
- result r = pArg->GetError();
- SysLog(NID_NET_WIFI, "The result value of IEventArg is %s.", GetErrorMessage(r));
-
- IWifiDirectGroupOwnerListener* pGroupOwnerListener = dynamic_cast<IWifiDirectGroupOwnerListener*>(&listener);
-
- if (pGroupOwnerListener != null)
- {
- _WifiDirectEventType eventType = pArg->GetEventType();
- WifiDirectDeviceId localDeviceId = pArg->GetDeviceId();
-
- switch (eventType)
- {
- case WIFI_DIRECT_GO_EVENT_CLIENT_ASSOCIATED:
- SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GO_EVENT_CLIENT_ASSOCIATED)");
- {
- WifiDirectDeviceInfo* pClientDeviceInfo = pArg->GetDeviceInfo();
- pGroupOwnerListener->OnWifiDirectClientAssociated(localDeviceId, *pClientDeviceInfo);
- }
- break;
- case WIFI_DIRECT_GO_EVENT_CLIENT_DISASSOCIATED:
- SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GO_EVENT_CLIENT_DISASSOCIATED)");
- {
- WifiDirectAssociationTerminationReason reason = pArg->GetDisassociationReason();
- WifiDirectDeviceInfo* pClientDeviceInfo = pArg->GetDeviceInfo();
- pGroupOwnerListener->OnWifiDirectClientDisassociated(localDeviceId, *pClientDeviceInfo, reason);
- }
- break;
- case WIFI_DIRECT_GO_EVENT_GROUP_DESTROYED:
- case WIFI_DIRECT_DEVICE_EVENT_GROUP_LEFT:
-
- SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GO_EVENT_GROUP_DESTROYED)");
- pGroupOwnerListener->OnWifiDirectGroupDestroyed(localDeviceId, r);
- break;
- case WIFI_DIRECT_GO_EVENT_SERVICE_STARTED:
- SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GO_EVENT_SERVICE_STARTED)");
- {
- const Tizen::Net::NetConnection* pNetConnection = pArg->GetNetConnection();
- pGroupOwnerListener->OnWifiDirectGroupMemberInfoServiceStarted(localDeviceId, pNetConnection, r);
- }
- break;
- case WIFI_DIRECT_GO_EVENT_SERVICE_STOPPED:
- SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GO_EVENT_SERVICE_STOPPED)");
- pGroupOwnerListener->OnWifiDirectGroupMemberInfoServiceStopped(localDeviceId, r);
- break;
- default:
- SysLog(NID_NET_WIFI, "An undefined external WifiDirectGroupOwner event occurs. (Type: %d)",eventType);
- SysAssert(false);
- }
- }
- else
- {
- SysLog(NID_NET_WIFI, "The result of a dynamic_cast operation is null for external GO listener.");
- }
+ const _WifiDirectEventArg* pArg = dynamic_cast< const _WifiDirectEventArg* >(&arg);
+ SysTryReturnVoidResult(NID_NET_WIFI, pArg != null, E_INVALID_ARG, "[E_INVALID_ARG] The argument is a null pointer.");
+
+ result r = pArg->GetError();
+ SysLog(NID_NET_WIFI, "The result value of IEventArg is %s.", GetErrorMessage(r));
+
+ IWifiDirectGroupOwnerListener* pGroupOwnerListener = dynamic_cast< IWifiDirectGroupOwnerListener* >(&listener);
+ SysTryReturnVoidResult(NID_NET_WIFI, pGroupOwnerListener != null, E_INVALID_ARG, "[E_INVALID_ARG] The listener argument is invalid.");
+
+ _WifiDirectEventType eventType = pArg->GetEventType();
+ WifiDirectDeviceId localDeviceId = pArg->GetDeviceId();
+
+ switch (eventType)
+ {
+ case WIFI_DIRECT_GO_EVENT_CLIENT_ASSOCIATED:
+ SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GO_EVENT_CLIENT_ASSOCIATED)");
+ {
+ WifiDirectDeviceInfo* pClientDeviceInfo = pArg->GetDeviceInfo();
+ pGroupOwnerListener->OnWifiDirectClientAssociated(localDeviceId, *pClientDeviceInfo);
+ }
+ break;
+
+ case WIFI_DIRECT_GO_EVENT_CLIENT_DISASSOCIATED:
+ SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GO_EVENT_CLIENT_DISASSOCIATED)");
+ {
+ WifiDirectAssociationTerminationReason reason = pArg->GetDisassociationReason();
+ WifiDirectDeviceInfo* pClientDeviceInfo = pArg->GetDeviceInfo();
+ pGroupOwnerListener->OnWifiDirectClientDisassociated(localDeviceId, *pClientDeviceInfo, reason);
+ }
+ break;
+
+ case WIFI_DIRECT_GO_EVENT_GROUP_DESTROYED:
+ case WIFI_DIRECT_DEVICE_EVENT_GROUP_LEFT:
+
+ SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GO_EVENT_GROUP_DESTROYED)");
+ pGroupOwnerListener->OnWifiDirectGroupDestroyed(localDeviceId, r);
+ break;
+
+ case WIFI_DIRECT_GO_EVENT_SERVICE_STARTED:
+ SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GO_EVENT_SERVICE_STARTED)");
+ {
+ const Tizen::Net::NetConnection* pNetConnection = pArg->GetNetConnection();
+ pGroupOwnerListener->OnWifiDirectGroupMemberInfoServiceStarted(localDeviceId, pNetConnection, r);
+ }
+ break;
+
+ case WIFI_DIRECT_GO_EVENT_SERVICE_STOPPED:
+ SysLog(NID_NET_WIFI, "Firing External Event (Type: WIFI_DIRECT_GO_EVENT_SERVICE_STOPPED)");
+ pGroupOwnerListener->OnWifiDirectGroupMemberInfoServiceStopped(localDeviceId, r);
+ break;
+
+ default:
+ SysLog(NID_NET_WIFI, "An undefined external WifiDirectGroupOwner event occurs. (Type: %d)", eventType);
+ SysAssert(false);
+ }
}
} } } // Tizen::Net::Wifi
#ifndef _FNET_WIFI_INTERNAL_WIFI_DIRECT_GROUP_OWNER_EVENT_H_
#define _FNET_WIFI_INTERNAL_WIFI_DIRECT_GROUP_OWNER_EVENT_H_
-// Includes
#include <FBaseResult.h>
#include <FBaseRt_Event.h>
*/
class _WifiDirectGroupOwnerEvent
- : public Tizen::Base::Runtime::_Event
+ : public Tizen::Base::Runtime::_Event
{
public:
- /**
- * The object is not fully constructed after this constructor is called. For full construction,
- * the Construct() method must be called right after calling this constructor.
- */
- _WifiDirectGroupOwnerEvent(void);
+ /**
+ * The object is not fully constructed after this constructor is called. For full construction,
+ * the Construct() method must be called right after calling this constructor.
+ */
+ _WifiDirectGroupOwnerEvent(void);
- /**
- * This destructor overrides Tizen::Base::Runtime::_Event::~_Event().
- */
- virtual ~_WifiDirectGroupOwnerEvent(void);
+ /**
+ * This destructor overrides Tizen::Base::Runtime::_Event::~_Event().
+ */
+ virtual ~_WifiDirectGroupOwnerEvent(void);
- /**
- * Initializes this instance.
- */
- result Construct(void);
+ /**
+ * Initializes this instance.
+ */
+ result Construct(void);
protected:
- /**
- * Checks the arg and finds out the type of event. After that this method calls appropriate pListener's method.
- *
- * @return A result code.
- * @param[in] listener It is a event listener related to this WifiDirectOwner event.
- * @param[in] arg It is an argument-like instance of WifiDirectOwner event retransmitted to the listener's method as an argument.
- * @exception E_SUCCESS The method is successful.
- * @exception E_INVALID_ARG The argument passed to a method contains an invalid value.@n
- */
- void FireImpl(Tizen::Base::Runtime::IEventListener& listener, const Tizen::Base::Runtime::IEventArg& arg);
+ /**
+ * Checks the arg and finds out the type of event. After that this method calls appropriate pListener's method.
+ *
+ * @return A result code.
+ * @param[in] listener It is a event listener related to this WifiDirectOwner event.
+ * @param[in] arg It is an argument-like instance of WifiDirectOwner event retransmitted to the listener's method as an argument.
+ * @exception E_SUCCESS The method is successful.
+ * @exception E_INVALID_ARG The argument passed to a method contains an invalid value.@n
+ */
+ void FireImpl(Tizen::Base::Runtime::IEventListener& listener, const Tizen::Base::Runtime::IEventArg& arg);
private:
- /**
- * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
- *
- * @since 2.0
- *
- * @param[in] rhs An instance of %_WifiDirectGroupOwnerEvent
- */
- _WifiDirectGroupOwnerEvent(const _WifiDirectGroupOwnerEvent& rhs);
-
- /**
- * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
- *
- * @param[in] rhs An instance of %_WifiDirectGroupOwnerEvent
- */
- _WifiDirectGroupOwnerEvent& operator =(const _WifiDirectGroupOwnerEvent& rhs);
+ /**
+ * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
+ *
+ * @param[in] rhs An instance of %_WifiDirectGroupOwnerEvent
+ */
+ _WifiDirectGroupOwnerEvent(const _WifiDirectGroupOwnerEvent& rhs);
+
+ /**
+ * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
+ *
+ * @param[in] rhs An instance of %_WifiDirectGroupOwnerEvent
+ */
+ _WifiDirectGroupOwnerEvent& operator =(const _WifiDirectGroupOwnerEvent& rhs);
}; // _WifiDirectGroupOwnerEvent
}}} // Tizen::Net::Wifi
*
* This header file contains implementation of the _WifiDirectGroupOwnerImpl.
*/
+
+#include <unique_ptr.h>
+#include <FBaseSysLog.h>
#include <FBaseColArrayList.h>
#include <FNetNetAccountManager.h>
#include <FNetNetConnection.h>
#include <FNetWifiWifiDirectGroupOwner.h>
#include <FNetWifiWifiDirectDeviceInfo.h>
#include <FNetWifiIWifiDirectGroupOwnerListener.h>
-#include <FBaseSysLog.h>
#include "FNetWifi_WifiDirectGroupOwnerImpl.h"
#include "FNetWifi_WifiDirectDeviceInfoImpl.h"
#include "FNetWifi_WifiDirectDeviceImpl.h"
#include "FNetWifi_WifiDirectGroupOwnerEvent.h"
#include "FNetWifi_WifiDirectEventArg.h"
-
+using namespace std;
using namespace Tizen::Base;
using namespace Tizen::Net;
using namespace Tizen::Net::Wifi;
using namespace Tizen::Base::Collection;
using namespace Tizen::Base::Utility;
-namespace Tizen { namespace Net { namespace Wifi {
+namespace Tizen { namespace Net { namespace Wifi
+{
-////////////////////////////////////////////////////////////////////////////////
-/// Lifecycle : Public
_WifiDirectGroupOwnerImpl::_WifiDirectGroupOwnerImpl(void)
- : __localDeviceId(-1)
- , __pWifiDirectDeviceImpl(null)
- , __pWifiDirectSystemAdapter(null)
- , __pNetConnection(null)
- , __pServerSocket(null)
- , __pLocalIpAddress(null)
- , __portNumber(DEFAULT_PORT)
- , __currentState(WIFI_DIRECT_MEMBER_INFO_SERVICE_IDLE)
- , __isDisconnect(false)
+ : __localDeviceId(-1)
+ , __pWifiDirectDeviceImpl(null)
+ , __pWifiDirectSystemAdapter(null)
+ , __pNetConnection(null)
+ , __pServerSocket(null)
+ , __pLocalIpAddress(null)
+ , __portNumber(DEFAULT_PORT)
+ , __currentState(WIFI_DIRECT_MEMBER_INFO_SERVICE_IDLE)
+ , __isDisconnect(false)
{
}
-////////////////////////////////////////////////////////////////////////////////
-/// Operation : Public
-
result
_WifiDirectGroupOwnerImpl::DestroyGroup(void)
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
result r = E_SUCCESS;
_WifiDirectDeviceState currentState = __pWifiDirectDeviceImpl->GetWifiDirectDeviceCurrentState();
SysTryReturnResult(NID_NET_WIFI, currentState != WIFI_DIRECT_DEVICE_INTERNAL_DISCONNECTING, E_IN_PROGRESS,
- "DeleteGroup process is in progress.");
+ "DeleteGroup process is in progress.");
if (currentState == WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER)
{
r = E_INVALID_OPERATION;
}
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
return r;
}
_WifiDirectGroupOwnerImpl::Disconnect(const WifiDirectDeviceInfo& wifiDirectRemoteDeviceInfo)
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
result r = E_SUCCESS;
r = E_INVALID_OPERATION;
}
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
return r;
}
IList*
_WifiDirectGroupOwnerImpl::GetAllGroupMemberInfoListN(void)
{
- SysTryReturn(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
- ClearLastResult();
+ SysTryReturn(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- result r = E_SUCCESS;
+ ClearLastResult();
- IList* pWifiDirectGroupMemberInfoList = null;
+ IList* pWifiDirectGroupMemberInfoList = null;
_WifiDirectDeviceState currentState = __pWifiDirectDeviceImpl->GetWifiDirectDeviceCurrentState();
if (currentState == WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER)
{
- pWifiDirectGroupMemberInfoList = __pWifiDirectSystemAdapter->GetAllGroupMemberInfoImplListN();
+ pWifiDirectGroupMemberInfoList = __pWifiDirectSystemAdapter->GetAllGroupMemberInfoImplListN();
}
else
- {
- r = E_INVALID_OPERATION;
- }
-
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
+ {
+ SetLastResult(E_INVALID_OPERATION);
+ }
return pWifiDirectGroupMemberInfoList;
}
_WifiDirectGroupOwnerImpl::StartGroupMemberInfoService(const int portNumber)
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
result r = E_SUCCESS;
_WifiDirectDeviceState currentState = __pWifiDirectDeviceImpl->GetWifiDirectDeviceCurrentState();
SysTryReturnResult(NID_NET_WIFI, currentState == WIFI_DIRECT_DEVICE_INTERNAL_CREATED_OWNER, E_INVALID_OPERATION,
- "The operation is not allowed in this state.");
+ "The operation is not allowed in this state.");
switch (__currentState)
{
+ case WIFI_DIRECT_MEMBER_INFO_SERVICE_IDLE:
+ break;
case WIFI_DIRECT_MEMBER_INFO_SERVICE_STARTING:
r = E_IN_PROGRESS;
break;
+
case WIFI_DIRECT_MEMBER_INFO_SERVICE_STARTED:
case WIFI_DIRECT_MEMBER_INFO_SERVICE_STOPPING:
r = E_INVALID_OPERATION;
break;
default:
- SysLog(NID_NET_WIFI, "Exception case occurred.");
+ SysLog(NID_NET_WIFI, "Exception case occurred.");
break;
}
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] The operation is not allowed in this state.", GetErrorMessage(r));
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "The operation is not allowed in this state.");
SysTryReturnResult(NID_NET_WIFI, !((portNumber < MIN_PORT_NUMBER) || (portNumber > MAX_PORT_NUMBER)), E_OUT_OF_RANGE,
- "The specified argument is not in a valid range.");
+ "The specified argument is not in a valid range.");
r = __pNetConnection->Start();
r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Failed to start NetConnection.", GetErrorMessage(r));
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to start NetConnection.");
__currentState = WIFI_DIRECT_MEMBER_INFO_SERVICE_STARTING;
- __portNumber = portNumber;
+ __portNumber = portNumber;
-CATCH:
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
return r;
}
result
_WifiDirectGroupOwnerImpl::StopGroupMemberInfoService(void)
{
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
-
- result r = E_SUCCESS;
-
- switch (__currentState)
- {
- case WIFI_DIRECT_MEMBER_INFO_SERVICE_IDLE:
- case WIFI_DIRECT_MEMBER_INFO_SERVICE_STARTING:
- r = E_INVALID_OPERATION;
- break;
- case WIFI_DIRECT_MEMBER_INFO_SERVICE_STOPPING:
- r = E_IN_PROGRESS;
- break;
- default:
- SysLog(NID_NET_WIFI, "Exception case occurred.");
- break;
- }
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] The operation is not allowed in this state.", GetErrorMessage(r));
-
- CleanUpServerSocket();
-
- if (__pNetConnection != null)
- {
- r = __pNetConnection->Stop();
-
- if (r == E_SUCCESS)
- {
- __currentState = WIFI_DIRECT_MEMBER_INFO_SERVICE_STOPPING;
- }
-
- }
-
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
- return r;
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
+
+ result r = E_SUCCESS;
+
+ switch (__currentState)
+ {
+ case WIFI_DIRECT_MEMBER_INFO_SERVICE_IDLE:
+ case WIFI_DIRECT_MEMBER_INFO_SERVICE_STARTING:
+ r = E_INVALID_OPERATION;
+ break;
+
+ case WIFI_DIRECT_MEMBER_INFO_SERVICE_STOPPING:
+ r = E_IN_PROGRESS;
+ break;
+
+ default:
+ SysLog(NID_NET_WIFI, "Exception case occurred.");
+ break;
+ }
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] The operation is not allowed in this state.", GetErrorMessage(r));
+
+ CleanUpServerSocket();
+
+ if (__pNetConnection != null)
+ {
+ r = __pNetConnection->Stop();
+
+ if (r == E_SUCCESS)
+ {
+ __currentState = WIFI_DIRECT_MEMBER_INFO_SERVICE_STOPPING;
+ }
+
+ }
+
+ return r;
}
result
_WifiDirectGroupOwnerImpl::StartGroupMemberSocketServer(void)
{
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter ,[DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
-
- result r = E_SUCCESS;
-
- Ip4Address localAddr(L"0"); // IN_ADDR_ANY
- NetEndPoint localEndPoint(localAddr, __portNumber);
-
- __pServerSocket = new (std::nothrow) Socket();
- SysTryCatch(NID_NET_WIFI, __pServerSocket != null, r = E_OUT_OF_MEMORY, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- r = __pServerSocket->Construct(*__pNetConnection, NET_SOCKET_AF_IPV4, NET_SOCKET_TYPE_DATAGRAM, NET_SOCKET_PROTOCOL_UDP);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Socket Construction has failed.", GetErrorMessage(r));
+ result r = E_SUCCESS;
- r = __pServerSocket->SetSockOpt(NET_SOCKET_SOL_SOCKET, NET_SOCKET_SO_BROADCAST, 1);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Setting socket option has failed.", GetErrorMessage(r));
+ Ip4Address localAddr(L"0"); // IN_ADDR_ANY
+ NetEndPoint localEndPoint(localAddr, __portNumber);
- r = __pServerSocket->AsyncSelectByListener(NET_SOCKET_EVENT_READ | NET_SOCKET_EVENT_WRITE | NET_SOCKET_EVENT_CLOSE);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Setting the socket to the asynchronous mode has failed.", GetErrorMessage(r));
+ unique_ptr<Socket> pServerSocket(new (std::nothrow) Socket());
+ SysTryReturnResult(NID_NET_WIFI, pServerSocket != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
- r = __pServerSocket->Bind(localEndPoint);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Binding UDP socket has Failed.", GetErrorMessage(r));
+ r = pServerSocket->Construct(*__pNetConnection, NET_SOCKET_AF_IPV4, NET_SOCKET_TYPE_DATAGRAM, NET_SOCKET_PROTOCOL_UDP);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_ALREADY_BOUND, E_OUT_OF_MEMORY);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Socket Construction has failed.");
- r = __pServerSocket->AddSocketListener(*this);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Adding SocketListener has failed.", GetErrorMessage(r));
+ r = pServerSocket->SetSockOpt(NET_SOCKET_SOL_SOCKET, NET_SOCKET_SO_BROADCAST, 1);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_ALREADY_BOUND, E_OUT_OF_MEMORY);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Setting socket option has failed.");
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
+ r = pServerSocket->AddSocketListener(*this);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_ALREADY_BOUND, E_OUT_OF_MEMORY);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Adding SocketListener has failed.");
- return r;
+ r = pServerSocket->AsyncSelectByListener(NET_SOCKET_EVENT_READ | NET_SOCKET_EVENT_WRITE | NET_SOCKET_EVENT_CLOSE);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_ALREADY_BOUND, E_OUT_OF_MEMORY);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Setting the socket to the asynchronous mode has failed.");
-CATCH:
- r = TransExceptionsExclusive ( r , E_SYSTEM, E_ALREADY_BOUND , E_OUT_OF_MEMORY );
+ r = pServerSocket->Bind(localEndPoint);
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_ALREADY_BOUND, E_OUT_OF_MEMORY);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Binding UDP socket has Failed.", GetErrorMessage(r));
- if (__pServerSocket != null)
- {
- delete __pServerSocket;
- __pServerSocket = null;
- }
+ __pServerSocket = pServerSocket.release();
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
- return r;
+ return r;
}
void
_WifiDirectGroupOwnerImpl::OnSocketReadyToReceive(Socket& socket)
{
- SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
+ SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- SysTryReturnVoidResult(NID_NET_WIFI, __currentState == WIFI_DIRECT_MEMBER_INFO_SERVICE_STARTED, E_SYSTEM,
- "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] current state is not SERVICE_STARTED",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
+ SysTryReturnVoidResult(NID_NET_WIFI, __currentState == WIFI_DIRECT_MEMBER_INFO_SERVICE_STARTED, E_SYSTEM, "The current state is not SERVICE_STARTED");
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- unsigned long arg = 0;
+ unsigned long arg = 0;
- r = socket.Ioctl(NET_SOCKET_FIONREAD, arg);
+ r = socket.Ioctl(NET_SOCKET_FIONREAD, arg);
r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
- SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS, r,
- "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] Socket ioctl for read has failed. [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
+ SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS, r,
+ "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] Socket ioctl for read has failed. [result:%s]",
+ __pWifiDirectDeviceImpl->GetStringOfDeviceState(), GetStringOfCurrentState(), GetErrorMessage(r));
- Ip4Address peerAddr("0");
- NetEndPoint peerEndPoint(peerAddr, 0);
+ Ip4Address peerAddr("0");
+ NetEndPoint peerEndPoint(peerAddr, 0);
- ByteBuffer rxBuffer;
- rxBuffer.Construct(arg);
+ ByteBuffer rxBuffer;
+ rxBuffer.Construct(arg);
- r = socket.ReceiveFrom(rxBuffer, peerEndPoint);
+ r = socket.ReceiveFrom(rxBuffer, peerEndPoint);
r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
- SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS, r,
- "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] Receiving data from socket has failed. [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
-
- IpAddress* pPeerAddress = peerEndPoint.GetAddress();
- SysTryReturnVoidResult(NID_NET_WIFI, pPeerAddress != null && pPeerAddress->GetNetAddressFamily() == NET_AF_IPV4, E_SYSTEM,
- "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] PeerAddress is null or not IPV4. [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
-
- SysTryReturnVoidResult(NID_NET_WIFI, __pLocalIpAddress != null && __pLocalIpAddress->ToString() != pPeerAddress->ToString(), E_SYSTEM,
- "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] broadcast received from my address.",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
-
- SysLog(NID_NET_WIFI, "Destination IP : %ls, PORT : %d", pPeerAddress->ToString().GetPointer(), peerEndPoint.GetPort());
-
- rxBuffer.Flip();
-
- String messageString(reinterpret_cast<const char*>(rxBuffer.GetPointer()));
-
- // process the message received
- if (!(messageString.IsEmpty()))
- {
- _WIFIDIRECT_MESSAGE_TYPE messageType = _WifiDirectUtility::GetMessageType(messageString);
-
- if (messageType == REQUEST_OWNER_INFO
- || messageType == REQUEST_ALL_MEMBER_INFO)
- {
- SysLog(NID_NET_WIFI, "IP query request received.");
- SendResponseGroupMemberInfoMessage(peerEndPoint, messageType);
- }
- else
- {
- SysLog(NID_NET_WIFI, "Invalid request message received. [message type : %d]", messageType);
- }
- }
- else
- {
- SysLog(NID_NET_WIFI, "Message is Empty.");
- }
-
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
+ SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS, r,
+ "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] Receiving data from socket has failed. [result:%s]",
+ __pWifiDirectDeviceImpl->GetStringOfDeviceState(), GetStringOfCurrentState(), GetErrorMessage(r));
+
+ IpAddress* pPeerAddress = peerEndPoint.GetAddress();
+ SysTryReturnVoidResult(NID_NET_WIFI, pPeerAddress != null && pPeerAddress->GetNetAddressFamily() == NET_AF_IPV4, E_SYSTEM,
+ "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] PeerAddress is null or not IPV4. [result:%s]",
+ __pWifiDirectDeviceImpl->GetStringOfDeviceState(), GetStringOfCurrentState(), GetErrorMessage(r));
+
+ SysTryReturnVoidResult(NID_NET_WIFI, __pLocalIpAddress != null && __pLocalIpAddress->ToString() != pPeerAddress->ToString(), E_SYSTEM,
+ "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] broadcast received from my address.",
+ __pWifiDirectDeviceImpl->GetStringOfDeviceState(), GetStringOfCurrentState());
+
+ SysLog(NID_NET_WIFI, "Destination IP : %ls, PORT : %d", pPeerAddress->ToString().GetPointer(), peerEndPoint.GetPort());
+
+ rxBuffer.Flip();
+
+ String messageString(reinterpret_cast< const char* >(rxBuffer.GetPointer()));
+
+ // process the message received
+ if (!(messageString.IsEmpty()))
+ {
+ _WIFIDIRECT_MESSAGE_TYPE messageType = _WifiDirectUtility::GetMessageType(messageString);
+
+ if (messageType == REQUEST_OWNER_INFO
+ || messageType == REQUEST_ALL_MEMBER_INFO)
+ {
+ SysLog(NID_NET_WIFI, "IP query request received.");
+ SendResponseGroupMemberInfoMessage(peerEndPoint, messageType);
+ }
+ else
+ {
+ SysLog(NID_NET_WIFI, "Invalid request message received. [message type : %d]", messageType);
+ }
+ }
+ else
+ {
+ SysLog(NID_NET_WIFI, "Message is Empty.");
+ }
}
void
_WifiDirectGroupOwnerImpl::SendResponseGroupMemberInfoMessage(const NetEndPoint& recvEndPoint,
- _WIFIDIRECT_MESSAGE_TYPE messageType)
+ _WIFIDIRECT_MESSAGE_TYPE messageType)
{
- SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
-
- result r = E_SUCCESS;
- String responseMessage;
- ByteBuffer* pResponseBuff = null;
- String message;
- WifiDirectDeviceInfo* pWifiDirectDeviceInfo = null;
-
-
- if (messageType == REQUEST_ALL_MEMBER_INFO)
- {
- IList* pGroupMemberInfoList = GetAllGroupMemberInfoListN();
- r = GetLastResult();
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS && pGroupMemberInfoList != null, , r,
- "[%s] Failed to acquire a list of all group member.", GetErrorMessage(r));
-
- int numOfMembers = pGroupMemberInfoList->GetCount();
- SysLog(NID_NET_WIFI, "The number of members is %d.", numOfMembers);
-
- for (int i = 0 ; i < numOfMembers ; i++)
- {
- pWifiDirectDeviceInfo = static_cast< WifiDirectDeviceInfo* >(pGroupMemberInfoList->GetAt(i));
-
- message.Append(MakeMessageFormat(*pWifiDirectDeviceInfo));
- }
-
- pGroupMemberInfoList->RemoveAll(true);
- delete pGroupMemberInfoList;
-
- pWifiDirectDeviceInfo = null;
-
- responseMessage.Append(RESPONSE_ALL_MEMBER_INFO);
- responseMessage.Append(L":");
- responseMessage.Append(numOfMembers); // count of Ip address available
- responseMessage.Append(message);
- }
- else // Respond for the RequestGroupOwnerInfo()
- {
- pWifiDirectDeviceInfo = __pWifiDirectDeviceImpl->GetLocalDeviceInfoN();
- r = GetLastResult();
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS && pWifiDirectDeviceInfo != null, , r,
- "[%s] Failed to acquire WifiDirectDeviceInfo.", GetErrorMessage(r));
-
- message = MakeMessageFormat(*pWifiDirectDeviceInfo);
-
- delete pWifiDirectDeviceInfo;
- pWifiDirectDeviceInfo = null;
-
- responseMessage.Append(RESPONSE_OWNER_INFO);
- responseMessage.Append(L":");
- responseMessage.Append(1); // count of Ip address available
- responseMessage.Append(message);
- }
-
- SysLog(NID_NET_WIFI, "response message-%ls", responseMessage.GetPointer());
-
- pResponseBuff = StringUtil::StringToUtf8N(responseMessage);
- r = GetLastResult();
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Failed to convert String.", GetErrorMessage(r));
-
- r = __pServerSocket->SendTo(*pResponseBuff, recvEndPoint);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Failed to send.", GetErrorMessage(r));
-
-CATCH:
- delete pWifiDirectDeviceInfo;
- delete pResponseBuff;
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
+ SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
+
+ result r = E_SUCCESS;
+ String responseMessage;
+ ByteBuffer* pResponseBuff = null;
+ String message;
+
+ if (messageType == REQUEST_ALL_MEMBER_INFO)
+ {
+ WifiDirectDeviceInfo* pWifiDirectDeviceInfo = null;
+ IList* pGroupMemberInfoList = GetAllGroupMemberInfoListN();
+ r = GetLastResult();
+ SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS && pGroupMemberInfoList != null, r,
+ "[%s] Failed to acquire a list of all group member.", GetErrorMessage(r));
+
+ int numOfMembers = pGroupMemberInfoList->GetCount();
+ SysLog(NID_NET_WIFI, "The number of members is %d.", numOfMembers);
+
+ for (int i = 0; i < numOfMembers; i++)
+ {
+ pWifiDirectDeviceInfo = static_cast< WifiDirectDeviceInfo* >(pGroupMemberInfoList->GetAt(i));
+
+ message.Append(MakeMessageFormat(*pWifiDirectDeviceInfo));
+ }
+
+ delete pGroupMemberInfoList;
+
+ responseMessage.Append(RESPONSE_ALL_MEMBER_INFO);
+ responseMessage.Append(L":");
+ responseMessage.Append(numOfMembers); // count of Ip address available
+ responseMessage.Append(message);
+ }
+ else // Respond for the RequestGroupOwnerInfo()
+ {
+ unique_ptr<WifiDirectDeviceInfo> pWifiDirectDeviceInfo(__pWifiDirectDeviceImpl->GetLocalDeviceInfoN());
+ r = GetLastResult();
+
+ SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS && pWifiDirectDeviceInfo != null, r,
+ "[%s] Failed to acquire WifiDirectDeviceInfo.", GetErrorMessage(r));
+
+ message = MakeMessageFormat(*pWifiDirectDeviceInfo);
+
+ responseMessage.Append(RESPONSE_OWNER_INFO);
+ responseMessage.Append(L":");
+ responseMessage.Append(1); // count of Ip address available
+ responseMessage.Append(message);
+ }
+
+ SysLog(NID_NET_WIFI, "response message-%ls", responseMessage.GetPointer());
+
+ pResponseBuff = StringUtil::StringToUtf8N(responseMessage);
+ r = GetLastResult();
+ SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS, r, "[%s] Failed to convert String.", GetErrorMessage(r));
+
+ r = __pServerSocket->SendTo(*pResponseBuff, recvEndPoint);
+ delete pResponseBuff;
+
+ SysTryLog(NID_NET_WIFI, r == E_SUCCESS, "[%s] Failed to send.", GetErrorMessage(r));
}
String
-_WifiDirectGroupOwnerImpl::MakeMessageFormat(WifiDirectDeviceInfo &wifiDirectDeviceInfo)
+_WifiDirectGroupOwnerImpl::MakeMessageFormat(WifiDirectDeviceInfo& wifiDirectDeviceInfo)
{
String message(0);
- // GroupMemberType and DeviceTypeCategory should be added , Status will be ACTIVATED implicitly.
- //WifiDirectDeviceId deviceId = wifiDirectDeviceInfo.GetDeviceId();
WifiDirectGroupMemberType memberType = wifiDirectDeviceInfo.GetGroupMemberType();
WifiDirectDeviceTypeCategory categoryType = wifiDirectDeviceInfo.GetDeviceTypeCategory();
String ipAddress = wifiDirectDeviceInfo.GetIpAddress()->ToString();
String deviceName = wifiDirectDeviceInfo.GetDeviceName();
String ssid = wifiDirectDeviceInfo.GetSsid();
- String deviceNameLen("");
- String ssidLen("");
+ String deviceNameLen;
+ String ssidLen;
message.Append(L":");
return message;
}
-
-////////////////////////////////////////////////////////////////////////////////
-/// Private
int
_WifiDirectGroupOwnerImpl::AddRef(void)
{
return __pWifiDirectDeviceImpl->Release();
}
-////////////////////////////////////////////////////////////////////////////////
-/// Lifecycle : Private
_WifiDirectGroupOwnerImpl::~_WifiDirectGroupOwnerImpl(void)
{
result r = E_SUCCESS;
delete __pNetConnection;
__pNetConnection = null;
}
- if (__pLocalIpAddress != null)
- {
- delete __pLocalIpAddress;
- __pLocalIpAddress = null;
- }
+ delete __pLocalIpAddress;
}
void
_WifiDirectGroupOwnerImpl::OnNetConnectionStarted(Tizen::Net::NetConnection& netConnection, result r)
{
SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [Action Result :%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
const NetConnectionInfo* pNetConnectionInfo = null;
result res = E_SUCCESS;
__currentState = WIFI_DIRECT_MEMBER_INFO_SERVICE_IDLE;
}
- _WifiDirectEventArg* pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_GO_EVENT_SERVICE_STARTED,
- __localDeviceId, &netConnection, res);
+ _WifiDirectEventArg* pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GO_EVENT_SERVICE_STARTED,
+ __localDeviceId, &netConnection, res);
SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
__pWifiDirectDeviceImpl->GetWifiDirectGroupOwnerEvent()->Fire(*pEventArg);
__currentState = WIFI_DIRECT_MEMBER_INFO_SERVICE_IDLE;
__portNumber = DEFAULT_PORT;
- _WifiDirectEventArg* pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_GO_EVENT_SERVICE_STARTED,
- __localDeviceId, (Tizen::Net::NetConnection*)null, E_SYSTEM);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ _WifiDirectEventArg* pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GO_EVENT_SERVICE_STARTED,
+ __localDeviceId, (Tizen::Net::NetConnection*) null, E_SYSTEM);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectDeviceImpl->GetWifiDirectGroupOwnerEvent()->Fire(*pEventArg);
+ __pWifiDirectDeviceImpl->GetWifiDirectGroupOwnerEvent()->Fire(*pEventArg);
}
}
SysLog(NID_NET_WIFI, "The callback is not fired in this state.");
}
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [SocketServer-result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(res));
}
void
{
SysTryReturnVoidResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "[E_SYSTEM] This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [Action Result :%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
-
bool isFired = false;
int res = E_SUCCESS;
switch (__currentState)
{
- case WIFI_DIRECT_MEMBER_INFO_SERVICE_STARTED:
- if (r == E_SUCCESS)
- {
- isFired = true;
- }
- break;
- case WIFI_DIRECT_MEMBER_INFO_SERVICE_STOPPING:
- isFired = true;
- break;
- case WIFI_DIRECT_MEMBER_INFO_SERVICE_STARTING:
- res = E_SYSTEM;
- break;
- default:
- SysLog(NID_NET_WIFI, "Other case");
- break;
+ case WIFI_DIRECT_MEMBER_INFO_SERVICE_STARTED:
+ if (r == E_SUCCESS)
+ {
+ isFired = true;
+ }
+ break;
+
+ case WIFI_DIRECT_MEMBER_INFO_SERVICE_STOPPING:
+ isFired = true;
+ break;
+
+ case WIFI_DIRECT_MEMBER_INFO_SERVICE_STARTING:
+ res = E_SYSTEM;
+ break;
+
+ default:
+ SysLog(NID_NET_WIFI, "Other case");
+ break;
}
__currentState = WIFI_DIRECT_MEMBER_INFO_SERVICE_IDLE;
if (isFired)
{
- _WifiDirectEventArg* pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_GO_EVENT_SERVICE_STOPPED,
- __localDeviceId, res);
- __pWifiDirectDeviceImpl->GetWifiDirectGroupOwnerEvent()->Fire(*pEventArg);
+ _WifiDirectEventArg* pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GO_EVENT_SERVICE_STOPPED,
+ __localDeviceId, res);
+ __pWifiDirectDeviceImpl->GetWifiDirectGroupOwnerEvent()->Fire(*pEventArg);
+ }
+ if (__pLocalIpAddress != null)
+ {
+ delete __pLocalIpAddress;
+ __pLocalIpAddress = null;
}
- if (__pLocalIpAddress != null)
- {
- delete __pLocalIpAddress;
- __pLocalIpAddress = null;
- }
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [ServiceStopped_Event:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), isFired ? "Fired" : "NotFired");
}
result
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectSystemAdapter == null, E_SYSTEM, "This instance has already been constructed.");
- __pWifiDirectSystemAdapter = _WifiDirectSystemAdapter::GetInstance();
- SysTryReturnResult(NID_NET_WIFI, __pWifiDirectSystemAdapter != null, E_SYSTEM,
- "Failed to acquire the instance of _WifiDirectSystemAdapter.");
+ __pWifiDirectSystemAdapter = _WifiDirectSystemAdapter::GetInstance();
+ SysTryReturnResult(NID_NET_WIFI, __pWifiDirectSystemAdapter != null, E_SYSTEM,
+ "Failed to acquire the instance of _WifiDirectSystemAdapter.");
- __localDeviceId = localDeviceId;
+ __localDeviceId = localDeviceId;
__pWifiDirectDeviceImpl = &wifiDirectDeviceImpl;
result r = E_SUCCESS;
if (enableIpInfoService == true)
- {
+ {
result r = CreateNetConnectionForService();
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Creating NetConnection has failed.");
- }
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Creating NetConnection has failed.");
+ }
return r;
}
const char*
_WifiDirectGroupOwnerImpl::GetStringOfCurrentState(void) const
{
- const char* pStateStr[] = { "SERVICE_IDLE",
- "SERVICE_STARTING",
- "SERVICE_STARTED",
- "SERVICE_STOPPING"};
+ const char* pStateStr[] =
+ {
+ "SERVICE_IDLE",
+ "SERVICE_STARTING",
+ "SERVICE_STARTED",
+ "SERVICE_STOPPING"
+ };
return pStateStr[__currentState];
}
{
if (__pServerSocket != null)
{
- __pServerSocket->RemoveSocketListener(*this);
+ __pServerSocket->RemoveSocketListener(*this);
__pServerSocket->Close();
delete __pServerSocket;
__pServerSocket = null;
_WifiDirectGroupOwnerImpl::CreateNetConnectionForService(void)
{
SysTryReturnResult(NID_NET_WIFI, __pWifiDirectDeviceImpl != null, E_SYSTEM, "This instance has not been constructed yet.");
- SysLog(NID_NET_WIFI, "Enter, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState());
result r = E_SUCCESS;
NetAccountManager accountManager;
r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to add listner of Netconnection.");
- SysLog(NID_NET_WIFI, "Exit, [CurrentState: %s], [ActionResult: %s]", GetStringOfCurrentState(), GetErrorMessage(r));
- SysLog(NID_NET_WIFI, "Exit, [DeviceImplCurrentState:%s] [OwnerImplCurrentState:%s] [result:%s]",
- __pWifiDirectDeviceImpl->GetStringOfCurrentState(), GetStringOfCurrentState(), GetErrorMessage(r));
-
return r;
}
-//////////////////////////////////////////////////////////////////////////
-// static member function
WifiDirectGroupOwner*
_WifiDirectGroupOwnerImpl::GetWifiDirectGroupOwnerInstanceN(_WifiDirectGroupOwnerImpl& groupOwnerImpl)
{
- WifiDirectGroupOwner* pWifiDirectGroupOwner = new (std::nothrow) WifiDirectGroupOwner();
- SysTryReturn(NID_NET_WIFI, pWifiDirectGroupOwner != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ WifiDirectGroupOwner* pWifiDirectGroupOwner = new (std::nothrow) WifiDirectGroupOwner();
+ SysTryReturn(NID_NET_WIFI, pWifiDirectGroupOwner != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- result r = pWifiDirectGroupOwner->Construct(groupOwnerImpl);
+ result r = pWifiDirectGroupOwner->Construct(groupOwnerImpl);
- if (IsFailed(r))
- {
- SysLogException(NID_NET_WIFI, GetLastResult(), "[%s] Failed to construct WifiDirectGroupOwner.", GetErrorMessage(r));
- delete pWifiDirectGroupOwner;
- pWifiDirectGroupOwner = null;
- }
+ if (IsFailed(r))
+ {
+ SysLogException(NID_NET_WIFI, GetLastResult(), "[%s] Failed to construct WifiDirectGroupOwner.", GetErrorMessage(r));
+ delete pWifiDirectGroupOwner;
+ pWifiDirectGroupOwner = null;
+ }
- return pWifiDirectGroupOwner;
+ return pWifiDirectGroupOwner;
}
_WifiDirectGroupOwnerImpl*
_WifiDirectGroupOwnerImpl::GetInstance(WifiDirectGroupOwner& wifiDirectGroupOwner)
{
- return wifiDirectGroupOwner.__pWifiDirectGroupOwnerImpl;
+ return wifiDirectGroupOwner.__pWifiDirectGroupOwnerImpl;
}
const _WifiDirectGroupOwnerImpl*
_WifiDirectGroupOwnerImpl::GetInstance(const WifiDirectGroupOwner& wifiDirectGroupOwner)
{
- return wifiDirectGroupOwner.__pWifiDirectGroupOwnerImpl;
+ return wifiDirectGroupOwner.__pWifiDirectGroupOwnerImpl;
}
-}}}// Tizen::Net::Wifi
-
+}}} // Tizen::Net::Wifi
* @brief This is the implementation file for _WifiDirectSystemAdapter class
*/
#include <pthread.h>
-#include <vconf.h>
#include <wifi-direct.h>
#include <FBaseColArrayList.h>
#include <FBaseColLinkedList.h>
#undef _WifiDirectConvertErrorResult
#endif
#define _WifiDirectConvertErrorResult(condition, r, value) \
- do \
- { \
- if (condition) { \
- r = value; \
- } \
- } while (0);
+ do \
+ { \
+ if (condition) { \
+ r = value; \
+ } \
+ } \
+ while (0);
using namespace std;
using namespace Tizen::Base;
using namespace Tizen::Text;
using namespace Tizen::Net;
-namespace Tizen { namespace Net { namespace Wifi {
+namespace Tizen { namespace Net { namespace Wifi
+{
static const int MAX_DEVICE_INFO_COUNT = 32;
-static const int WIFI_DIRECT_DISCOVERY_TIMEOUT = 10;
+static const int WIFI_DIRECT_DISCOVERY_TIMEOUT = 8;
_WifiDirectSystemAdapter* _WifiDirectSystemAdapter::__pWifiDirectSystemAdapter = null;
void
_WifiDirectSystemAdapter::InitSingleton(void)
{
- unique_ptr<_WifiDirectSystemAdapter> pInst(new (std::nothrow) _WifiDirectSystemAdapter());
- SysTryReturnVoidResult(NID_NET_WIFI, pInst != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
-
- bool r = true;
- r = pInst->Construct();
- SysTryReturnVoidResult(NID_NET_WIFI, r == true, r, "Error occured in construct.");
+ unique_ptr< _WifiDirectSystemAdapter > pInst(new (std::nothrow) _WifiDirectSystemAdapter());
+ SysTryReturnVoidResult(NID_NET_WIFI, pInst != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectSystemAdapter = pInst.release();
- std::atexit(DestroySingleton);
+ bool r = pInst->Construct();
+ SysTryReturnVoidResult(NID_NET_WIFI, r == true, E_SYSTEM, "Error occured in construct.");
+ __pWifiDirectSystemAdapter = pInst.release();
+ std::atexit(DestroySingleton);
}
-void
+void
_WifiDirectSystemAdapter::DestroySingleton(void)
{
- delete __pWifiDirectSystemAdapter;
+ __pWifiDirectSystemAdapter->__connectedPeerList.RemoveAll(true);
+ wifi_direct_deinitialize();
}
_WifiDirectSystemAdapter*
_WifiDirectSystemAdapter::GetInstance(void)
{
- static pthread_once_t onceBlock = PTHREAD_ONCE_INIT;
+ static pthread_once_t onceBlock = PTHREAD_ONCE_INIT;
- if (!__pWifiDirectSystemAdapter)
- {
- ClearLastResult();
- pthread_once(&onceBlock, InitSingleton);
-
- result r = GetLastResult();
- if (IsFailed(r))
- {
- onceBlock = PTHREAD_ONCE_INIT;
- }
- }
+ if (!__pWifiDirectSystemAdapter)
+ {
+ ClearLastResult();
+ pthread_once(&onceBlock, InitSingleton);
- return __pWifiDirectSystemAdapter;
-}
+ result r = GetLastResult();
+ if (IsFailed(r))
+ {
+ onceBlock = PTHREAD_ONCE_INIT;
+ }
+ }
-/////////////////////////////////////////////////////
-// DeviceManager
+ return __pWifiDirectSystemAdapter;
+}
Tizen::Base::Collection::IList*
_WifiDirectSystemAdapter::GetAllDeviceInfoN(void)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- unique_ptr<ArrayList> pList(new (std::nothrow) ArrayList());
- SysTryReturn(NID_NET_WIFI, pList != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ unique_ptr< ArrayList > pList(new (std::nothrow) ArrayList(SingleObjectDeleter));
+ SysTryReturn(NID_NET_WIFI, pList != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- r = pList->Construct();
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ r = pList->Construct();
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
- unique_ptr<WifiDirectDeviceInfo> pDeviceInfo(GetLocalDeviceInfoN());
- SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, GetLastResult(), "[%s] Propagating.", GetErrorMessage(GetLastResult()));
+ unique_ptr< WifiDirectDeviceInfo > pDeviceInfo(GetLocalDeviceInfoN());
+ SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, GetLastResult(), "[%s] Propagating.", GetErrorMessage(GetLastResult()));
- r = pList->Add(*pDeviceInfo);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
- pDeviceInfo.release();
+ r = pList->Add(*pDeviceInfo);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ pDeviceInfo.release();
- return pList.release();
+ return pList.release();
}
-/////////////////////////////////////////////////////
-// Device
-
result
_WifiDirectSystemAdapter::Activate(void)
{
- result r = E_SYSTEM;
- int err = WIFI_DIRECT_ERROR_NONE;
+ result r = E_SYSTEM;
+ int err = WIFI_DIRECT_ERROR_NONE;
- err = wifi_direct_activate();
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NOT_PERMITTED, r, E_INVALID_OPERATION);
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
+ err = wifi_direct_activate();
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NOT_PERMITTED, r, E_INVALID_OPERATION);
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed result from wifi_direct_activate() is 0x%x", err);
- __currentState = WIFI_DIRECT_SYSTEM_ACTIVATING;
+ __currentState = WIFI_DIRECT_SYSTEM_ACTIVATING;
- return r;
+ return r;
}
result
_WifiDirectSystemAdapter::Deactivate(void)
{
- result r = E_SYSTEM;
- int err = WIFI_DIRECT_ERROR_NONE;
+ result r = E_SYSTEM;
+ int err = WIFI_DIRECT_ERROR_NONE;
- err = wifi_direct_deactivate();
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NOT_PERMITTED, r, E_INVALID_OPERATION);
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
+ err = wifi_direct_deactivate();
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NOT_PERMITTED, r, E_INVALID_OPERATION);
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed result from wifi_direct_deactivate() is 0x%x", err);
- __currentState = WIFI_DIRECT_SYSTEM_DEACTIVATING;
+ __currentState = WIFI_DIRECT_SYSTEM_DEACTIVATING;
- return r;
+ return r;
}
WifiDirectGroupInfo*
_WifiDirectSystemAdapter::GetGroupSettingInfoN(void) const
{
- result r = E_SUCCESS;
- int err = WIFI_DIRECT_ERROR_NONE;
+ result r = E_SUCCESS;
+ int err = WIFI_DIRECT_ERROR_NONE;
- unique_ptr<WifiDirectGroupInfo> pGroupInfo(new (std::nothrow) WifiDirectGroupInfo());
- SysTryReturn(NID_NET_WIFI, pGroupInfo != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ unique_ptr< WifiDirectGroupInfo > pGroupInfo(new (std::nothrow) WifiDirectGroupInfo());
+ SysTryReturn(NID_NET_WIFI, pGroupInfo != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- _WifiDirectGroupInfoImpl* pGroupInfoImpl = _WifiDirectGroupInfoImpl::GetInstance(*pGroupInfo);
- wifi_direct_state_e status = WIFI_DIRECT_STATE_DEACTIVATED;
- err = wifi_direct_get_state(&status);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ _WifiDirectGroupInfoImpl* pGroupInfoImpl = _WifiDirectGroupInfoImpl::GetInstance(*pGroupInfo);
+ wifi_direct_state_e status = WIFI_DIRECT_STATE_DEACTIVATED;
+ err = wifi_direct_get_state(&status);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Failed result from wifi_direct_get_state() is 0x%x", GetErrorMessage(r), err);
- // MAC
- char* pMacAddress = null;
- err = wifi_direct_get_mac_address(&pMacAddress);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_OUT_OF_MEMORY, r, E_OUT_OF_MEMORY);
+ // MAC
+ char* pMacAddress = null;
+ err = wifi_direct_get_mac_address(&pMacAddress);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_OUT_OF_MEMORY, r, E_OUT_OF_MEMORY);
- SysTryReturn(NID_NET_WIFI, pMacAddress != null && r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ SysTryReturn(NID_NET_WIFI, pMacAddress != null && r == E_SUCCESS, null, r,
+ "[%s] Failed result from wifi_direct_get_mac_address() is 0x%x", GetErrorMessage(r), err);
- String mac = _WifiDirectUtility::ConvertMacCharToString(pMacAddress);
- free(pMacAddress);
- pGroupInfoImpl->SetBssId(mac);
+ String mac = _WifiDirectUtility::ConvertMacCharToString(pMacAddress);
+ free(pMacAddress);
+ pGroupInfoImpl->SetBssId(mac);
- if (status != WIFI_DIRECT_STATE_DEACTIVATED
- && status != WIFI_DIRECT_STATE_DEACTIVATING
- && status != WIFI_DIRECT_STATE_ACTIVATING)
- {
+ if (status != WIFI_DIRECT_STATE_DEACTIVATED
+ && status != WIFI_DIRECT_STATE_DEACTIVATING
+ && status != WIFI_DIRECT_STATE_ACTIVATING)
+ {
// SSID
- if (status == WIFI_DIRECT_STATE_CONNECTED)
- {
+ if (status == WIFI_DIRECT_STATE_CONNECTED)
+ {
char* pSsid = null;
err = wifi_direct_get_ssid(&pSsid);
if (pSsid == null)
{
SysLog(NID_NET_WIFI, "The ssid is null.");
+
}
else
{
pGroupInfoImpl->SetSsid(String(pSsid));
free(pSsid);
}
- }
+ }
- // Autonomous group
- bool isAutonomousGroup = false;
- err = wifi_direct_is_autonomous_group(&isAutonomousGroup);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ // Autonomous group
+ bool isAutonomousGroup = false;
+ err = wifi_direct_is_autonomous_group(&isAutonomousGroup);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Failed result from wifi_direct_is_autonomous_group() is 0x%x", GetErrorMessage(r), err);
- pGroupInfoImpl->SetAutonomousGroupOwnerMode(isAutonomousGroup);
+ pGroupInfoImpl->SetAutonomousGroupOwnerMode(isAutonomousGroup);
- // Intent
- int groupOwnerIntent = 0;
- err = wifi_direct_get_group_owner_intent(&groupOwnerIntent);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ // Intent
+ int groupOwnerIntent = 0;
+ err = wifi_direct_get_group_owner_intent(&groupOwnerIntent);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Failed result from wifi_direct_get_group_owner_intent() is 0x%x", GetErrorMessage(r), err);
- pGroupInfoImpl->SetGroupOwnerIntent(groupOwnerIntent);
+ pGroupInfoImpl->SetGroupOwnerIntent(groupOwnerIntent);
- // Radio channel
- int channel = 0;
- err = wifi_direct_get_operating_channel(&channel);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ // Radio channel
+ int channel = 0;
+ err = wifi_direct_get_operating_channel(&channel);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r,
+ "[%s] Failed result from wifi_direct_get_operating_channel() is 0x%x", GetErrorMessage(r), err);
- WifiRadioChannel operatingChannel = _WifiDirectUtility::ConvertChannel(channel);
- pGroupInfoImpl->SetOperatingChannel(operatingChannel);
- }
+ WifiRadioChannel operatingChannel = _WifiDirectUtility::ConvertChannel(channel);
+ pGroupInfoImpl->SetOperatingChannel(operatingChannel);
+ }
- // Max clients
- int maxClients= 0;
- err = wifi_direct_get_max_clients(&maxClients);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ // Max clients
+ int maxClients = 0;
+ err = wifi_direct_get_max_clients(&maxClients);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r,
+ "[%s] Failed result from wifi_direct_get_max_clients() is 0x%x", GetErrorMessage(r), err);
- pGroupInfoImpl->SetMaxNumberOfClients(maxClients);
+ pGroupInfoImpl->SetMaxNumberOfClients(maxClients);
- return pGroupInfo.release();
+ return pGroupInfo.release();
}
WifiDirectDeviceInfo*
_WifiDirectSystemAdapter::GetLocalDeviceInfoN(void) const
{
- SysTryReturn(NID_NET_WIFI, __pWifiServiceProxy != null, null, E_SYSTEM, "[E_SYSTEM] IPC instance has not been constructed yet.");
-
- ClearLastResult();
-
- result r = E_SUCCESS;
- int err = WIFI_DIRECT_ERROR_NONE;
-
- unique_ptr<WifiDirectDeviceInfo> pDeviceInfo(new (std::nothrow) WifiDirectDeviceInfo());
- SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ SysTryReturn(NID_NET_WIFI, __pWifiServiceProxy != null, null, E_SYSTEM, "[E_SYSTEM] IPC instance has not been constructed yet.");
- _WifiDirectDeviceInfoImpl* pDeviceInfoImpl = _WifiDirectDeviceInfoImpl::GetInstance(*pDeviceInfo);
+ result r = E_SUCCESS;
+ int err = WIFI_DIRECT_ERROR_NONE;
- // device ID
- pDeviceInfoImpl->SetDeviceId(DEFAULT_DEVICE_ID);
+ unique_ptr< WifiDirectDeviceInfo > pDeviceInfo(new (std::nothrow) WifiDirectDeviceInfo());
+ SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- // device name
- String deviceName;
- r = __pWifiServiceProxy->GetWifiDirectLocalDeviceName(deviceName);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ _WifiDirectDeviceInfoImpl* pDeviceInfoImpl = _WifiDirectDeviceInfoImpl::GetInstance(*pDeviceInfo);
- pDeviceInfoImpl->SetDeviceName(deviceName);
- r = GetLastResult();
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, E_SYSTEM, "[%s] The length of device name is invalid.", GetErrorMessage(r));
+ // device ID
+ pDeviceInfoImpl->SetDeviceId(DEFAULT_DEVICE_ID);
- // device status / group member type
- wifi_direct_state_e status = WIFI_DIRECT_STATE_DEACTIVATED;
- err = wifi_direct_get_state(&status);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
-
- if (status == WIFI_DIRECT_STATE_DEACTIVATED)
- {
- pDeviceInfoImpl->SetDeviceStatus(WIFI_DIRECT_DEVICE_DEACTIVATED);
- }
- else
- {
- pDeviceInfoImpl->SetDeviceStatus(WIFI_DIRECT_DEVICE_ACTIVATED);
+ // device name
+ String deviceName;
+ r = __pWifiServiceProxy->GetWifiDirectLocalDeviceName(deviceName);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
- bool isOwner = false;
- err = wifi_direct_is_group_owner(&isOwner);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ r = pDeviceInfoImpl->SetDeviceName(deviceName);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, E_SYSTEM, "[%s] The length of device name is invalid.", GetErrorMessage(r));
- switch (status)
- {
- case WIFI_DIRECT_STATE_DISCONNECTING:
- case WIFI_DIRECT_STATE_CONNECTED:
- if (isOwner)
- {
- pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER);
- }
- else
- {
- pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT);
- }
- break;
- case WIFI_DIRECT_STATE_ACTIVATED:
- if (isOwner)
- {
- pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER);
- }
- else
- {
- pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE);
- }
- break;
- default:
- pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE);
- break;
- }
+ // device status / group member type
+ wifi_direct_state_e status = WIFI_DIRECT_STATE_DEACTIVATED;
+ err = wifi_direct_get_state(&status);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Failed result from wifi_direct_get_state() is 0x%x", GetErrorMessage(r), err);
- if (status == WIFI_DIRECT_STATE_CONNECTED)
- {
- // ssid
- char* pSsid = null;
- err = wifi_direct_get_ssid(&pSsid);
-
- if (pSsid == null)
- {
- SysLog(NID_NET_WIFI, "The ssid is null.");
- }
- else
- {
- pDeviceInfoImpl->SetSsid(String(pSsid));
- free(pSsid);
- }
- }
- }
+ if (status == WIFI_DIRECT_STATE_DEACTIVATED)
+ {
+ pDeviceInfoImpl->SetDeviceStatus(WIFI_DIRECT_DEVICE_DEACTIVATED);
+ }
+ else
+ {
+ pDeviceInfoImpl->SetDeviceStatus(WIFI_DIRECT_DEVICE_ACTIVATED);
- // device type category
- wifi_direct_primary_device_type_e typeCategory = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_OTHER;
- err = wifi_direct_get_primary_device_type(&typeCategory);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
-
- WifiDirectDeviceTypeCategory deviceTypeCategory = _WifiDirectUtility::ConvertDeviceTypeCategory(typeCategory);
- pDeviceInfoImpl->SetDeviceTypeCategory(deviceTypeCategory);
-
- // mac address
- char* pMacAddress = null;
- err = wifi_direct_get_mac_address(&pMacAddress);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_OUT_OF_MEMORY, r, E_OUT_OF_MEMORY);
- SysTryReturn(NID_NET_WIFI, pMacAddress != null && r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
-
- String mac = _WifiDirectUtility::ConvertMacCharToString(pMacAddress);
- pDeviceInfoImpl->SetMacAddress(mac);
- r = GetLastResult();
- free(pMacAddress);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, E_SYSTEM, "[%s] The MAC address is invalid.", GetErrorMessage(r));
-
- // IP address
- if (pDeviceInfoImpl->GetGroupMemberType() != WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
- {
- char* pIp = null;
- err = wifi_direct_get_ip_address(&pIp);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_OUT_OF_MEMORY, r, E_OUT_OF_MEMORY);
- SysTryReturn(NID_NET_WIFI, pIp != null && r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
-
- r = pDeviceInfoImpl->SetIpAddress(String(pIp));
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
- free(pIp);
- }
+ bool isOwner = false;
+ err = wifi_direct_is_group_owner(&isOwner);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r,
+ "[%s] Failed result from wifi_direct_is_group_owner() is 0x%x", GetErrorMessage(r), err);
- // supported WPS configuration mode
- if (status != WIFI_DIRECT_STATE_DEACTIVATED
- && status != WIFI_DIRECT_STATE_DEACTIVATING
- && status != WIFI_DIRECT_STATE_ACTIVATING)
- {
- ArrayListT<WifiWpsConfigurationMode> wpsModeList;
- r = wpsModeList.Construct();
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, E_SYSTEM, "[%s] Construction of ArrayListT has failed.", GetErrorMessage(r));
+ switch (status)
+ {
+ case WIFI_DIRECT_STATE_DISCONNECTING:
+ case WIFI_DIRECT_STATE_CONNECTED:
+ if (isOwner)
+ {
+ pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER);
+ }
+ else
+ {
+ pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT);
+ }
+ break;
- err = wifi_direct_foreach_supported_wps_types(OnWifiDirectSupportedWpsMode, &wpsModeList);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ case WIFI_DIRECT_STATE_ACTIVATED:
+ if (isOwner)
+ {
+ pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER);
+ }
+ else
+ {
+ pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE);
+ }
+ break;
- pDeviceInfoImpl->SetSupportedWpsConfigurationMode(wpsModeList);
- r = GetLastResult();
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, E_SYSTEM, "[%s] Setting of wps configuration mode has failed.", GetErrorMessage(r));
+ default:
+ pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE);
+ break;
+ }
- wpsModeList.RemoveAll();
- }
+ if (status == WIFI_DIRECT_STATE_CONNECTED)
+ {
+ // ssid
+ char* pSsid = null;
+ err = wifi_direct_get_ssid(&pSsid);
- return pDeviceInfo.release();
+ if (pSsid == null)
+ {
+ SysLog(NID_NET_WIFI, "The ssid is null.");
+ }
+ else
+ {
+ pDeviceInfoImpl->SetSsid(String(pSsid));
+ free(pSsid);
+ }
+ }
+ }
+
+ // device type category
+ wifi_direct_primary_device_type_e typeCategory = WIFI_DIRECT_PRIMARY_DEVICE_TYPE_OTHER;
+ err = wifi_direct_get_primary_device_type(&typeCategory);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Failed result from wifi_direct_get_primary_device_type() is 0x%x", GetErrorMessage(r), err);
+
+ WifiDirectDeviceTypeCategory deviceTypeCategory = _WifiDirectUtility::ConvertDeviceTypeCategory(typeCategory);
+ pDeviceInfoImpl->SetDeviceTypeCategory(deviceTypeCategory);
+
+ // mac address
+ char* pMacAddress = null;
+ err = wifi_direct_get_mac_address(&pMacAddress);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_OUT_OF_MEMORY, r, E_OUT_OF_MEMORY);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Failed result from wifi_direct_get_mac_address() is 0x%x", GetErrorMessage(r), err);
+
+ String mac = _WifiDirectUtility::ConvertMacCharToString(pMacAddress);
+ r = pDeviceInfoImpl->SetMacAddress(mac);
+ free(pMacAddress);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, E_SYSTEM, "[%s] The MAC address is invalid.", GetErrorMessage(r));
+
+ // IP address
+ if (pDeviceInfoImpl->GetGroupMemberType() != WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE)
+ {
+ char* pIp = null;
+ err = wifi_direct_get_ip_address(&pIp);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_OUT_OF_MEMORY, r, E_OUT_OF_MEMORY);
+ SysTryReturn(NID_NET_WIFI, pIp != null && r == E_SUCCESS, null, r, "[%s] Failed result from wifi_direct_get_ip_address() is 0x%x", GetErrorMessage(r), err);
+
+ r = pDeviceInfoImpl->SetIpAddress(String(pIp));
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ free(pIp);
+ }
+
+ // supported WPS configuration mode
+ if (status != WIFI_DIRECT_STATE_DEACTIVATED
+ && status != WIFI_DIRECT_STATE_DEACTIVATING
+ && status != WIFI_DIRECT_STATE_ACTIVATING)
+ {
+ ArrayListT< WifiWpsConfigurationMode > wpsModeList;
+ r = wpsModeList.Construct();
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, E_SYSTEM, "[%s] Construction of ArrayListT has failed.", GetErrorMessage(r));
+
+ err = wifi_direct_foreach_supported_wps_types(OnWifiDirectSupportedWpsMode, &wpsModeList);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Failed result from wifi_direct_foreach_supported_wps_types() is 0x%x", GetErrorMessage(r), err);
+
+ r = pDeviceInfoImpl->SetSupportedWpsConfigurationMode(wpsModeList);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, E_SYSTEM, "[%s] Setting of wps configuration mode has failed.", GetErrorMessage(r));
+
+ wpsModeList.RemoveAll();
+ }
+
+ return pDeviceInfo.release();
}
WifiWpsConfigurationMode
_WifiDirectSystemAdapter::GetWpsConfigurationModePreference(void) const
{
- result r = E_SYSTEM;
- int err = WIFI_DIRECT_ERROR_NONE;
+ result r = E_SYSTEM;
+ int err = WIFI_DIRECT_ERROR_NONE;
- wifi_direct_wps_type_e wpsType;
- WifiWpsConfigurationMode wpsMode = WIFI_WPS_CONFIG_MODE_NONE;
+ wifi_direct_wps_type_e wpsType;
+ WifiWpsConfigurationMode wpsMode = WIFI_WPS_CONFIG_MODE_NONE;
- err = wifi_direct_get_wps_type(&wpsType);
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, WIFI_WPS_CONFIG_MODE_NONE, r, "[%s] Propagating.", GetErrorMessage(r));
+ err = wifi_direct_get_wps_type(&wpsType);
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, WIFI_WPS_CONFIG_MODE_NONE, r, "[%s] Failed result from wifi_direct_get_wps_type() is 0x%x", GetErrorMessage(r), err);
- switch(wpsType)
- {
- case WIFI_DIRECT_WPS_TYPE_PBC:
- wpsMode = WIFI_WPS_CONFIG_MODE_PBC;
- break;
- case WIFI_DIRECT_WPS_TYPE_PIN_DISPLAY:
- wpsMode = WIFI_WPS_CONFIG_MODE_PIN_DISPLAY;
- break;
- case WIFI_DIRECT_WPS_TYPE_PIN_KEYPAD:
- wpsMode = WIFI_WPS_CONFIG_MODE_PIN_KEYPAD;
- break;
- default:
- SysLog(NID_NET_WIFI, "The WPS type is unknown.");
- break;
- }
+ switch (wpsType)
+ {
+ case WIFI_DIRECT_WPS_TYPE_PBC:
+ wpsMode = WIFI_WPS_CONFIG_MODE_PBC;
+ break;
- return wpsMode;
+ case WIFI_DIRECT_WPS_TYPE_PIN_DISPLAY:
+ wpsMode = WIFI_WPS_CONFIG_MODE_PIN_DISPLAY;
+ break;
+
+ case WIFI_DIRECT_WPS_TYPE_PIN_KEYPAD:
+ wpsMode = WIFI_WPS_CONFIG_MODE_PIN_KEYPAD;
+ break;
+
+ default:
+ SysLog(NID_NET_WIFI, "The WPS type is unknown.");
+ break;
+ }
+
+ return wpsMode;
}
result
-_WifiDirectSystemAdapter::SetLocalDeviceName(const String &name)
+_WifiDirectSystemAdapter::SetLocalDeviceName(const String& name)
{
- SysTryReturnResult(NID_NET_WIFI, __pWifiServiceProxy != null, E_SYSTEM, "IPC instance has not been constructed yet.");
+ SysTryReturnResult(NID_NET_WIFI, __pWifiServiceProxy != null, E_SYSTEM, "IPC instance has not been constructed yet.");
- result r = __pWifiServiceProxy->SetWifiDirectLocalDeviceName(name);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Setting the Wi-Fi Direct local device name through OSP Connectivity daemon has failed.", GetErrorMessage(r));
+ result r = __pWifiServiceProxy->SetWifiDirectLocalDeviceName(name);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Setting the Wi-Fi Direct local device name through OSP Connectivity daemon has failed.", GetErrorMessage(r));
- return r;
+ return r;
}
result
_WifiDirectSystemAdapter::SetWpsConfigurationModePreference(WifiWpsConfigurationMode mode)
{
- result r = E_SYSTEM;
- int err = WIFI_DIRECT_ERROR_NONE;
-
- wifi_direct_wps_type_e wpsType = WIFI_DIRECT_WPS_TYPE_NONE;
-
- switch(mode)
- {
- case WIFI_WPS_CONFIG_MODE_PBC:
- wpsType = WIFI_DIRECT_WPS_TYPE_PBC;
- break;
- case WIFI_WPS_CONFIG_MODE_PIN_DISPLAY:
- wpsType = WIFI_DIRECT_WPS_TYPE_PIN_DISPLAY;
- break;
- case WIFI_WPS_CONFIG_MODE_PIN_KEYPAD:
- wpsType = WIFI_DIRECT_WPS_TYPE_PIN_KEYPAD;
- break;
- default:
- SysLog(NID_NET_WIFI, "The WPS type is unknown.");
- return E_SYSTEM;
- }
+ result r = E_SYSTEM;
+ int err = WIFI_DIRECT_ERROR_NONE;
- err = wifi_direct_set_wps_type(wpsType);
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
+ wifi_direct_wps_type_e wpsType = WIFI_DIRECT_WPS_TYPE_NONE;
- return r;
-}
+ switch (mode)
+ {
+ case WIFI_WPS_CONFIG_MODE_PBC:
+ wpsType = WIFI_DIRECT_WPS_TYPE_PBC;
+ break;
-result
-_WifiDirectSystemAdapter::CreateGroup(const WifiDirectGroupInfo *pWifiDirectGroupInfo,
- const WifiDirectDeviceInfo *pWifiDirectRemoteDeviceInfo)
-{
- result r = E_SUCCESS;
- int err = WIFI_DIRECT_ERROR_NONE;
-
- SysTryReturnResult(NID_NET_WIFI, !(pWifiDirectGroupInfo != null
- && pWifiDirectGroupInfo->GetAutonomousGroupOwnerMode()
- && pWifiDirectRemoteDeviceInfo), E_INVALID_OPERATION,
- "The operation don't allow to create an autonomous group with a specified remote device.");
- __remoteMacAddress.Clear();
- __remoteDeviceName.Clear();
-
- // autonomous group owner mode
- if (pWifiDirectGroupInfo != null
- && pWifiDirectGroupInfo->GetAutonomousGroupOwnerMode())
- {
- r = SetGroupSettingInfo(*pWifiDirectGroupInfo);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Propagating.");
+ case WIFI_WPS_CONFIG_MODE_PIN_DISPLAY:
+ wpsType = WIFI_DIRECT_WPS_TYPE_PIN_DISPLAY;
+ break;
- err = wifi_direct_create_group();
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "Propagating.", GetErrorMessage(r));
+ case WIFI_WPS_CONFIG_MODE_PIN_KEYPAD:
+ wpsType = WIFI_DIRECT_WPS_TYPE_PIN_KEYPAD;
+ break;
- __currentState = WIFI_DIRECT_SYSTEM_AUTONOMOUS_GROUP_CREATING;
- }
- else
- {
- if (pWifiDirectGroupInfo != null)
- {
- r = SetGroupSettingInfo(*pWifiDirectGroupInfo);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Propagating.");
- }
+ default:
+ SysLog(NID_NET_WIFI, "The WPS type is unknown.");
+ return E_SYSTEM;
+ }
- if (pWifiDirectRemoteDeviceInfo != null)
- {
- unique_ptr<char []> pMacAddress(_WifiDirectUtility::ConvertMacStringToCharN(pWifiDirectRemoteDeviceInfo->GetMacAddress()));
- SysTryReturnResult(NID_NET_WIFI, pMacAddress != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
+ err = wifi_direct_set_wps_type(wpsType);
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed result from wifi_direct_get_wps_type() is 0x%x", GetErrorMessage(r), err);
- err = wifi_direct_connect(pMacAddress.get());
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ return r;
+}
- if (IsFailed(r))
- {
- SysLog(NID_NET_WIFI, "[%s] Propagating.", GetErrorMessage(r));
- result ret = StartListenMode();
- SysLogException(NID_NET_WIFI, ret, "[%s] Propagating.", GetErrorMessage(ret));
- return r;
- }
- }
- else
- {
- if (IsDiscoverable())
- {
- r = StopListenModeToScan();
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, E_SYSTEM, "A system error occurs.");
- }
- else
- {
- r = StartDiscovery();
- SysLogException(NID_NET_WIFI, r, "[%s] Propagating.", GetErrorMessage(r));
-
- if (IsFailed(r))
- {
- r = StartListenMode();
- SysLogException(NID_NET_WIFI, r, "[%s] Propagating.", GetErrorMessage(r));
- return E_SYSTEM;
- }
- }
- }
- __currentState = WIFI_DIRECT_SYSTEM_GROUP_CREATING;
- }
+result
+_WifiDirectSystemAdapter::CreateGroup(const WifiDirectGroupInfo* pWifiDirectGroupInfo,
+ const WifiDirectDeviceInfo* pWifiDirectRemoteDeviceInfo)
+{
+ result r = E_SUCCESS;
+ int err = WIFI_DIRECT_ERROR_NONE;
+
+ SysTryReturnResult(NID_NET_WIFI, !(pWifiDirectGroupInfo != null
+ && pWifiDirectGroupInfo->GetAutonomousGroupOwnerMode()
+ && pWifiDirectRemoteDeviceInfo), E_INVALID_OPERATION,
+ "The operation don't allow to create an autonomous group with a specified remote device.");
+ __remoteMacAddress.Clear();
+ __remoteDeviceName.Clear();
+
+ // autonomous group owner mode
+ if (pWifiDirectGroupInfo != null
+ && pWifiDirectGroupInfo->GetAutonomousGroupOwnerMode())
+ {
+ r = SetGroupSettingInfo(*pWifiDirectGroupInfo);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Propagating.");
+
+ err = wifi_direct_create_group();
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed result from wifi_direct_create_group() is 0x%x", err);
+
+ __currentState = WIFI_DIRECT_SYSTEM_AUTONOMOUS_GROUP_CREATING;
+ }
+ else
+ {
+ if (pWifiDirectGroupInfo != null)
+ {
+ r = SetGroupSettingInfo(*pWifiDirectGroupInfo);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Propagating.");
+ }
+
+ if (pWifiDirectRemoteDeviceInfo != null)
+ {
+ unique_ptr< char[] > pMacAddress(_WifiDirectUtility::ConvertMacStringToCharN(pWifiDirectRemoteDeviceInfo->GetMacAddress()));
+ SysTryReturnResult(NID_NET_WIFI, pMacAddress != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
+
+ err = wifi_direct_connect(pMacAddress.get());
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ if (IsFailed(r))
+ {
+ SysLog(NID_NET_WIFI, "[%s] Failed result from wifi_direct_connect() is 0x%x", GetErrorMessage(r), err);
+ result ret = StartListenMode();
+ SysLogException(NID_NET_WIFI, ret, "[%s] Propagating.", GetErrorMessage(ret));
+ return r;
+ }
+ }
+ else
+ {
+ if (__currentScanState == WIFI_DIRECT_SYSTEM_SCAN_LISTEN)
+ {
+ r = StopListenModeToScan();
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, E_SYSTEM, "A system error occurs.");
+ }
+ else
+ {
+ r = StartDiscovery();
+ SysLogException(NID_NET_WIFI, r, "[%s] Propagating.", GetErrorMessage(r));
+
+ if (IsFailed(r))
+ {
+ r = StartListenMode();
+ SysLogException(NID_NET_WIFI, r, "[%s] Propagating.", GetErrorMessage(r));
+ return E_SYSTEM;
+ }
+ }
+ }
+ __currentState = WIFI_DIRECT_SYSTEM_GROUP_CREATING;
+ }
- return r;
+ return r;
}
result
_WifiDirectSystemAdapter::CancelGroupCreation(void)
{
- result r = E_SYSTEM;
- int err = WIFI_DIRECT_ERROR_NONE;
+ result r = E_SYSTEM;
+ int err = WIFI_DIRECT_ERROR_NONE;
+
+ if (__currentState == WIFI_DIRECT_SYSTEM_GROUP_CREATING || __currentState == WIFI_DIRECT_SYSTEM_AUTONOMOUS_GROUP_CREATING)
+ {
+ switch (__currentScanState)
+ {
+ case WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN:
+ case WIFI_DIRECT_SYSTEM_SCAN_SCANNING:
+ __currentState = WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING;
+ r = CancelDiscovery();
+ break;
+
+ default:
+ err = wifi_direct_disconnect_all();
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+
+ if (IsFailed(r))
+ {
+ SysLog(NID_NET_WIFI, "[%s] Failed result from wifi_direct_disconnect_all() is 0x%x", GetErrorMessage(r), err);
- if (__currentState == WIFI_DIRECT_SYSTEM_GROUP_CREATING || __currentState == WIFI_DIRECT_SYSTEM_AUTONOMOUS_GROUP_CREATING)
- {
- switch(__currentScanState)
- {
- case WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN:
- case WIFI_DIRECT_SYSTEM_SCAN_SCANNING:
- __currentState = WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING;
- r = CancelDiscovery();
- break;
- default:
- err = wifi_direct_disconnect_all();
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
-
- if (IsFailed(r))
- {
- SysLog(NID_NET_WIFI, "[%s] Propagating.", GetErrorMessage(r));
-
- result ret = StartListenMode();
- SysLogException(NID_NET_WIFI, ret, "[%s] Propagating.", GetErrorMessage(ret));
- }
- else
- {
- __currentState = WIFI_DIRECT_SYSTEM_GROUP_CANCELING;
- }
- }
- }
- else
- {
- r = E_INVALID_OPERATION;
- }
+ result ret = StartListenMode();
+ SysLogException(NID_NET_WIFI, ret, "[%s] Propagating.", GetErrorMessage(ret));
+ }
+ else
+ {
+ __currentState = WIFI_DIRECT_SYSTEM_GROUP_CANCELING;
+ }
+ }
+ }
+ else
+ {
+ r = E_INVALID_OPERATION;
+ }
- return r;
+ return r;
}
result
_WifiDirectSystemAdapter::Scan(void)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- switch(__currentScanState)
- {
- case WIFI_DIRECT_SYSTEM_SCAN_IDLE:
- r = StartDiscovery();
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_SYSTEM_SCAN_LISTEN:
- r = StopListenModeToScan();
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN:
- case WIFI_DIRECT_SYSTEM_SCAN_SCANNING:
- r = E_IN_PROGRESS;
- break;
- case WIFI_DIRECT_SYSTEM_SCAN_CANCELLING:
- r = E_INVALID_OPERATION;
- break;
- }
+ switch (__currentScanState)
+ {
+ case WIFI_DIRECT_SYSTEM_SCAN_IDLE:
+ r = StartDiscovery();
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
+ break;
+
+ case WIFI_DIRECT_SYSTEM_SCAN_LISTEN:
+ r = StopListenModeToScan();
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
+ break;
- return r;
+ case WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN:
+ case WIFI_DIRECT_SYSTEM_SCAN_SCANNING:
+ r = E_IN_PROGRESS;
+ break;
+
+ case WIFI_DIRECT_SYSTEM_SCAN_CANCELLING:
+ r = E_INVALID_OPERATION;
+ break;
+ }
+
+ return r;
}
result
_WifiDirectSystemAdapter::CancelScan(void)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- switch(__currentScanState)
- {
+ switch (__currentScanState)
+ {
- case WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN:
- __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_CANCELLING;
- //fall through
- case WIFI_DIRECT_SYSTEM_SCAN_CANCELLING:
- r = E_SUCCESS;
- break;
- case WIFI_DIRECT_SYSTEM_SCAN_SCANNING:
- r = CancelDiscovery();
- break;
- default:
- r = E_INVALID_OPERATION;
- break;
- }
+ case WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN:
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_CANCELLING;
+
+ //fall through
+ case WIFI_DIRECT_SYSTEM_SCAN_CANCELLING:
+ r = E_SUCCESS;
+ break;
- return r;
+ case WIFI_DIRECT_SYSTEM_SCAN_SCANNING:
+ r = CancelDiscovery();
+ break;
+
+ default:
+ r = E_INVALID_OPERATION;
+ break;
+ }
+
+ return r;
}
result
-_WifiDirectSystemAdapter::Associate(const WifiDirectDeviceInfo &wifiDirectGroupOwnerDeviceInfo)
+_WifiDirectSystemAdapter::Associate(const WifiDirectDeviceInfo& wifiDirectGroupOwnerDeviceInfo)
{
- result r = E_SYSTEM;
- int err = WIFI_DIRECT_ERROR_NONE;
+ result r = E_SYSTEM;
+ int err = WIFI_DIRECT_ERROR_NONE;
- unique_ptr<char[]> pMacAddress(_WifiDirectUtility::ConvertMacStringToCharN(wifiDirectGroupOwnerDeviceInfo.GetMacAddress()));
- SysTryReturnResult(NID_NET_WIFI, pMacAddress != null, E_OUT_OF_MEMORY, "Failed to convert MacAddress");
+ unique_ptr< char[] > pMacAddress(_WifiDirectUtility::ConvertMacStringToCharN(wifiDirectGroupOwnerDeviceInfo.GetMacAddress()));
+ SysTryReturnResult(NID_NET_WIFI, pMacAddress != null, E_OUT_OF_MEMORY, "Failed to convert MacAddress");
- err = wifi_direct_connect(pMacAddress.get());
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
+ err = wifi_direct_connect(pMacAddress.get());
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed result from wifi_direct_connect() is 0x%x", err);
- __currentState = WIFI_DIRECT_SYSTEM_ASSOCIATING;
+ __currentState = WIFI_DIRECT_SYSTEM_ASSOCIATING;
- return r;
+ return r;
}
bool
_WifiDirectSystemAdapter::IsDiscoverable(void) const
{
- bool isDiscoverable = false;
- int err = WIFI_DIRECT_ERROR_NONE;
+ bool isDiscoverable = false;
+ int err = WIFI_DIRECT_ERROR_NONE;
- err = wifi_direct_is_discoverable(&isDiscoverable);
+ err = wifi_direct_is_discoverable(&isDiscoverable);
- if (err != WIFI_DIRECT_ERROR_NONE)
- {
- SysLog(NID_NET_WIFI, "Getting discoverable state has failed.");
- return false;
- }
+ if (err != WIFI_DIRECT_ERROR_NONE)
+ {
+ SysLog(NID_NET_WIFI, "Failed result from wifi_direct_is_discoverable() is 0x%x", err);
+
+ return false;
+ }
- return isDiscoverable;
+ return isDiscoverable;
}
bool
_WifiDirectSystemAdapter::IsActivated(void) const
{
- if (__currentState != WIFI_DIRECT_SYSTEM_DEACTIVATED &&
- __currentState != WIFI_DIRECT_SYSTEM_ACTIVATING )
- {
- return true;
- }
+ if (__currentState != WIFI_DIRECT_SYSTEM_DEACTIVATED &&
+ __currentState != WIFI_DIRECT_SYSTEM_ACTIVATING)
+ {
+ return true;
+ }
- return false;
+ return false;
}
result
_WifiDirectSystemAdapter::Connect(const WifiDirectDeviceInfo& peerDeviceInfo)
{
- result r = E_SYSTEM;
+ SysLog(NID_NET_WIFI, ">>> %ls", GetStringOfAllCurrentState().GetPointer());
- switch(__currentState)
- {
- case WIFI_DIRECT_SYSTEM_AUTONOMOUS_GROUP_CREATING:
- case WIFI_DIRECT_SYSTEM_GROUP_CREATING:
- case WIFI_DIRECT_SYSTEM_CONNECTING:
- r = E_IN_PROGRESS;
- break;
- case WIFI_DIRECT_SYSTEM_ACTIVATED:
- case WIFI_DIRECT_SYSTEM_OWNER:
- {
- unique_ptr<char[]> pMacAddress(_WifiDirectUtility::ConvertMacStringToCharN(peerDeviceInfo.GetMacAddress()));
- SysTryReturnResult(NID_NET_WIFI, pMacAddress != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
-
- int err = wifi_direct_connect(pMacAddress.get());
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ result r = E_SYSTEM;
+ int err = WIFI_DIRECT_ERROR_NONE;
+
+ switch (__currentState)
+ {
+ case WIFI_DIRECT_SYSTEM_AUTONOMOUS_GROUP_CREATING:
+ case WIFI_DIRECT_SYSTEM_GROUP_CREATING:
+ case WIFI_DIRECT_SYSTEM_CONNECTING:
+ r = E_IN_PROGRESS;
+ break;
+
+ case WIFI_DIRECT_SYSTEM_ACTIVATED:
+ case WIFI_DIRECT_SYSTEM_OWNER:
+ {
+ unique_ptr< char[] > pMacAddress(_WifiDirectUtility::ConvertMacStringToCharN(peerDeviceInfo.GetMacAddress()));
+ SysTryReturnResult(NID_NET_WIFI, pMacAddress != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
+
+ int err = wifi_direct_connect(pMacAddress.get());
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+
+ if (r == E_SUCCESS)
+ {
+ __currentState = WIFI_DIRECT_SYSTEM_CONNECTING;
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
+ }
+ }
+ break;
- if (r == E_SUCCESS)
- {
- __currentState = WIFI_DIRECT_SYSTEM_CONNECTING;
- }
- }
- break;
- default:
- r = E_INVALID_OPERATION;
- break;
- }
+ default:
+ r = E_INVALID_OPERATION;
+ break;
+ }
- if (IsFailed(r))
- {
- SysLog(NID_NET_WIFI, "[%s] Propagating.", GetErrorMessage(r));
- result ret = StartListenMode();
- SysLogException(NID_NET_WIFI, ret, "[%s] Propagating.", GetErrorMessage(ret));
- }
+ if (IsFailed(r))
+ {
+ SysLog(NID_NET_WIFI, "[%s] Failed result from wifi_direct_connect() is 0x%x", GetErrorMessage(r), err);
+ result ret = StartListenMode();
+ SysLogException(NID_NET_WIFI, ret, "[%s] Propagating.", GetErrorMessage(ret));
+ }
- return r;
+ SysLog(NID_NET_WIFI, "<<< [%s] The current state is %ls", GetErrorMessage(r), GetStringOfAllCurrentState().GetPointer());
+ return r;
}
result
_WifiDirectSystemAdapter::CancelConnect(void)
{
- result r = E_SYSTEM;
- int err = WIFI_DIRECT_ERROR_NONE;
-
- switch(__currentState)
- {
- case WIFI_DIRECT_SYSTEM_GROUP_CREATING:
- case WIFI_DIRECT_SYSTEM_CONNECTING:
- err = wifi_direct_disconnect_all();
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
-
- if (r == E_SUCCESS)
- {
- __currentState = WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING;
- }
- else
- {
- SysLog(NID_NET_WIFI, "[%s] Propagating.", GetErrorMessage(r));
- result ret = StartListenMode();
- SysLogException(NID_NET_WIFI, ret, "[%s] Propagating.", GetErrorMessage(ret));
- }
- break;
- case WIFI_DIRECT_SYSTEM_GROUP_CANCELING:
- case WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING:
- r = E_IN_PROGRESS;
- break;
- default:
- r = E_INVALID_OPERATION;
- break;
- }
+ SysLog(NID_NET_WIFI, ">>> %ls", GetStringOfAllCurrentState().GetPointer());
- SysLog(NID_NET_WIFI, "[%s] The current state is %ls", GetErrorMessage(r), GetStringOfAllCurrentState().GetPointer());
- return r;
+ result r = E_SYSTEM;
+ int err = WIFI_DIRECT_ERROR_NONE;
+
+ switch (__currentState)
+ {
+ case WIFI_DIRECT_SYSTEM_GROUP_CREATING:
+ case WIFI_DIRECT_SYSTEM_CONNECTING:
+ err = wifi_direct_disconnect_all();
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+
+ if (r == E_SUCCESS)
+ {
+ __currentState = WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING;
+ }
+ else
+ {
+ SysLog(NID_NET_WIFI, "[%s] Failed result from wifi_direct_disconnect_all() is 0x%x", GetErrorMessage(r), err);
+ result ret = StartListenMode();
+ SysLogException(NID_NET_WIFI, ret, "[%s] Propagating.", GetErrorMessage(ret));
+ }
+ break;
+
+ case WIFI_DIRECT_SYSTEM_GROUP_CANCELING:
+ case WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING:
+ r = E_IN_PROGRESS;
+ break;
+
+ default:
+ r = E_INVALID_OPERATION;
+ break;
+ }
+
+ SysLog(NID_NET_WIFI, "<<< [%s] The current state is %ls", GetErrorMessage(r), GetStringOfAllCurrentState().GetPointer());
+ return r;
}
result
_WifiDirectSystemAdapter::CreateAutonomousGroup(void)
{
- result r = E_SYSTEM;
-
- if (__currentState == WIFI_DIRECT_SYSTEM_ACTIVATED)
- {
- int err = wifi_direct_create_group();
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysLog(NID_NET_WIFI, ">>> %ls", GetStringOfAllCurrentState().GetPointer());
- if (r == E_SUCCESS)
- {
- __currentState = WIFI_DIRECT_SYSTEM_AUTONOMOUS_GROUP_CREATING;
- }
- else
- {
- SysLog(NID_NET_WIFI, "[%s] Propagating.", GetErrorMessage(r));
- result ret = StartListenMode();
- SysLogException(NID_NET_WIFI, ret, "[%s] Propagating.", GetErrorMessage(ret));
- }
- }
- else
- {
- r = E_INVALID_OPERATION;
- SysLog(NID_NET_WIFI, "[%s] The current state is %ls.", GetErrorMessage(r), GetStringOfAllCurrentState().GetPointer());
- }
+ result r = E_SYSTEM;
- return r;
+ if (__currentState == WIFI_DIRECT_SYSTEM_ACTIVATED)
+ {
+ int err = wifi_direct_create_group();
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+
+ if (r == E_SUCCESS)
+ {
+ __currentState = WIFI_DIRECT_SYSTEM_AUTONOMOUS_GROUP_CREATING;
+ }
+ else
+ {
+ SysLog(NID_NET_WIFI, "[%s] Failed result from wifi_direct_create_group() is 0x%x", GetErrorMessage(r), err);
+ result ret = StartListenMode();
+ SysLogException(NID_NET_WIFI, ret, "[%s] Propagating.", GetErrorMessage(ret));
+ }
+ }
+ else
+ {
+ r = E_INVALID_OPERATION;
+ }
+
+ SysLog(NID_NET_WIFI, "<<< [%s] The current state is %ls", GetErrorMessage(r), GetStringOfAllCurrentState().GetPointer());
+ return r;
}
result
_WifiDirectSystemAdapter::SetGroupSettingInfo(const WifiDirectGroupInfo& groupSettingInfo)
{
- result r = E_SUCCESS;
- int err = WIFI_DIRECT_ERROR_NONE;
+ result r = E_SUCCESS;
+ int err = WIFI_DIRECT_ERROR_NONE;
- // Sets group owner intent
- err = wifi_direct_set_group_owner_intent(groupSettingInfo.GetGroupOwnerIntent());
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_INVALID_OPERATION);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
+ // Sets group owner intent
+ err = wifi_direct_set_group_owner_intent(groupSettingInfo.GetGroupOwnerIntent());
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_INVALID_OPERATION);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed result from wifi_direct_set_group_owner_intent() is 0x%x", err);
- // Sets max clients
- err = wifi_direct_set_max_clients(groupSettingInfo.GetMaxNumberOfClients());
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_INVALID_OPERATION);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
+ // Sets max clients
+ err = wifi_direct_set_max_clients(groupSettingInfo.GetMaxNumberOfClients());
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_INVALID_OPERATION);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed result from wifi_direct_set_max_clients() is 0x%x", err);
- return r;
+ return r;
}
result
_WifiDirectSystemAdapter::LeaveGroup(void)
{
- result r = E_SYSTEM;
- int err = WIFI_DIRECT_ERROR_NONE;
-
- if (__currentState == WIFI_DIRECT_SYSTEM_OWNER)
- {
- err = wifi_direct_destroy_group();
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
-
- __currentState = WIFI_DIRECT_SYSTEM_LEAVING;
- }
- else if ( __currentState == WIFI_DIRECT_SYSTEM_CLIENT)
- {
- err = wifi_direct_disconnect_all();
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
-
- __currentState = WIFI_DIRECT_SYSTEM_LEAVING;
- }
- else if (__currentState == WIFI_DIRECT_SYSTEM_LEAVING)
- {
- r = E_IN_PROGRESS;
- }
- else
- {
- r = E_INVALID_OPERATION;
- }
+ SysLog(NID_NET_WIFI, ">>> %ls", GetStringOfAllCurrentState().GetPointer());
- return r;
+ result r = E_SYSTEM;
+ int err = WIFI_DIRECT_ERROR_NONE;
+
+ if (__currentState == WIFI_DIRECT_SYSTEM_OWNER)
+ {
+ err = wifi_direct_destroy_group();
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed result from wifi_direct_destroy_group() is 0x%x", err);
+
+ __currentState = WIFI_DIRECT_SYSTEM_LEAVING;
+ }
+ else if (__currentState == WIFI_DIRECT_SYSTEM_CLIENT)
+ {
+ err = wifi_direct_disconnect_all();
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed result from wifi_direct_disconnect_all() is 0x%x", err);
+
+ __currentState = WIFI_DIRECT_SYSTEM_LEAVING;
+ }
+ else if (__currentState == WIFI_DIRECT_SYSTEM_LEAVING)
+ {
+ r = E_IN_PROGRESS;
+ }
+ else
+ {
+ r = E_INVALID_OPERATION;
+ }
+
+ SysLog(NID_NET_WIFI, "<<< [%s] The current state is %ls", GetErrorMessage(r), GetStringOfAllCurrentState().GetPointer());
+ return r;
}
WifiDirectDeviceInfo*
_WifiDirectSystemAdapter::GetGroupOwnerInfoN(void) const
{
- ClearLastResult();
- result r = E_SYSTEM;
- WifiDirectDeviceInfo* pGroupOwnerInfo = null;
-
- if (__currentState == WIFI_DIRECT_SYSTEM_OWNER)
- {
- pGroupOwnerInfo = GetLocalDeviceInfoN();
- }
- else if (__currentState == WIFI_DIRECT_SYSTEM_CLIENT)
- {
- pGroupOwnerInfo = GetConnectedPeerDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER);
-
- char* pSsid = null;
- int err = wifi_direct_get_ssid(&pSsid);
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
-
- if (pSsid == null)
- {
- SetLastResult(r);
- SysLog(NID_NET_WIFI, "The ssid is null");
- }
- else
- {
- _WifiDirectDeviceInfoImpl::SetSsidOfWifiDirectDeviceInfo(*pGroupOwnerInfo, String(pSsid));
- free(pSsid);
- }
- }
- else
- {
- SetLastResult(E_INVALID_OPERATION);
- }
-
- return pGroupOwnerInfo;
+ ClearLastResult();
+ result r = E_SYSTEM;
+ WifiDirectDeviceInfo* pGroupOwnerInfo = null;
+
+ if (__currentState == WIFI_DIRECT_SYSTEM_OWNER)
+ {
+ pGroupOwnerInfo = GetLocalDeviceInfoN();
+ }
+ else if (__currentState == WIFI_DIRECT_SYSTEM_CLIENT)
+ {
+ pGroupOwnerInfo = GetConnectedPeerDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER);
+
+ char* pSsid = null;
+ int err = wifi_direct_get_ssid(&pSsid);
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+
+ if (pSsid == null)
+ {
+ SetLastResult(r);
+ SysLog(NID_NET_WIFI, "The ssid is null");
+ }
+ else
+ {
+ _WifiDirectDeviceInfoImpl::SetSsidOfWifiDirectDeviceInfo(*pGroupOwnerInfo, String(pSsid));
+ free(pSsid);
+ }
+ }
+ else
+ {
+ SetLastResult(E_INVALID_OPERATION);
+ }
+
+ return pGroupOwnerInfo;
}
IList*
_WifiDirectSystemAdapter::GetGroupClientInfoListN(void) const
{
- ClearLastResult();
- result r = E_SYSTEM;
- LinkedList* pClientInfoList = null;
+ result r = E_SYSTEM;
+ LinkedList* pClientInfoList = null;
- pClientInfoList = new (std::nothrow) LinkedList(SingleObjectDeleter);
- SysTryReturn(NID_NET_WIFI, pClientInfoList != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ pClientInfoList = new (std::nothrow) LinkedList(SingleObjectDeleter);
+ SysTryReturn(NID_NET_WIFI, pClientInfoList != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- if (__currentState == WIFI_DIRECT_SYSTEM_OWNER)
- {
- int err = wifi_direct_foreach_connected_peers(OnWifiDirectEachConnectedClient, pClientInfoList);
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
- }
- else
- {
- SetLastResult(E_INVALID_OPERATION);
- }
+ if (__currentState == WIFI_DIRECT_SYSTEM_OWNER)
+ {
+ int err = wifi_direct_foreach_connected_peers(OnWifiDirectEachConnectedClient, pClientInfoList);
+ // ToDo: If peer does not exist, wifi_direct_foreach_connected_peers API returns WIFI_DIRECT_ERROR_OPERATION_FAILED
+ // It will be fixed soon.
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE || err == WIFI_DIRECT_ERROR_OPERATION_FAILED, r, E_SUCCESS);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Failed result from wifi_direct_foreach_connected_peers() is 0x%x", GetErrorMessage(r), err);
+ }
+ else
+ {
+ SetLastResult(E_INVALID_OPERATION);
+ }
- return pClientInfoList;
+ return pClientInfoList;
}
WifiRadioChannel
_WifiDirectSystemAdapter::GetOperatingChannel(void) const
{
- int channel = 0;
- int err = WIFI_DIRECT_ERROR_NONE;
+ int channel = 0;
+ int err = WIFI_DIRECT_ERROR_NONE;
- err = wifi_direct_get_operating_channel(&channel);
+ err = wifi_direct_get_operating_channel(&channel);
- if (err != WIFI_DIRECT_ERROR_NONE)
- {
- SysLog(NID_NET_WIFI, "Getting operating channel has failed.");
- return WIFI_RADIO_CHANNEL_UNKNOWN;
- }
+ if (err != WIFI_DIRECT_ERROR_NONE)
+ {
+ SysLog(NID_NET_WIFI, "Failed result from wifi_direct_get_operating_channel() is 0x%x", err);
+ return WIFI_RADIO_CHANNEL_UNKNOWN;
+ }
- WifiRadioChannel operatingChannel = _WifiDirectUtility::ConvertChannel(channel);
+ WifiRadioChannel operatingChannel = _WifiDirectUtility::ConvertChannel(channel);
- return operatingChannel;
+ return operatingChannel;
}
result
_WifiDirectSystemAdapter::DestroyGroup(void)
{
- result r = E_SYSTEM;
- int err = WIFI_DIRECT_ERROR_NONE;
+ SysLog(NID_NET_WIFI, ">>> %ls", GetStringOfAllCurrentState().GetPointer());
- if (__currentState == WIFI_DIRECT_SYSTEM_OWNER)
- {
- err = wifi_direct_destroy_group();
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
+ result r = E_SYSTEM;
+ int err = WIFI_DIRECT_ERROR_NONE;
- __currentState = WIFI_DIRECT_SYSTEM_DESTROYING;
- }
- else if (__currentState == WIFI_DIRECT_SYSTEM_DESTROYING)
- {
- r = E_IN_PROGRESS;
- }
- else
- {
- r = E_INVALID_OPERATION;
- }
+ if (__currentState == WIFI_DIRECT_SYSTEM_OWNER)
+ {
+ err = wifi_direct_destroy_group();
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed result from wifi_direct_destroy_group() is 0x%x", err);
- return r;
+ __currentState = WIFI_DIRECT_SYSTEM_DESTROYING;
+ }
+ else if (__currentState == WIFI_DIRECT_SYSTEM_DESTROYING)
+ {
+ r = E_IN_PROGRESS;
+ }
+ else
+ {
+ r = E_INVALID_OPERATION;
+ }
+
+ SysLog(NID_NET_WIFI, "<<< [%s] The current state is %ls", GetErrorMessage(r), GetStringOfAllCurrentState().GetPointer());
+ return r;
}
result
_WifiDirectSystemAdapter::Disconnect(const WifiDirectDeviceInfo& remoteDeviceInfo)
{
- result r = E_SYSTEM;
+ SysLog(NID_NET_WIFI, ">>> %ls", GetStringOfAllCurrentState().GetPointer());
- switch(__currentState)
- {
- case WIFI_DIRECT_SYSTEM_DISCONNECTING:
- r = E_IN_PROGRESS;
- break;
- case WIFI_DIRECT_SYSTEM_OWNER:
- case WIFI_DIRECT_SYSTEM_CLIENT:
- {
- unique_ptr<char[]> pMacAddress(_WifiDirectUtility::ConvertMacStringToCharN(remoteDeviceInfo.GetMacAddress()));
- SysTryReturnResult(NID_NET_WIFI, pMacAddress != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Failed to convert mac address.");
- int err = WIFI_DIRECT_ERROR_NONE;
+ result r = E_SYSTEM;
- err = wifi_direct_disconnect(pMacAddress.get());
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Propagating.");
+ switch (__currentState)
+ {
+ case WIFI_DIRECT_SYSTEM_DISCONNECTING:
+ r = E_IN_PROGRESS;
+ break;
- if (__currentState == WIFI_DIRECT_SYSTEM_OWNER)
- {
- WifiDirectDeviceInfo* pDeviceInfo = GetPeerInfo(remoteDeviceInfo.GetMacAddress());
- SysTryLog(NID_NET_WIFI, pDeviceInfo != null, "The client info was not found.");
+ case WIFI_DIRECT_SYSTEM_OWNER:
+ case WIFI_DIRECT_SYSTEM_CLIENT:
+ {
+ unique_ptr< char[] > pMacAddress(_WifiDirectUtility::ConvertMacStringToCharN(remoteDeviceInfo.GetMacAddress()));
+ SysTryReturnResult(NID_NET_WIFI, pMacAddress != null, r, "Failed to convert mac address.");
+ int err = WIFI_DIRECT_ERROR_NONE;
- if (pDeviceInfo != null)
- {
- _WifiDirectDeviceInfoImpl::GetInstance(*pDeviceInfo)->SetDisconnect(true);
- }
- }
+ err = wifi_direct_disconnect(pMacAddress.get());
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed result from wifi_direct_disconnect() is 0x%x", err);
- __currentState = WIFI_DIRECT_SYSTEM_DISCONNECTING;
+ if (__currentState == WIFI_DIRECT_SYSTEM_OWNER)
+ {
+ WifiDirectDeviceInfo* pDeviceInfo = GetPeerInfo(remoteDeviceInfo.GetMacAddress());
+ SysTryLog(NID_NET_WIFI, pDeviceInfo != null, "The client info was not found.");
- }
- break;
- default:
- r = E_INVALID_OPERATION;
- break;
- }
+ if (pDeviceInfo != null)
+ {
+ _WifiDirectDeviceInfoImpl::GetInstance(*pDeviceInfo)->SetDisconnect(true);
+ }
+ }
+
+ __currentState = WIFI_DIRECT_SYSTEM_DISCONNECTING;
+
+ }
+ break;
- return r;
+ default:
+ r = E_INVALID_OPERATION;
+ break;
+ }
+
+ SysLog(NID_NET_WIFI, "<<< [%s] The current state is %ls", GetErrorMessage(r), GetStringOfAllCurrentState().GetPointer());
+ return r;
}
IList*
_WifiDirectSystemAdapter::GetAllGroupMemberInfoImplListN(void)
{
- int err = WIFI_DIRECT_ERROR_NONE;
- result r = E_SUCCESS;
+ int err = WIFI_DIRECT_ERROR_NONE;
+ result r = E_SUCCESS;
- unique_ptr<ArrayList, AllElementsDeleter> pDeviceInfoList(new (std::nothrow) ArrayList());
- SysTryReturn(NID_NET_WIFI, pDeviceInfoList, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ unique_ptr< ArrayList > pDeviceInfoList(new (std::nothrow) ArrayList(SingleObjectDeleter));
+ SysTryReturn(NID_NET_WIFI, pDeviceInfoList, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- r = pDeviceInfoList->Construct();
- r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Constructing ArrayList has failed.", GetErrorMessage(r));
+ r = pDeviceInfoList->Construct();
+ r = TransExceptionsExclusive(r, E_SYSTEM, E_OUT_OF_MEMORY);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Constructing ArrayList has failed.", GetErrorMessage(r));
- if(__currentState == WIFI_DIRECT_SYSTEM_OWNER)
- {
- WifiDirectDeviceInfo* pDeviceInfo = GetLocalDeviceInfoN();
- r = GetLastResult();
- SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, r, "[%s] Getting LocalDeviceInfo has failed.", GetErrorMessage(r));
+ if (__currentState == WIFI_DIRECT_SYSTEM_OWNER)
+ {
+ WifiDirectDeviceInfo* pDeviceInfo = GetLocalDeviceInfoN();
+ r = GetLastResult();
+ SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, r, "[%s] Getting LocalDeviceInfo has failed.", GetErrorMessage(r));
- r = pDeviceInfoList->Add(*pDeviceInfo);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, E_SYSTEM, "[%s] Adding object in ArrayList has failed.", GetErrorMessage(r));
- }
+ r = pDeviceInfoList->Add(*pDeviceInfo);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, E_SYSTEM, "[%s] Adding object in ArrayList has failed.", GetErrorMessage(r));
+ }
- err = wifi_direct_foreach_connected_peers(OnWifiDirectEachConnectedClient, pDeviceInfoList.get());
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ err = wifi_direct_foreach_connected_peers(OnWifiDirectEachConnectedClient, pDeviceInfoList.get());
+ // ToDo: If peer does not exist, wifi_direct_foreach_connected_peers API returns WIFI_DIRECT_ERROR_OPERATION_FAILED
+ // It will be fixed soon.
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE && err != WIFI_DIRECT_ERROR_OPERATION_FAILED, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Failed result from wifi_direct_foreach_connected_peers() is 0x%x", GetErrorMessage(r), err);
- return pDeviceInfoList.release();
+ return pDeviceInfoList.release();
}
-/////////////////////////////////////////////////////
-// Client
-
result
_WifiDirectSystemAdapter::Disassociate(void)
{
- result r = E_SYSTEM;
+ SysLog(NID_NET_WIFI, ">>> %ls", GetStringOfAllCurrentState().GetPointer());
- if(__currentState == WIFI_DIRECT_SYSTEM_CLIENT)
- {
- int err = wifi_direct_disconnect_all();
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
-
- __currentState = WIFI_DIRECT_SYSTEM_DISCONNECTING;
- }
- else
- {
- r = E_INVALID_OPERATION;
- }
+ result r = E_SYSTEM;
- return E_SUCCESS;
-}
+ if (__currentState == WIFI_DIRECT_SYSTEM_CLIENT)
+ {
+ int err = wifi_direct_disconnect_all();
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed result from wifi_direct_disconnect_all() is 0x%x", GetErrorMessage(r), err);
+ __currentState = WIFI_DIRECT_SYSTEM_DISCONNECTING;
+ }
+ else
+ {
+ r = E_INVALID_OPERATION;
+ }
-///////////////////////////////////////////////////////////////
-// Internal
+ SysLog(NID_NET_WIFI, "<<< [%s] The current state is %ls", GetErrorMessage(r), GetStringOfAllCurrentState().GetPointer());
+ return E_SUCCESS;
+}
WifiDirectGroupMemberType
_WifiDirectSystemAdapter::GetCurrentMemberType(void) const
{
- WifiDirectGroupMemberType memberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE;
+ WifiDirectGroupMemberType memberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE;
- switch(__currentState)
- {
- case WIFI_DIRECT_SYSTEM_OWNER:
- memberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER;
- break;
- case WIFI_DIRECT_SYSTEM_CLIENT:
- memberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT;
- break;
- case WIFI_DIRECT_SYSTEM_DISCONNECTING:
- case WIFI_DIRECT_SYSTEM_DESTROYING:
- {
- bool isGroupOwner = false;
- int err = wifi_direct_is_group_owner(&isGroupOwner);
- SysLog(NID_NET_WIFI, "[0x%x] Return value of wifi_direct_is_group_owner()", err);
+ switch (__currentState)
+ {
+ case WIFI_DIRECT_SYSTEM_OWNER:
+ memberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER;
+ break;
- if (isGroupOwner == true)
- {
- memberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER;
- }
- else
- {
- memberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT;
- }
- }
- break;
- default:
- memberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE;
- break;
- }
+ case WIFI_DIRECT_SYSTEM_CLIENT:
+ memberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT;
+ break;
- return memberType;
+ case WIFI_DIRECT_SYSTEM_DISCONNECTING:
+ case WIFI_DIRECT_SYSTEM_DESTROYING:
+ {
+ bool isGroupOwner = false;
+ int err = wifi_direct_is_group_owner(&isGroupOwner);
+ SysLog(NID_NET_WIFI, "[0x%x] Return value of wifi_direct_is_group_owner()", err);
+
+ if (isGroupOwner == true)
+ {
+ memberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER;
+ }
+ else
+ {
+ memberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT;
+ }
+ }
+ break;
+
+ default:
+ memberType = WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE;
+ break;
+ }
+
+ return memberType;
}
bool
_WifiDirectSystemAdapter::Construct(void)
{
- result r = E_SUCCESS;
- int err = WIFI_DIRECT_ERROR_NONE;
+ result r = E_SUCCESS;
+ int err = WIFI_DIRECT_ERROR_NONE;
+ IList* pConnectedPeerList = null;
+
+ unique_ptr< _WifiDirectEvent, _WifiDirectEventDeleter > pWifiDirectEvent(new (std::nothrow) _WifiDirectEvent());
+ SysTryReturn(NID_NET_WIFI, pWifiDirectEvent != null, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+
+ r = pWifiDirectEvent->Construct();
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+
+ __pWifiServiceProxy = _WifiIpcProxy::GetInstance();
+ if (__pWifiServiceProxy != null)
+ {
+ r = __pWifiServiceProxy->InitializeWifiDirect();
+ SysLog(NID_NET_WIFI, "Initializing WifiDirect service of osp-connectivity-service %s.",
+ (r == E_SUCCESS) ? "is successful" : "fails");
+ }
+ else
+ {
+ SysLog(NID_NET_WIFI, "Creating an IPC instance to connect with the Connectivity service daemon has failed.");
+ }
+
+ err = wifi_direct_initialize();
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, false, r, "[%s] Failed result from wifi_direct_initialize() is 0x%x.", GetErrorMessage(r), err);
+
+ err = wifi_direct_set_device_state_changed_cb(OnWifiDirectPowerChanged, null);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, false, r, "[%s] Failed result from wifi_direct_set_device_state_changed_cb() is 0x%x.", GetErrorMessage(r), err);
+
+ err = wifi_direct_set_discovery_state_changed_cb(OnWifiDirectScanCompleted, null);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, false, r, "[%s] Failed result from wifi_direct_set_discovery_state_changed_cb() is 0x%x.", GetErrorMessage(r), err);
+
+ err = wifi_direct_set_connection_state_changed_cb(OnWifiDirectConnectionChanged, null);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, false, r, "[%s] Failed result from wifi_direct_set_connection_state_changed_cb() is 0x%x.", GetErrorMessage(r), err);
+
+ err = wifi_direct_set_client_ip_address_assigned_cb(OnWifiDirectClientIpAssigned, null);
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, false, r, "[%s] Failed result from wifi_direct_set_client_ip_address_assigned_cb() is 0x%x.", GetErrorMessage(r), err);
+
+ r = InitializeCurrentState();
+ SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
+
+ if (__currentState == WIFI_DIRECT_SYSTEM_OWNER)
+ {
+ pConnectedPeerList = GetConnectedPeerDeviceInfoListN(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER);
+ SysTryCatch(NID_NET_WIFI, pConnectedPeerList != null, , E_SYSTEM, "Failed to get device info of connected clients.");
+ }
+ else if (__currentState == WIFI_DIRECT_SYSTEM_CLIENT)
+ {
+ pConnectedPeerList = GetConnectedPeerDeviceInfoListN(WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT);
+ SysTryCatch(NID_NET_WIFI, pConnectedPeerList != null, , E_SYSTEM, "Failed to get device info of connected owner.");
+ }
+
+ if (pConnectedPeerList != null)
+ {
+ for (int i = 0; i < pConnectedPeerList->GetCount(); i++)
+ {
+ WifiDirectDeviceInfo* pDeviceInfo = static_cast< WifiDirectDeviceInfo* >(pConnectedPeerList->GetAt(i));
+ AddPeerInfo(pDeviceInfo);
+ }
+ delete pConnectedPeerList;
+ }
+
+ __pWifiDirectEvent = move(pWifiDirectEvent);
+
+ return true;
- unique_ptr<_WifiDirectEvent,_WifiDirectEventDeleter> pWifiDirectEvent(new (std::nothrow) _WifiDirectEvent());
- SysTryReturn(NID_NET_WIFI, pWifiDirectEvent != null, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
-
- r = pWifiDirectEvent->Construct();
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
-
- __pWifiServiceProxy = _WifiIpcProxy::GetInstance();
- if (__pWifiServiceProxy != null)
- {
- r = __pWifiServiceProxy->InitializeWifiDirect();
- SysLog(NID_NET_WIFI, "Initializing WifiDirect service of osp-connectivity-service %s.",
- (r == E_SUCCESS) ? "is successful" : "fails");
- }
- else
- {
- SysLog(NID_NET_WIFI, "Creating an IPC instance to connect with the Connectivity service daemon has failed.");
- }
-
- err = wifi_direct_initialize();
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, false, r, "[%s] Propagating.", GetErrorMessage(r));
-
- err = wifi_direct_set_device_state_changed_cb(OnWifiDirectPowerChanged, null);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
-
- err = wifi_direct_set_discovery_state_changed_cb(OnWifiDirectScanCompleted, null);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
+CATCH:
+ err = wifi_direct_deinitialize();
+ SysTryLog(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, "Failed result from wifi_direct_deinitialize() is 0x%x.", err);
- err = wifi_direct_set_connection_state_changed_cb(OnWifiDirectConnectionChanged, null);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
-
- err = wifi_direct_set_client_ip_address_assigned_cb(OnWifiDirectClientIpAssigned, null);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
-
- r = InitializeCurrentState();
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
-
- r = __connectedPeerList.Construct();
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , E_SYSTEM, "[%s] Construction of ArrayList has failed.", GetErrorMessage(r));
-
- __pWifiDirectEvent = move(pWifiDirectEvent);
-
- return true;
-
-CATCH:
- err = wifi_direct_deinitialize();
- SysLog(NID_NET_WIFI, "[0x%x] Return value of wifi_direct_deinitialize()", err);
-
- return false;
+ return false;
}
void
_WifiDirectSystemAdapter::AddListener(const _WifiDirectDeviceImpl& listner)
{
- __pWifiDirectEvent->AddListener(listner, true);
+ __pWifiDirectEvent->AddListener(listner, true);
}
void
_WifiDirectSystemAdapter::RemoveListener(const _WifiDirectDeviceImpl& listner)
{
- __pWifiDirectEvent->RemoveListener(listner);
+ __pWifiDirectEvent->RemoveListener(listner);
}
result
_WifiDirectSystemAdapter::AddPeerInfo(WifiDirectDeviceInfo* pPeerInfo)
{
- WifiDirectDeviceInfo* pPeerInfoTemp = new WifiDirectDeviceInfo(*pPeerInfo);
- return __connectedPeerList.Add(*pPeerInfoTemp);
+ _WifiDirectDeviceInfoImpl::PrintDeviceInfo(*_WifiDirectDeviceInfoImpl::GetInstance(*pPeerInfo));
+
+ WifiDirectDeviceInfo* pPeerInfoTemp = new WifiDirectDeviceInfo(*pPeerInfo);
+ return __connectedPeerList.Add(*pPeerInfoTemp);
}
result
_WifiDirectSystemAdapter::RemovePeerInfo(WifiDirectDeviceInfo* pPeerInfo)
{
- return __connectedPeerList.Remove(*pPeerInfo, true);
+ _WifiDirectDeviceInfoImpl::PrintDeviceInfo(*_WifiDirectDeviceInfoImpl::GetInstance(*pPeerInfo));
+
+ return __connectedPeerList.Remove(*pPeerInfo, true);
}
WifiDirectDeviceInfo*
_WifiDirectSystemAdapter::GetPeerInfo(const String& macAddress)
{
- WifiDirectDeviceInfo* pDeviceInfo = null;
- for(int i = 0; i < __connectedPeerList.GetCount(); i++)
- {
- pDeviceInfo = dynamic_cast<WifiDirectDeviceInfo*>(__connectedPeerList.GetAt(i));
+ WifiDirectDeviceInfo* pDeviceInfo = null;
+ for (int i = 0; i < __connectedPeerList.GetCount(); i++)
+ {
+ pDeviceInfo = dynamic_cast< WifiDirectDeviceInfo* >(__connectedPeerList.GetAt(i));
- if (pDeviceInfo != null && pDeviceInfo->GetMacAddress() == macAddress)
- {
- return pDeviceInfo;
- }
- }
- return null;
+ if (pDeviceInfo != null && pDeviceInfo->GetMacAddress() == macAddress)
+ {
+ return pDeviceInfo;
+ }
+ }
+ return null;
}
_WifiDirectSystemAdapter::_WifiDirectSystemAdapter(void)
- : __remoteMacAddress()
- , __remoteDeviceName()
- , __pScanResult(null)
- , __currentState(WIFI_DIRECT_SYSTEM_DEACTIVATED)
- , __currentScanState(WIFI_DIRECT_SYSTEM_SCAN_IDLE)
- , __connectedPeerList(SingleObjectDeleter)
+ : __remoteMacAddress()
+ , __remoteDeviceName()
+ , __pScanResult(null)
+ , __currentState(WIFI_DIRECT_SYSTEM_DEACTIVATED)
+ , __currentScanState(WIFI_DIRECT_SYSTEM_SCAN_IDLE)
+ , __connectedPeerList(SingleObjectDeleter)
, __discoveredPeerList(SingleObjectDeleter)
-
- , __pWifiServiceProxy(null)
+ , __pWifiServiceProxy(null)
{
}
_WifiDirectSystemAdapter::~_WifiDirectSystemAdapter(void)
{
- int err = WIFI_DIRECT_ERROR_NONE;
-
- err = wifi_direct_deinitialize();
- SysLog(NID_NET_WIFI, "[0x%x] Return value of wifi_direct_deinitialize()", err);
}
-// Callback function
void
_WifiDirectSystemAdapter::OnWifiDirectPowerChanged(int errorCode, wifi_direct_device_state_e deviceState, void* pUserData)
{
- SysLog(NID_NET_WIFI, "Enter, [deviceState:0x%x] [ErrorCode:0x%x]", deviceState, errorCode);
- SysLog(NID_NET_WIFI, "%ls", __pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
+ SysLog(NID_NET_WIFI, ">>> %ls", __pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
- int err = WIFI_DIRECT_ERROR_NONE;
- result r = E_SYSTEM;
- _WifiDirectEventArg* pEventArg = null;
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ int err = WIFI_DIRECT_ERROR_NONE;
+ result r = E_SYSTEM;
+ _WifiDirectEventArg* pEventArg = null;
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+
+ switch (deviceState)
+ {
+ case WIFI_DIRECT_DEVICE_STATE_ACTIVATED:
+ SysLog(NID_NET_WIFI, "event type : WIFI_DIRECT_DEVICE_STATE_ACTIVATED, error code : 0x%x", errorCode);
+ //Don't fire event here, we will fire event after Listen Mode has started
+ if (r == E_SUCCESS)
+ {
+ if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_ACTIVATING)
+ {
+ result res = __pWifiDirectSystemAdapter->StartListenMode();
- switch(deviceState)
- {
- case WIFI_DIRECT_DEVICE_STATE_ACTIVATED:
- SysLog(NID_NET_WIFI, "deviceState : WIFI_DIRECT_DEVICE_STATE_ACTIVATED");
- //Don't fire event here, we will fire event after Listen Mode has started
- //pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ACTIVATED, DEFAULT_DEVICE_ID, r);
- //SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ if (IsFailed(res))
+ {
+ SysLogException(NID_NET_WIFI, res, "[%s] Propagating.", GetErrorMessage(res));
- if (r == E_SUCCESS)
- {
- if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_ACTIVATING)
- {
- result res = __pWifiDirectSystemAdapter->StartListenMode();
-
- if (IsFailed(res))
- {
- SysLogException(NID_NET_WIFI, res, "[%s] Propagating.", GetErrorMessage(res));
-
- err = wifi_direct_deactivate();
- r = _WifiDirectUtility::ConvertErrorCode(err);
- SysLog(NID_NET_WIFI, "[%s] Propagating.", GetErrorMessage(r));
-
- return;
- }
- }
- else if(__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_DEACTIVATED)
- {
- __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_ACTIVATED;
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ACTIVATED, DEFAULT_DEVICE_ID, r);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- }
- }
- else
- {
- __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_DEACTIVATED;
- }
- break;
- case WIFI_DIRECT_DEVICE_STATE_DEACTIVATED:
- SysLog(NID_NET_WIFI, "deviceState : WIFI_DIRECT_DEVICE_STATE_DEACTIVATED");
- if (__pWifiDirectSystemAdapter->__currentState != WIFI_DIRECT_SYSTEM_ACTIVATING)
- {
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_DEACTIVATED, DEFAULT_DEVICE_ID, r);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
-
- if (r == E_SUCCESS)
- {
- __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_DEACTIVATED;
- __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
- }
- else
- {
- SysLogException(NID_NET_WIFI, r, "[%s] Propagating.", GetErrorMessage(r));
-
- result res = __pWifiDirectSystemAdapter->InitializeCurrentState();
- SysLogException(NID_NET_WIFI, res, "[%s] Propagating.", GetErrorMessage(res));
- }
- }
- else
- {
- if (r == E_SUCCESS)
- {
- __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_DEACTIVATED;
- __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ACTIVATED, DEFAULT_DEVICE_ID, E_SYSTEM);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- }
+ err = wifi_direct_deactivate();
+ SysTryLog(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, "Failed result from wifi_direct_deactivate() is 0x%x.", err);
+ }
+ }
+ else if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_DEACTIVATED)
+ {
+ __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_ACTIVATED;
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ACTIVATED, DEFAULT_DEVICE_ID, r);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ }
+ }
+ else
+ {
+ __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_DEACTIVATED;
+ }
+ break;
+
+ case WIFI_DIRECT_DEVICE_STATE_DEACTIVATED:
+ SysLog(NID_NET_WIFI, "event type : WIFI_DIRECT_DEVICE_STATE_DEACTIVATED, error code : 0x%x", errorCode);
+ if (__pWifiDirectSystemAdapter->__currentState != WIFI_DIRECT_SYSTEM_ACTIVATING)
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_DEACTIVATED, DEFAULT_DEVICE_ID, r);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+
+ if (r == E_SUCCESS)
+ {
+ __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_DEACTIVATED;
+ __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
+ }
+ else
+ {
+ result res = __pWifiDirectSystemAdapter->InitializeCurrentState();
+ SysLogException(NID_NET_WIFI, res, "[%s] Propagating.", GetErrorMessage(res));
+ }
+ }
+ else
+ {
+ if (r == E_SUCCESS)
+ {
+ __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_DEACTIVATED;
+ __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ACTIVATED, DEFAULT_DEVICE_ID, E_SYSTEM);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ }
- }
- break;
- }
+ }
+ break;
+ }
- if (pEventArg != null)
- {
- __pWifiDirectSystemAdapter->__pWifiDirectEvent->FireAsync(*pEventArg);
- }
+ if (pEventArg != null)
+ {
+ __pWifiDirectSystemAdapter->__pWifiDirectEvent->FireAsync(*pEventArg);
+ }
+
+ SysLog(NID_NET_WIFI, "<<< %ls", __pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
}
void
_WifiDirectSystemAdapter::OnWifiDirectConnectionChanged(int errorCode, wifi_direct_connection_state_e connectionState,
- const char* pMacAddress, void* pUserData)
-{
- SysLog(NID_NET_WIFI, "Enter, [connectionState:0x%x] [ErrorCode:0x%x]", connectionState, errorCode);
- SysLog(NID_NET_WIFI, "%ls", __pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
+ const char* pMacAddress, void* pUserData)
+{
+ SysLog(NID_NET_WIFI, ">>> %ls", __pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
+
+ result r = E_SUCCESS;
+ String peerMacAddress = _WifiDirectUtility::ConvertMacCharToString(pMacAddress);
+
+ bool isOwner = false;
+ wifi_direct_is_group_owner(&isOwner);
+
+ switch (connectionState)
+ {
+ // OnWifiDirectGroupCreatedN() with autonomous group owner mode
+ case WIFI_DIRECT_GROUP_CREATED:
+ SysLog(NID_NET_WIFI, "event type : WIFI_DIRECT_GROUP_CREATED, error code : 0x%x", errorCode);
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+
+ if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_AUTONOMOUS_GROUP_CREATING)
+ {
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ __pWifiDirectSystemAdapter->OnWifiDirectGroupCreated(L"", r);
+ __pWifiDirectSystemAdapter->OnWifiDirectAutonomousGroupCreated(r);
+ }
+ else
+ {
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ if (r == E_SUCCESS)
+ {
+ __pWifiDirectSystemAdapter->OnWifiDirectGroupCreated(L"", r);
+ __pWifiDirectSystemAdapter->OnWifiDirectAutonomousGroupCreated(r);
+ }
+ }
+ break;
+
+ case WIFI_DIRECT_CONNECTION_RSP:
+ SysLog(NID_NET_WIFI, "event type : WIFI_DIRECT_CONNECTION_RSP, error code : 0x%x", errorCode);
+ switch (__pWifiDirectSystemAdapter->__currentState)
+ {
+ case WIFI_DIRECT_SYSTEM_GROUP_CREATING:
+ case WIFI_DIRECT_SYSTEM_CONNECTING:
+ if (r == E_SUCCESS && isOwner == false)
+ {
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT, r, E_REMOTE_DEVICE_NOT_FOUND);
+ __pWifiDirectSystemAdapter->OnWifiDirectGroupCreated(peerMacAddress, r);
+
+ // OnWifiDirectConnected() does not have E_REMOTE_DEVICE_NOT_FOUND exception
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT, r, E_SYSTEM);
+ __pWifiDirectSystemAdapter->OnWifiDirectConnected(peerMacAddress, r);
+ }
+ else if (r != E_SUCCESS)
+ {
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT, r, E_REMOTE_DEVICE_NOT_FOUND);
+ __pWifiDirectSystemAdapter->OnWifiDirectGroupCreated(peerMacAddress, r);
+
+ // OnWifiDirectConnected() does not have E_REMOTE_DEVICE_NOT_FOUND exception
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT, r, E_SYSTEM);
+ __pWifiDirectSystemAdapter->OnWifiDirectConnected(peerMacAddress, r);
+ }
+ break;
+
+ case WIFI_DIRECT_SYSTEM_ASSOCIATING:
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT, r, E_REMOTE_DEVICE_NOT_FOUND);
+ __pWifiDirectSystemAdapter->OnWifiDirectAssociationCompleted(peerMacAddress, r);
+
+ // OnWifiDirectConnected() does not have E_REMOTE_DEVICE_NOT_FOUND exception
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT, r, E_SYSTEM);
+ __pWifiDirectSystemAdapter->OnWifiDirectConnected(peerMacAddress, r);
+ break;
+
+ case WIFI_DIRECT_SYSTEM_ACTIVATED:
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ if (r == E_SUCCESS && isOwner == false)
+ {
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT, r, E_REMOTE_DEVICE_NOT_FOUND);
+ __pWifiDirectSystemAdapter->OnWifiDirectAssociationCompleted(peerMacAddress, r);
+
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
+ __pWifiDirectSystemAdapter->OnWifiDirectConnected(peerMacAddress, r);
+ }
+ break;
+
+ default:
+ SysLog(NID_NET_WIFI, "Ignore case - current state : %s", __pWifiDirectSystemAdapter->GetStringOfDeviceState());
+ break;
+ }
+ break;
+
+ case WIFI_DIRECT_DISASSOCIATION_IND:
+ SysLog(NID_NET_WIFI, "event type : WIFI_DIRECT_DISASSOCIATION_IND, error code : 0x%x", errorCode);
+ __pWifiDirectSystemAdapter->OnWifiDirectClientDisassociated(peerMacAddress);
+ __pWifiDirectSystemAdapter->OnWifiDirectDisconnected(peerMacAddress, E_SUCCESS);
+ break;
+
+ case WIFI_DIRECT_DISCONNECTION_RSP:
+ SysLog(NID_NET_WIFI, "event type : WIFI_DIRECT_DISCONNECTION_RSP, error code : 0x%x", errorCode);
+ if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_DISCONNECTING)
+ {
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
+ __pWifiDirectSystemAdapter->OnWifiDirectAssociationTerminated(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED, r);
+
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ __pWifiDirectSystemAdapter->OnWifiDirectDisconnected(peerMacAddress, r);
+ }
+ else if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_LEAVING)
+ {
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ __pWifiDirectSystemAdapter->OnWifiDirectGroupLeft(r);
+ }
+ else if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING)
+ {
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ __pWifiDirectSystemAdapter->OnWifiDirectGroupCreated(peerMacAddress, E_OPERATION_CANCELED);
+ __pWifiDirectSystemAdapter->OnWifiDirectConnected(peerMacAddress, E_OPERATION_CANCELED);
+ }
+ break;
+
+ case WIFI_DIRECT_DISCONNECTION_IND:
+ SysLog(NID_NET_WIFI, "event type : WIFI_DIRECT_DISCONNECTION_IND, error code : 0x%x", errorCode);
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ __pWifiDirectSystemAdapter->OnWifiDirectAssociationTerminated(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_DISCONNECTED, E_SUCCESS);
+
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ __pWifiDirectSystemAdapter->OnWifiDirectDisconnected(peerMacAddress, r);
+ break;
+
+ case WIFI_DIRECT_GROUP_DESTROYED:
+ SysLog(NID_NET_WIFI, "event type : WIFI_DIRECT_GROUP_DESTROYED, error code : 0x%x", errorCode);
+ switch (__pWifiDirectSystemAdapter->__currentState)
+ {
+ case WIFI_DIRECT_SYSTEM_OWNER:
+ if (r == E_SUCCESS)
+ {
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ __pWifiDirectSystemAdapter->OnWifiDirectGroupDestroyed(r);
- result r = E_SUCCESS;
- String peerMacAddress = _WifiDirectUtility::ConvertMacCharToString(pMacAddress);
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
+ __pWifiDirectSystemAdapter->OnWifiDirectGroupLeft(r);
+ }
+ break;
+
+ case WIFI_DIRECT_SYSTEM_DESTROYING:
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ __pWifiDirectSystemAdapter->OnWifiDirectGroupDestroyed(r);
+ __pWifiDirectSystemAdapter->OnWifiDirectDisconnected(peerMacAddress, r);
+ break;
+
+ case WIFI_DIRECT_SYSTEM_CLIENT:
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
+ __pWifiDirectSystemAdapter->OnWifiDirectAssociationTerminated(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_DISCONNECTED, r);
+
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
+ __pWifiDirectSystemAdapter->OnWifiDirectGroupLeft(r);
+ break;
+
+ case WIFI_DIRECT_SYSTEM_LEAVING:
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
+ __pWifiDirectSystemAdapter->OnWifiDirectGroupLeft(r);
+ break;
+
+ default:
+ SysLog(NID_NET_WIFI, "Ignore case - current state : %s", __pWifiDirectSystemAdapter->GetStringOfDeviceState());
+ break;
+ }
+ break;
+
+ default:
+ SysLog(NID_NET_WIFI, "Unknown event type : %d, error code : 0x%x", connectionState, errorCode);
+ break;
+ }
+
+ SysLog(NID_NET_WIFI, "<<< %ls", __pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
+}
- bool isOwner = false;
- wifi_direct_is_group_owner(&isOwner);
+void
+_WifiDirectSystemAdapter::OnWifiDirectClientIpAssigned(const char* mac_address, const char* ip_address,
+ const char* interface_address, void* user_data)
+{
+ SysLog(NID_NET_WIFI, ">>> %ls", __pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
+ SysLog(NID_NET_WIFI, "mac address : %s, interface address : %s, ip address : %s", mac_address, interface_address, ip_address);
- switch(connectionState)
- {
- // OnWifiDirectGroupCreatedN() with autonomous group owner mode
- case WIFI_DIRECT_GROUP_CREATED:
- SysLog(NID_NET_WIFI, "connectionState : WIFI_DIRECT_GROUP_CREATED");
- if (errorCode == WIFI_DIRECT_ERROR_NONE)
- {
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_OWNER)
- {
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT, r, E_REMOTE_DEVICE_NOT_FOUND);
- __pWifiDirectSystemAdapter->OnWifiDirectGroupCreated(L"", r);
-
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- __pWifiDirectSystemAdapter->OnWifiDirectAutonomousGroupCreated(r);
- }
- }
- break;
- case WIFI_DIRECT_CONNECTION_RSP:
- SysLog(NID_NET_WIFI, "connectionState : WIFI_DIRECT_CONNECTION_RSP");
- switch(__pWifiDirectSystemAdapter->__currentState)
- {
- case WIFI_DIRECT_SYSTEM_GROUP_CREATING:
- case WIFI_DIRECT_SYSTEM_CONNECTING:
- if (r == E_SUCCESS && isOwner == false)
- {
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT, r, E_REMOTE_DEVICE_NOT_FOUND);
- __pWifiDirectSystemAdapter->OnWifiDirectGroupCreated(peerMacAddress, r);
-
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- __pWifiDirectSystemAdapter->OnWifiDirectConnected(peerMacAddress, r);
- }
- else if(r != E_SUCCESS)
- {
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT, r, E_REMOTE_DEVICE_NOT_FOUND);
- __pWifiDirectSystemAdapter->OnWifiDirectGroupCreated(peerMacAddress, r);
-
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- __pWifiDirectSystemAdapter->OnWifiDirectConnected(peerMacAddress, r);
- }
- break;
- case WIFI_DIRECT_SYSTEM_ASSOCIATING:
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT, r, E_REMOTE_DEVICE_NOT_FOUND);
- __pWifiDirectSystemAdapter->OnWifiDirectAssociationCompleted(peerMacAddress, r);
-
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- __pWifiDirectSystemAdapter->OnWifiDirectConnected(peerMacAddress, r);
- break;
- case WIFI_DIRECT_SYSTEM_ACTIVATED:
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- if (r == E_SUCCESS && isOwner == false)
- {
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT, r, E_REMOTE_DEVICE_NOT_FOUND);
- __pWifiDirectSystemAdapter->OnWifiDirectAssociationCompleted(peerMacAddress, r);
-
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_AUTH_FAILED, r, E_AUTHENTICATION);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- __pWifiDirectSystemAdapter->OnWifiDirectConnected(peerMacAddress, r);
- }
- break;
- default:
- SysLog(NID_NET_WIFI, "Unknown case - current state : %s", __pWifiDirectSystemAdapter->GetStringOfDeviceState());
- break;
- }
- break;
- case WIFI_DIRECT_DISASSOCIATION_IND:
- SysLog(NID_NET_WIFI, "connectionState : WIFI_DIRECT_DISASSOCIATION_IND");
- __pWifiDirectSystemAdapter->OnWifiDirectClientDisassociated(peerMacAddress);
- __pWifiDirectSystemAdapter->OnWifiDirectDisconnected(peerMacAddress, E_SUCCESS);
- break;
- case WIFI_DIRECT_DISCONNECTION_RSP:
- SysLog(NID_NET_WIFI, "event type : WIFI_DIRECT_DISCONNECTION_RSP");
- if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_DISCONNECTING)
- {
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- __pWifiDirectSystemAdapter->OnWifiDirectAssociationTerminated(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED, r);
+ switch (__pWifiDirectSystemAdapter->__currentState)
+ {
+ case WIFI_DIRECT_SYSTEM_GROUP_CREATING:
+ case WIFI_DIRECT_SYSTEM_CONNECTING:
+ (void) __pWifiDirectSystemAdapter->InitializeCurrentState();
+ __pWifiDirectSystemAdapter->OnWifiDirectGroupCreated(mac_address, E_SUCCESS);
+ __pWifiDirectSystemAdapter->OnWifiDirectConnected(mac_address, E_SUCCESS);
+ break;
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- __pWifiDirectSystemAdapter->OnWifiDirectDisconnected(peerMacAddress, r);
- }
- else if(__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_LEAVING)
- {
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- __pWifiDirectSystemAdapter->OnWifiDirectGroupLeft(r);
- }
- else if(__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING)
- {
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- __pWifiDirectSystemAdapter->OnWifiDirectGroupCreated(peerMacAddress, E_OPERATION_CANCELED);
- __pWifiDirectSystemAdapter->OnWifiDirectConnected(peerMacAddress, E_OPERATION_CANCELED);
- }
- break;
- case WIFI_DIRECT_DISCONNECTION_IND:
- SysLog(NID_NET_WIFI, "connectionState : WIFI_DIRECT_DISCONNECTION_IND");
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- __pWifiDirectSystemAdapter->OnWifiDirectAssociationTerminated(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_DISCONNECTED, E_SUCCESS);
+ case WIFI_DIRECT_SYSTEM_OWNER:
+ __pWifiDirectSystemAdapter->OnWifiDirectClientAssociated(mac_address);
+ __pWifiDirectSystemAdapter->OnWifiDirectConnected(mac_address, E_SUCCESS);
+ break;
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- __pWifiDirectSystemAdapter->OnWifiDirectDisconnected(peerMacAddress, r);
- break;
- case WIFI_DIRECT_GROUP_DESTROYED:
- SysLog(NID_NET_WIFI, "connectionState : WIFI_DIRECT_GROUP_DESTROYED");
- switch(__pWifiDirectSystemAdapter->__currentState)
- {
- case WIFI_DIRECT_SYSTEM_GROUP_CANCELING:
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- __pWifiDirectSystemAdapter->OnWifiDirectGroupDestroyed(r);
- break;
- case WIFI_DIRECT_SYSTEM_OWNER:
- if (r == E_SUCCESS)
- {
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- __pWifiDirectSystemAdapter->OnWifiDirectGroupDestroyed(r);
-
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- __pWifiDirectSystemAdapter->OnWifiDirectGroupLeft(r);
- }
- break;
- case WIFI_DIRECT_SYSTEM_DESTROYING:
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- __pWifiDirectSystemAdapter->OnWifiDirectGroupDestroyed(r);
- break;
- case WIFI_DIRECT_SYSTEM_CLIENT:
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- __pWifiDirectSystemAdapter->OnWifiDirectAssociationTerminated(WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_DISCONNECTED, r);
-
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- __pWifiDirectSystemAdapter->OnWifiDirectGroupLeft(r);
- break;
- case WIFI_DIRECT_SYSTEM_LEAVING:
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- _WifiDirectConvertErrorResult(errorCode != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_CONNECTION_FAILED, r, E_NOT_RESPONDING);
- __pWifiDirectSystemAdapter->OnWifiDirectGroupLeft(r);
- break;
- default:
- SysLog(NID_NET_WIFI, "Unknown case - current state : %s", __pWifiDirectSystemAdapter->GetStringOfDeviceState());
- break;
- }
- break;
- default:
- SysLog(NID_NET_WIFI, "Unknown case %d", connectionState);
- break;
- }
+ default:
+ SysLog(NID_NET_WIFI, "Ignore case %d", __pWifiDirectSystemAdapter->__currentState);
+ break;
+ }
+
+ SysLog(NID_NET_WIFI, "<<< %ls", __pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
}
-void
-_WifiDirectSystemAdapter::OnWifiDirectClientIpAssigned(const char *mac_address, const char *ip_address,
- const char *interface_address, void *user_data)
-{
- SysLog(NID_NET_WIFI, "%ls", __pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
- SysLog(NID_NET_WIFI, "mac address : %s, interface address : %s, ipaddress : %s", mac_address, interface_address, ip_address);
- switch(__pWifiDirectSystemAdapter->__currentState)
- {
- case WIFI_DIRECT_SYSTEM_GROUP_CREATING:
- case WIFI_DIRECT_SYSTEM_CONNECTING:
- (void)__pWifiDirectSystemAdapter->InitializeCurrentState();
- __pWifiDirectSystemAdapter->OnWifiDirectGroupCreated(mac_address, E_SUCCESS);
- __pWifiDirectSystemAdapter->OnWifiDirectConnected(mac_address, E_SUCCESS);
- break;
- case WIFI_DIRECT_SYSTEM_OWNER:
- __pWifiDirectSystemAdapter->OnWifiDirectClientAssociated(mac_address);
- __pWifiDirectSystemAdapter->OnWifiDirectConnected(mac_address, E_SUCCESS);
- break;
- default:
- SysLog(NID_NET_WIFI, "unnecessary case %d", __pWifiDirectSystemAdapter->__currentState);
- break;
- }
-}
void
_WifiDirectSystemAdapter::OnWifiDirectScanCompleted(int errorCode, wifi_direct_discovery_state_e discoveryState, void* pUserData)
{
- SysLog(NID_NET_WIFI, "Enter, [discoveryState:0x%x] [ErrorCode:0x%x]", discoveryState, errorCode);
- SysLog(NID_NET_WIFI, "%ls", __pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
-
- _WifiDirectEventArg* pEventArg = null;
- result r = E_SYSTEM;
- _WifiDirectConvertErrorResult(errorCode == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
-
- ArrayList foundPeerList(SingleObjectDeleter);
-
- switch(discoveryState)
- {
- case WIFI_DIRECT_ONLY_LISTEN_STARTED:
- SysLog(NID_NET_WIFI, "discoveryState : WIFI_DIRECT_ONLY_LISTEN_STARTED");
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
- if(__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_ACTIVATING)
- {
- __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_ACTIVATED;
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ACTIVATED, DEFAULT_DEVICE_ID, r);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- }
- break;
- case WIFI_DIRECT_DISCOVERY_STARTED:
+ SysLog(NID_NET_WIFI, ">>> %ls", __pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
+
+ _WifiDirectEventArg* pEventArg = null;
+ result r = E_SUCCESS;
+
+ switch (discoveryState)
+ {
+ case WIFI_DIRECT_ONLY_LISTEN_STARTED:
+ SysLog(NID_NET_WIFI, "event type : WIFI_DIRECT_ONLY_LISTEN_STARTED, error code : 0x%x", errorCode);
+ if (errorCode == WIFI_DIRECT_ERROR_NONE
+ && __pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_ACTIVATING)
+ {
+ __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_ACTIVATED;
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ACTIVATED, DEFAULT_DEVICE_ID, E_SUCCESS);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ }
+ break;
+
+ case WIFI_DIRECT_DISCOVERY_STARTED:
SysLog(NID_NET_WIFI, "discoveryState : WIFI_DIRECT_DISCOVERY_STARTED");
__pWifiDirectSystemAdapter->__discoveredPeerList.RemoveAll();
break;
+
case WIFI_DIRECT_DISCOVERY_FOUND:
SysLog(NID_NET_WIFI, "discoveryState : WIFI_DIRECT_DISCOVERY_FOUND");
if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_GROUP_CREATING)
{
int err = wifi_direct_foreach_discovered_peers(OnWifiDirectFindSameDeviceName, null);
- r = _WifiDirectUtility::ConvertErrorCode(err);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
+ SysTryLog(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, "Failed result from wifi_direct_foreach_discovered_peers() is 0x%x.", err);
+
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_OPERATION_FAILED, r, E_OPERATION_FAILED);
+
}
else if (__pWifiDirectSystemAdapter->__currentScanState == WIFI_DIRECT_SYSTEM_SCAN_SCANNING)
{
- int err = wifi_direct_foreach_discovered_peers(OnWifiDirectPeerFound, &foundPeerList);
- SysLog(NID_NET_WIFI, "[0x%x] Return value of wifi_direct_foreach_discovered_peers()", err);
- r = _WifiDirectUtility::ConvertErrorCode(err);
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
- }
+ int err = wifi_direct_foreach_discovered_peers(OnWifiDirectPeerFound, null);
+ SysTryLog(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, "Failed result from wifi_direct_foreach_discovered_peers() is 0x%x.", err);
- break;
- case WIFI_DIRECT_DISCOVERY_FINISHED:
- SysLog(NID_NET_WIFI, "discoveryState: WIFI_DIRECT_DISCOVERY_FINISHED");
+ _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_OPERATION_FAILED, r, E_OPERATION_FAILED);
- switch(__pWifiDirectSystemAdapter->__currentScanState)
- {
- case WIFI_DIRECT_SYSTEM_SCAN_IDLE:
- break;
- case WIFI_DIRECT_SYSTEM_SCAN_LISTEN:
- break;
- case WIFI_DIRECT_SYSTEM_SCAN_CANCELLING:
- __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
-
- r = __pWifiDirectSystemAdapter->StartListenMode();
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
-
- if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING)
- {
-
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED, DEFAULT_DEVICE_ID,
- WifiDirectGroupInfo(), WifiDirectDeviceInfo(), WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE, E_OPERATION_CANCELED);
- }
- else
- {
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_SCAN_COMPLETED, DEFAULT_DEVICE_ID,
- (Tizen::Net::NetConnection*)null, E_OPERATION_CANCELED);
- }
-
- break;
- case WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN:
- if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING)
- {
- __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
-
- r = __pWifiDirectSystemAdapter->StartListenMode();
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
-
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED, DEFAULT_DEVICE_ID,
- WifiDirectGroupInfo(), WifiDirectDeviceInfo(), WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE, E_OPERATION_CANCELED);
- }
- else
- {
- __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
- r = __pWifiDirectSystemAdapter->StartDiscovery();
- SysTryCatch(NID_NET_WIFI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
- }
- break;
- case WIFI_DIRECT_SYSTEM_SCAN_SCANNING:
- __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
-
- if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_GROUP_CREATING)
- {
- bool isFind = false;
- int err = wifi_direct_foreach_discovered_peers(OnWifiDirectFindSameDeviceName, &isFind);
- SysLog(NID_NET_WIFI, "[0x%x] Return value of wifi_direct_foreach_discovered_peers() : %ls", err, isFind ? L"Find" : L"Not Find");
-
- if (isFind == false)
- {
- pEventArg = new _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED, DEFAULT_DEVICE_ID,
- WifiDirectGroupInfo(), WifiDirectDeviceInfo(), WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE,
- E_REMOTE_DEVICE_NOT_FOUND);
-
- __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_ACTIVATED;
- }
- }
- else
- {
- __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
-
- result res = E_SUCCESS;
-
- ArrayList* pDeviceInfoList = new (std::nothrow) ArrayList();
- SysTryReturnVoidResult(NID_NET_WIFI, pDeviceInfoList != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- res = pDeviceInfoList->Construct();
- if(res != E_SUCCESS)
- {
- delete pDeviceInfoList;
- SysLog(NID_NET_WIFI, "Failed to construct list");
- return;
- }
-
- int err = wifi_direct_foreach_discovered_peers(OnWifiDirectEachDiscoveredPeer, pDeviceInfoList);
- SysLog(NID_NET_WIFI, "[0x%x] Return value of wifi_direct_foreach_discovered_peers()", err);
- if( err != WIFI_DIRECT_ERROR_NONE
- && err != WIFI_DIRECT_ERROR_OPERATION_FAILED) // when can't find any remote device.
- {
- pDeviceInfoList->RemoveAll(true);
- delete pDeviceInfoList;
- SysLog(NID_NET_WIFI, "Error on wifi_direct_foreach_discovered_peers");
- return;
- }
-
- res = __pWifiDirectSystemAdapter->StartListenMode();
- SysTryCatch(NID_NET_WIFI, res == E_SUCCESS, , res, "[%s] Propagating.", GetErrorMessage(res));
-
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_SCAN_COMPLETED, DEFAULT_DEVICE_ID,
- pDeviceInfoList, r);
- }
- break;
- default:
- SysLogException(NID_NET_WIFI, E_SYSTEM, "[E_SYSTEM] Not an allowed type : %d", __pWifiDirectSystemAdapter->__currentScanState);
- break;
}
+ SysTryReturnVoidResult(NID_NET_WIFI, r == E_SUCCESS, r, "[%s] Failed to get scan result", GetErrorMessage(r));
break;
- } // end of switch(discoveryState)
- if (pEventArg != null)
- {
- __pWifiDirectSystemAdapter->__pWifiDirectEvent->FireAsync(*pEventArg);
- }
+ case WIFI_DIRECT_DISCOVERY_FINISHED:
+ SysLog(NID_NET_WIFI, "event type : WIFI_DIRECT_DISCOVERY_FINISHED, error code : 0x%x", errorCode);
-CATCH:
- SysLog(NID_NET_WIFI, "Exit, %ls",__pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
+ switch (__pWifiDirectSystemAdapter->__currentScanState)
+ {
+ case WIFI_DIRECT_SYSTEM_SCAN_CANCELLING:
+ __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
-}
+ if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING)
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED, DEFAULT_DEVICE_ID,
+ WifiDirectGroupInfo(), WifiDirectDeviceInfo(), WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE, E_OPERATION_CANCELED);
+ }
+ else
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_SCAN_COMPLETED, DEFAULT_DEVICE_ID,
+ (Tizen::Net::NetConnection*) null, E_OPERATION_CANCELED);
+ }
-bool
-_WifiDirectSystemAdapter::OnWifiDirectEachDiscoveredPeer(wifi_direct_discovered_peer_info_s* peer, void* pUserData)
-{
- ArrayList* pList = static_cast< ArrayList* >(pUserData);
- SysTryReturn(NID_NET_WIFI, pList != null, false, E_SYSTEM, "[E_SYSTEM] Failed to acquire list of peers");
+ r = __pWifiDirectSystemAdapter->StartListenMode();
+ SysTryLog(NID_NET_WIFI, r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
+ break;
- WifiDirectDeviceInfo* pDeviceInfo = _WifiDirectUtility::ConvertDiscoveryEntry2DeviceInfoN(*peer);
- SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ case WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN:
+ if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING)
+ {
+ __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
- pList->Add(*pDeviceInfo);
- return true;
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED, DEFAULT_DEVICE_ID,
+ WifiDirectGroupInfo(), WifiDirectDeviceInfo(), WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE, E_OPERATION_CANCELED);
+
+ r = __pWifiDirectSystemAdapter->StartListenMode();
+ SysTryLog(NID_NET_WIFI, r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
+ }
+ else
+ {
+ __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
+ r = __pWifiDirectSystemAdapter->StartDiscovery();
+ SysTryLog(NID_NET_WIFI, r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
+ }
+ break;
+
+ case WIFI_DIRECT_SYSTEM_SCAN_SCANNING:
+ __pWifiDirectSystemAdapter->__currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
+ if (__pWifiDirectSystemAdapter->__currentState == WIFI_DIRECT_SYSTEM_GROUP_CREATING)
+ {
+ bool isFind = false;
+ int err = wifi_direct_foreach_discovered_peers(OnWifiDirectFindSameDeviceName, &isFind);
+ SysLog(NID_NET_WIFI, "[0x%x] Return value of wifi_direct_foreach_discovered_peers() : %s", err, isFind ? L"Found" : L"Not Found");
+
+ if (isFind == false)
+ {
+ pEventArg = new _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED, DEFAULT_DEVICE_ID,
+ WifiDirectGroupInfo(), WifiDirectDeviceInfo(), WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE,
+ E_REMOTE_DEVICE_NOT_FOUND);
+
+ __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_ACTIVATED;
+ }
+ }
+ else
+ {
+ ArrayList deviceInfoList;
+ int err = wifi_direct_foreach_discovered_peers(OnWifiDirectEachDiscoveredPeer, &deviceInfoList);
+ SysTryLog(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, "[E_SYSTEM] Failed result from wifi_direct_foreach_discovered_peers() is 0x%x.", err);
+
+ // ToDo: If peer does not exist, wifi_direct_foreach_discovered_peers API returns WIFI_DIRECT_ERROR_OPERATION_FAILED
+ // It will be fixed soon.
+ if (err == WIFI_DIRECT_ERROR_NONE || WIFI_DIRECT_ERROR_OPERATION_FAILED)
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_SCAN_COMPLETED, DEFAULT_DEVICE_ID, &deviceInfoList, E_SUCCESS);
+ }
+ else
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_SCAN_COMPLETED, DEFAULT_DEVICE_ID, E_SYSTEM);
+ }
+ }
+ r = __pWifiDirectSystemAdapter->StartListenMode();
+ SysTryLog(NID_NET_WIFI, r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
+ break;
+
+ default:
+ SysLogException(NID_NET_WIFI, E_SYSTEM, "[E_SYSTEM] Not an allowed type : %d", __pWifiDirectSystemAdapter->__currentScanState);
+ break;
+ }
+ break;
+ } // end of switch(discoveryState)
+
+ if (pEventArg != null)
+ {
+ __pWifiDirectSystemAdapter->__pWifiDirectEvent->FireAsync(*pEventArg);
+ }
+
+ SysLog(NID_NET_WIFI, "<<< %ls", __pWifiDirectSystemAdapter->GetStringOfAllCurrentState().GetPointer());
}
bool
_WifiDirectSystemAdapter::OnWifiDirectPeerFound(wifi_direct_discovered_peer_info_s* peer, void* pUserData)
{
- unique_ptr<WifiDirectDeviceInfo> pDeviceInfo(_WifiDirectUtility::ConvertDiscoveryEntry2DeviceInfoN(*peer));
+ unique_ptr<WifiDirectDeviceInfo> pDeviceInfo(_WifiDirectUtility::ConvertDiscoveryEntry2DeviceInfoN(*peer));
SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
int index = 0;
result r = __pWifiDirectSystemAdapter->__discoveredPeerList.IndexOf(*pDeviceInfo, index);
+ SysTryLog(NID_NET_WIFI, r == E_SUCCESS, "Failed result from IndexOf() is %s", GetErrorMessage(r));
- if (r == E_OBJ_NOT_FOUND || r == E_OUT_OF_RANGE)
+ if (r == E_OBJ_NOT_FOUND)
{
_WifiDirectEventArg* pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_SCAN_FOUND, DEFAULT_DEVICE_ID,
*pDeviceInfo);
SysTryReturn(NID_NET_WIFI, pEventArg != null, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
__pWifiDirectSystemAdapter->__pWifiDirectEvent->FireAsync(*pEventArg);
-
__pWifiDirectSystemAdapter->__discoveredPeerList.Add(pDeviceInfo.release());
}
}
bool
+_WifiDirectSystemAdapter::OnWifiDirectEachDiscoveredPeer(wifi_direct_discovered_peer_info_s* peer, void* pUserData)
+{
+ IList* pList = static_cast< IList* >(pUserData);
+ SysTryReturn(NID_NET_WIFI, pList != null, false, E_SYSTEM, "[E_SYSTEM] Failed to acquire list of peers");
+
+ WifiDirectDeviceInfo* pDeviceInfo = _WifiDirectUtility::ConvertDiscoveryEntry2DeviceInfoN(*peer);
+ SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+
+ pList->Add(*pDeviceInfo);
+
+ return true;
+}
+
+bool
_WifiDirectSystemAdapter::OnWifiDirectEachConnectedClient(wifi_direct_connected_peer_info_s* pPeer, void* pUserData)
{
- IList* pList = static_cast<IList*>(pUserData);
- SysTryReturn(NID_NET_WIFI, pList != null, false, E_SYSTEM, "[E_SYSTEM] Failed to acquire list of peers");
+ IList* pList = static_cast< IList* >(pUserData);
+ SysTryReturn(NID_NET_WIFI, pList != null, false, E_SYSTEM, "[E_SYSTEM] Failed to acquire list of peers");
- WifiDirectDeviceInfo * pDeviceInfo= _WifiDirectUtility::ConvertPeerInfoToDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT, *pPeer);
- SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ WifiDirectDeviceInfo* pDeviceInfo = _WifiDirectUtility::ConvertPeerInfoToDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT, *pPeer);
+ SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- pList->Add(*pDeviceInfo);
+ pList->Add(*pDeviceInfo);
- return true;
+ return true;
}
bool
_WifiDirectSystemAdapter::OnWifiDirectConnectedOwner(wifi_direct_connected_peer_info_s* pPeer, void* pUserData)
{
- IList* pList = static_cast<IList*>(pUserData);
- SysTryReturn(NID_NET_WIFI, pList != null, false, E_SYSTEM, "[E_SYSTEM] Failed to acquire list of peers");
+ IList* pList = static_cast< IList* >(pUserData);
+ SysTryReturn(NID_NET_WIFI, pList != null, false, E_SYSTEM, "[E_SYSTEM] Failed to acquire list of peers");
- WifiDirectDeviceInfo * pDeviceInfo= _WifiDirectUtility::ConvertPeerInfoToDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER, *pPeer);
- SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ WifiDirectDeviceInfo* pDeviceInfo = _WifiDirectUtility::ConvertPeerInfoToDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER, *pPeer);
+ SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- pList->Add(*pDeviceInfo);
+ pList->Add(*pDeviceInfo);
- return true;
+ return true;
}
bool
_WifiDirectSystemAdapter::OnWifiDirectFindSameDeviceName(wifi_direct_discovered_peer_info_s* pPeer, void* pUserData)
{
- String convertDevicename(pPeer->device_name);
- String deviceName;
- result r = __pWifiDirectSystemAdapter->__pWifiServiceProxy->GetWifiDirectLocalDeviceName(deviceName);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
+ String convertDevicename(pPeer->device_name);
+ String deviceName;
+ result r = __pWifiDirectSystemAdapter->__pWifiServiceProxy->GetWifiDirectLocalDeviceName(deviceName);
+ SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
- if (deviceName.CompareTo(convertDevicename) == 0 )
- {
- if(pUserData != null)
- {
- *(static_cast< bool* >(pUserData)) = true;
- }
+ if (deviceName.CompareTo(convertDevicename) == 0)
+ {
+ if (pUserData != null)
+ {
+ *(static_cast< bool* >(pUserData)) = true;
+ }
- int err = wifi_direct_connect(pPeer->mac_address);
- result r = _WifiDirectUtility::ConvertErrorCode(err);
+ int err = wifi_direct_connect(pPeer->mac_address);
- if (IsFailed(r))
- {
- _WifiDirectEventArg* pEventArg = new _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED,
- DEFAULT_DEVICE_ID, WifiDirectGroupInfo(), WifiDirectDeviceInfo(), WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE, E_SYSTEM);
+ if (err != WIFI_DIRECT_ERROR_NONE)
+ {
+ SysLog(NID_NET_WIFI, "Failed result from wifi_direct_set_client_ip_address_assigned_cb() is 0x%x.", err);
- __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_ACTIVATED;
- __pWifiDirectSystemAdapter->__pWifiDirectEvent->FireAsync(*pEventArg);
- }
+ _WifiDirectEventArg* pEventArg = new _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED,
+ DEFAULT_DEVICE_ID, WifiDirectGroupInfo(), WifiDirectDeviceInfo(), WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE, E_SYSTEM);
- return false;
- }
+ __pWifiDirectSystemAdapter->__currentState = WIFI_DIRECT_SYSTEM_ACTIVATED;
+ __pWifiDirectSystemAdapter->__pWifiDirectEvent->FireAsync(*pEventArg);
+ }
- return true;
+ return false;
+ }
+
+ return true;
}
bool
_WifiDirectSystemAdapter::OnWifiDirectSupportedWpsMode(wifi_direct_wps_type_e type, void* pUserData)
{
- ArrayListT<WifiWpsConfigurationMode>* pList = static_cast< ArrayListT<WifiWpsConfigurationMode>* >(pUserData);
- SysTryReturn(NID_NET_WIFI, pList != null, false, E_SYSTEM, "[E_SYSTEM] Failed to acquire list of peers");
+ ArrayListT< WifiWpsConfigurationMode >* pList = static_cast< ArrayListT< WifiWpsConfigurationMode >* >(pUserData);
+ SysTryReturn(NID_NET_WIFI, pList != null, false, E_SYSTEM, "[E_SYSTEM] Failed to acquire list of peers");
- WifiWpsConfigurationMode wpsMode = _WifiDirectUtility::ConvertSupportedWpsMode(type);
+ WifiWpsConfigurationMode wpsMode = _WifiDirectUtility::ConvertSupportedWpsMode(type);
- pList->Add(wpsMode);
+ pList->Add(wpsMode);
- return true;
+ return true;
}
result
_WifiDirectSystemAdapter::InitializeCurrentState(void)
{
- result r = E_SUCCESS;
- int err = WIFI_DIRECT_ERROR_NONE;
-
- wifi_direct_state_e status = WIFI_DIRECT_STATE_DEACTIVATED;
-
- err = wifi_direct_get_state(&status);
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
-
- bool isOwner = false;
- if (status != WIFI_DIRECT_STATE_DEACTIVATED
- && status != WIFI_DIRECT_STATE_DEACTIVATING
- && status != WIFI_DIRECT_STATE_ACTIVATING)
- {
- err = wifi_direct_is_group_owner(&isOwner);
- SysLog(NID_NET_WIFI, "[0x%x] Return value of wifi_direct_is_group_owner()", err);
-
- _WifiDirectConvertErrorResult(err != WIFI_DIRECT_ERROR_NONE, r, E_SYSTEM);
- SysTryReturn(NID_NET_WIFI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
- }
-
- switch(status)
- {
- case WIFI_DIRECT_STATE_DEACTIVATED:
- __currentState = WIFI_DIRECT_SYSTEM_DEACTIVATED;
- break;
- case WIFI_DIRECT_STATE_DEACTIVATING:
- __currentState = WIFI_DIRECT_SYSTEM_DEACTIVATING;
- break;
- case WIFI_DIRECT_STATE_ACTIVATING:
- __currentState = WIFI_DIRECT_SYSTEM_ACTIVATING;
- break;
- case WIFI_DIRECT_STATE_DISCOVERING:
- {
- if (isOwner == true)
- {
- __currentState = WIFI_DIRECT_SYSTEM_OWNER;
- }
- else
- {
- __currentState = WIFI_DIRECT_SYSTEM_ACTIVATED;
- }
-
- bool isListenMode = false;
- wifi_direct_is_listening_only(&isListenMode);
- if (isListenMode == true)
- {
- __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_LISTEN;
- }
- else
- {
- __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_SCANNING;
- }
- }
- break;
- case WIFI_DIRECT_STATE_ACTIVATED:
- __currentState = WIFI_DIRECT_SYSTEM_ACTIVATED;
- r = StartListenMode();
- SysLogException(NID_NET_WIFI, r, "[%s] Propagating.", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_STATE_CONNECTED:
- if (isOwner == true)
- {
- __currentState = WIFI_DIRECT_SYSTEM_OWNER;
- }
- else
- {
- __currentState = WIFI_DIRECT_SYSTEM_CLIENT;
- }
- // ToDo: Getting peer list
- break;
- case WIFI_DIRECT_STATE_CONNECTING:
- __currentState = WIFI_DIRECT_SYSTEM_CONNECTING;
- break;
- case WIFI_DIRECT_STATE_DISCONNECTING:
- if (isOwner == true)
- {
- __currentState = WIFI_DIRECT_SYSTEM_DESTROYING;
- }
- else
- {
- __currentState = WIFI_DIRECT_SYSTEM_DISCONNECTING;
- }
- break;
- default:
- SysLog(NID_NET_WIFI, "Unknown case : %d", status);
- r = E_SYSTEM;
- break;
- }
+ result r = E_SUCCESS;
+ int err = WIFI_DIRECT_ERROR_NONE;
+
+ wifi_direct_state_e status = WIFI_DIRECT_STATE_DEACTIVATED;
+
+ err = wifi_direct_get_state(&status);
+ SysTryLog(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, "Failed result from wifi_direct_get_state() is 0x%x.", err);
+
+ bool isOwner = false;
+ if (status != WIFI_DIRECT_STATE_DEACTIVATED
+ && status != WIFI_DIRECT_STATE_DEACTIVATING
+ && status != WIFI_DIRECT_STATE_ACTIVATING)
+ {
+ err = wifi_direct_is_group_owner(&isOwner);
+ SysTryLog(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, "Failed result from wifi_direct_is_group_owner() is 0x%x.", err);
+ }
+
+ switch (status)
+ {
+ case WIFI_DIRECT_STATE_DEACTIVATED:
+ __currentState = WIFI_DIRECT_SYSTEM_DEACTIVATED;
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
+ break;
+
+ case WIFI_DIRECT_STATE_DEACTIVATING:
+ __currentState = WIFI_DIRECT_SYSTEM_DEACTIVATING;
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
+ break;
+
+ case WIFI_DIRECT_STATE_ACTIVATING:
+ __currentState = WIFI_DIRECT_SYSTEM_ACTIVATING;
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
+ break;
+
+ case WIFI_DIRECT_STATE_DISCOVERING:
+ {
+ if (isOwner == true)
+ {
+ __currentState = WIFI_DIRECT_SYSTEM_OWNER;
+ }
+ else
+ {
+ __currentState = WIFI_DIRECT_SYSTEM_ACTIVATED;
+ }
- return r;
+ bool isListenMode = false;
+ wifi_direct_is_listening_only(&isListenMode);
+ if (isListenMode == true)
+ {
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_LISTEN;
+ }
+ else
+ {
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_SCANNING;
+ }
+ }
+ break;
+
+ case WIFI_DIRECT_STATE_ACTIVATED:
+ __currentState = WIFI_DIRECT_SYSTEM_ACTIVATED;
+ r = StartListenMode();
+ SysTryLog(NID_NET_WIFI, r == E_SUCCESS, "Failed result from wifi_direct_get_state() is 0x%x.", err);
+ break;
+
+ case WIFI_DIRECT_STATE_CONNECTED:
+ if (isOwner == true)
+ {
+ __currentState = WIFI_DIRECT_SYSTEM_OWNER;
+ }
+ else
+ {
+ __currentState = WIFI_DIRECT_SYSTEM_CLIENT;
+ }
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
+ break;
+
+ case WIFI_DIRECT_STATE_CONNECTING:
+ __currentState = WIFI_DIRECT_SYSTEM_CONNECTING;
+ break;
+
+ case WIFI_DIRECT_STATE_DISCONNECTING:
+ if (isOwner == true)
+ {
+ __currentState = WIFI_DIRECT_SYSTEM_DESTROYING;
+ }
+ else
+ {
+ __currentState = WIFI_DIRECT_SYSTEM_DISCONNECTING;
+ }
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_IDLE;
+ break;
+
+ default:
+ SysLog(NID_NET_WIFI, "Unknown case : %d", status);
+ r = E_SYSTEM;
+ break;
+ }
+
+ return r;
}
result
_WifiDirectSystemAdapter::StartListenMode(void)
{
+ SysTryReturnResult(NID_NET_WIFI, __currentScanState == WIFI_DIRECT_SYSTEM_SCAN_IDLE, E_INVALID_OPERATION,
+ "The current state of the instance prohibits the execution of this operation. %ls", GetStringOfAllCurrentState().GetPointer());
+
result r = E_SYSTEM;
- int err = wifi_direct_start_discovery(true, 0);
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturnResult(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, E_SYSTEM, "Staring discovery has failed.", GetErrorMessage(r));
+ int err = wifi_direct_start_discovery(true, 0);
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, E_SYSTEM, "Failed result from wifi_direct_start_discovery() with listen only is 0x%x.", err);
- if (r == E_SUCCESS)
- {
- __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_LISTEN;
- }
+ if (r == E_SUCCESS)
+ {
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_LISTEN;
+ }
- return r;
+ return r;
}
result
_WifiDirectSystemAdapter::StopListenModeToScan(void)
{
+ SysTryReturnResult(NID_NET_WIFI, __currentScanState == WIFI_DIRECT_SYSTEM_SCAN_LISTEN, E_INVALID_OPERATION,
+ "The current state of the instance prohibits the execution of this operation. %ls", GetStringOfAllCurrentState().GetPointer());
result r = E_SYSTEM;
- int err = wifi_direct_cancel_discovery();
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturnResult(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, E_SYSTEM, "Cancelling discovery has failed.", GetErrorMessage(r));
+ int err = wifi_direct_cancel_discovery();
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, E_SYSTEM, "Failed result from wifi_direct_cancel_discovery() is 0x%x.", err);
- if (r == E_SUCCESS)
- {
- __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN;
- }
+ if (r == E_SUCCESS)
+ {
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN;
+ }
- return r;
+ return r;
}
result
_WifiDirectSystemAdapter::StartDiscovery(void)
{
+ SysTryReturnResult(NID_NET_WIFI, __currentScanState == WIFI_DIRECT_SYSTEM_SCAN_IDLE, E_INVALID_OPERATION,
+ "The current state of the instance prohibits the execution of this operation. %ls", GetStringOfAllCurrentState().GetPointer());
+
result r = E_SYSTEM;
- int err = wifi_direct_start_discovery(false, WIFI_DIRECT_DISCOVERY_TIMEOUT);
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturnResult(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, E_SYSTEM, "Staring discovery has failed.", GetErrorMessage(r));
+ int err = wifi_direct_start_discovery(false, WIFI_DIRECT_DISCOVERY_TIMEOUT);
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, E_SYSTEM, "Failed result from wifi_direct_start_discovery() is 0x%x.", err);
- if (r == E_SUCCESS)
- {
- __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_SCANNING;
- }
+ if (r == E_SUCCESS)
+ {
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_SCANNING;
+ }
- return r;
+ return r;
}
result
_WifiDirectSystemAdapter::CancelDiscovery(void)
{
+ SysTryReturnResult(NID_NET_WIFI, __currentScanState == WIFI_DIRECT_SYSTEM_SCAN_SCANNING || __currentScanState == WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN, E_INVALID_OPERATION,
+ "The current state of the instance prohibits the execution of this operation. %ls", GetStringOfAllCurrentState().GetPointer());
+
result r = E_SYSTEM;
- int err = wifi_direct_cancel_discovery();
- _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
- SysTryReturnResult(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, E_SYSTEM, "Cancelling discovery has failed.", GetErrorMessage(r));
+ int err = wifi_direct_cancel_discovery();
+ _WifiDirectConvertErrorResult(err == WIFI_DIRECT_ERROR_NONE, r, E_SUCCESS);
+ SysTryReturnResult(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, E_SYSTEM, "Failed result from wifi_direct_cancel_discovery() is 0x%x.", err);
- if (r == E_SUCCESS)
- {
- __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_CANCELLING;
- }
+ if (r == E_SUCCESS)
+ {
+ __currentScanState = WIFI_DIRECT_SYSTEM_SCAN_CANCELLING;
+ }
- return r;
+ return r;
}
const char*
_WifiDirectSystemAdapter::GetStringOfDeviceState(void) const
{
- const char* pStateStr[] = { "DEACTIVATED",
- "ACTIVATING",
- "DEACTIVATING",
- "ACTIVATED",
- "AUTONOMOUS_GROUP_CREATING",
- "GROUP_CREATING",
- "GROUP_CANCELING",
- "CONNECTING",
- "CONNECT_CANCELLING",
- "ASSOCIATING",
- "OWNER",
- "DESTROYING",
- "LEAVING",
- "CLIENT",
- "DISCONNECTING"};
-
- return pStateStr[__currentState];
+ const char* pStateStr[] =
+ {
+ "DEACTIVATED",
+ "ACTIVATING",
+ "DEACTIVATING",
+ "ACTIVATED",
+ "AUTONOMOUS_GROUP_CREATING",
+ "GROUP_CREATING",
+ "GROUP_CANCELING",
+ "CONNECTING",
+ "CONNECT_CANCELLING",
+ "ASSOCIATING",
+ "OWNER",
+ "DESTROYING",
+ "LEAVING",
+ "CLIENT",
+ "DISCONNECTING"
+ };
+
+ return pStateStr[__currentState];
}
const char*
_WifiDirectSystemAdapter::GetStringOfScanState(void) const
{
- const char* pStateStr[] = { "SCAN_IDLE",
- "SCAN_LISTEN",
- "SCAN_LISTEN_CANCELING_TO_SCAN",
- "SCAN_SCANNING",
- "SCAN_CANCELLING" };
+ const char* pStateStr[] =
+ {
+ "SCAN_IDLE",
+ "SCAN_LISTEN",
+ "SCAN_LISTEN_CANCELING_TO_SCAN",
+ "SCAN_SCANNING",
+ "SCAN_CANCELLING"
+ };
- return pStateStr[__currentScanState];
+ return pStateStr[__currentScanState];
}
String
{
String currentState;
- (void)currentState.Append("DeviceState : ");
- (void)currentState.Append(GetStringOfDeviceState());
- (void)currentState.Append(" | ");
- (void)currentState.Append("ScanState : ");
- (void)currentState.Append(GetStringOfScanState());
+ (void) currentState.Append("DeviceState : ");
+ (void) currentState.Append(GetStringOfDeviceState());
+ (void) currentState.Append(" | ");
+ (void) currentState.Append("ScanState : ");
+ (void) currentState.Append(GetStringOfScanState());
return currentState;
}
WifiDirectDeviceInfo*
_WifiDirectSystemAdapter::GetConnectedPeerDeviceInfoN(WifiDirectGroupMemberType peerMemberType, const Tizen::Base::String* pPeerMacAddress /* = null */) const
{
- unique_ptr<ArrayList,AllElementsDeleter> pDeviceInfoList(new (std::nothrow) ArrayList());
- SysTryReturn(NID_NET_WIFI, pDeviceInfoList != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
-
- WifiDirectDeviceInfo* pDeviceInfo = null;
- int err = WIFI_DIRECT_ERROR_NONE;
-
- if (peerMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER)
- {
- err = wifi_direct_foreach_connected_peers(OnWifiDirectConnectedOwner, pDeviceInfoList.get());
- SysTryReturn(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, null, E_SYSTEM, "Getting the information of connected device has failed.");
+ unique_ptr< ArrayList > pDeviceInfoList(new (std::nothrow) ArrayList(SingleObjectDeleter));
+ SysTryReturn(NID_NET_WIFI, pDeviceInfoList != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+
+ WifiDirectDeviceInfo* pDeviceInfo = null;
+ int err = WIFI_DIRECT_ERROR_NONE;
+
+ if (peerMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER)
+ {
+ err = wifi_direct_foreach_connected_peers(OnWifiDirectConnectedOwner, pDeviceInfoList.get());
+ SysTryReturn(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE || err == WIFI_DIRECT_ERROR_OPERATION_FAILED, null, E_SYSTEM, "[E_SYSTEM] Failed result from wifi_direct_foreach_connected_peers() is 0x%x.", err);
+
+ if (pDeviceInfoList->GetCount() != 0)
+ {
+ pDeviceInfo = dynamic_cast< WifiDirectDeviceInfo* >(pDeviceInfoList->GetAt(0));
+ SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, E_SYSTEM, "[E_SYSTEM] Failed to get a owner owner information.");
+ }
+ }
+ else
+ {
+ err = wifi_direct_foreach_connected_peers(OnWifiDirectEachConnectedClient, pDeviceInfoList.get());
+ SysTryReturn(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE || err == WIFI_DIRECT_ERROR_OPERATION_FAILED, null, E_SYSTEM, "[E_SYSTEM] Failed result from wifi_direct_foreach_connected_peers() is 0x%x.", err);
+
+ for (int i = 0; i < pDeviceInfoList->GetCount(); i++)
+ {
+ pDeviceInfo = dynamic_cast< WifiDirectDeviceInfo* >(pDeviceInfoList->GetAt(i));
+ SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, E_SYSTEM, "[E_SYSTEM] Failed to get a group client information.");
+
+ if (pDeviceInfo->GetMacAddress() == *pPeerMacAddress)
+ {
+ break;
+ }
+ }
+ }
- if (pDeviceInfoList->GetCount() != 0)
- {
- pDeviceInfo = dynamic_cast<WifiDirectDeviceInfo*>(pDeviceInfoList->GetAt(0));
- SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, E_SYSTEM, "Failed to get a owner owner information.");
- }
- }
- else
- {
- err = wifi_direct_foreach_connected_peers(OnWifiDirectEachConnectedClient, pDeviceInfoList.get());
- SysTryReturn(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, null, E_SYSTEM, "Getting the information of connected device has failed.");
+ return new (std::nothrow) WifiDirectDeviceInfo(*pDeviceInfo);
+}
- for (int i = 0; i < pDeviceInfoList->GetCount(); i++)
- {
- pDeviceInfo = dynamic_cast<WifiDirectDeviceInfo*>(pDeviceInfoList->GetAt(i));
- SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, E_SYSTEM, "Failed to get a group client information.");
+IList*
+_WifiDirectSystemAdapter::GetConnectedPeerDeviceInfoListN(WifiDirectGroupMemberType currentMemberType) const
+{
+ unique_ptr< ArrayList > pDeviceInfoList(new (std::nothrow) ArrayList(SingleObjectDeleter));
+ SysTryReturn(NID_NET_WIFI, pDeviceInfoList != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- if(pDeviceInfo->GetMacAddress() == *pPeerMacAddress)
- {
- break;
- }
- }
- }
+ int err = WIFI_DIRECT_ERROR_NONE;
- return new (std::nothrow) WifiDirectDeviceInfo(*pDeviceInfo);
+ if (currentMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER)
+ {
+ err = wifi_direct_foreach_connected_peers(OnWifiDirectConnectedOwner, pDeviceInfoList.get());
+ SysTryReturn(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE || err == WIFI_DIRECT_ERROR_OPERATION_FAILED, null, E_SYSTEM, "[E_SYSTEM] Failed result from wifi_direct_foreach_connected_peers() is 0x%x.", err);
+ }
+ else if (currentMemberType == WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT)
+ {
+ err = wifi_direct_foreach_connected_peers(OnWifiDirectEachConnectedClient, pDeviceInfoList.get());
+ SysTryReturn(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE || err == WIFI_DIRECT_ERROR_OPERATION_FAILED, null, E_SYSTEM, "[E_SYSTEM] Failed result from wifi_direct_foreach_connected_peers() is 0x%x.", err);
+ }
+ return pDeviceInfoList.release();
}
void
_WifiDirectSystemAdapter::OnWifiDirectGroupCreated(const String& peerMacAddress, result r)
{
- _WifiDirectEventArg* pEventArg = null;
-
- unique_ptr<WifiDirectGroupInfo> pGroupInfo;
- unique_ptr<WifiDirectDeviceInfo> pDeviceInfo;
-
- if (IsFailed(r))
- {
- pEventArg = new _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED, DEFAULT_DEVICE_ID,
- WifiDirectGroupInfo(), WifiDirectDeviceInfo(), WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE, r);
- }
- else
- {
- bool isGroupOwner = false;
- (void)wifi_direct_is_group_owner(&isGroupOwner);
-
- if (isGroupOwner == true)
- {
- pGroupInfo.reset(GetGroupSettingInfoN());
- pDeviceInfo.reset(GetLocalDeviceInfoN());
- }
- else
- {
- char* pSsid = null;
- (void)wifi_direct_get_ssid(&pSsid);
- String ssid(pSsid);
- free(pSsid);
-
- int channel = -1;
- (void)wifi_direct_get_operating_channel(&channel);
- WifiRadioChannel operatingChannel = _WifiDirectUtility::ConvertChannel(channel);
-
- _WifiDirectGroupInfoImpl groupInfoImpl;
- groupInfoImpl.SetAutonomousGroupOwnerMode(false);
- groupInfoImpl.SetBssId(peerMacAddress);
- groupInfoImpl.SetSsid(ssid);
- groupInfoImpl.SetOperatingChannel(operatingChannel);
-
- pGroupInfo.reset(_WifiDirectGroupInfoImpl::CreateWifiDirectGroupInfoInstanceN(groupInfoImpl));
- pDeviceInfo.reset(GetConnectedPeerDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER));
- }
-
- if(pGroupInfo != null && pDeviceInfo != null)
- {
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED, DEFAULT_DEVICE_ID, *pGroupInfo,
- *pDeviceInfo, isGroupOwner ? WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER : WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT, r);
- }
- else
- {
- SysLogException(NID_NET_WIFI, E_SYSTEM, "[E_SYSTEM] Failed to get group info or device info.");
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED, DEFAULT_DEVICE_ID, WifiDirectGroupInfo(),
- WifiDirectDeviceInfo(), WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE, E_SYSTEM);
- }
- }
-
- if (pEventArg != null)
- {
- __pWifiDirectEvent->FireAsync(*pEventArg);
- }
+ _WifiDirectEventArg* pEventArg = null;
+
+ unique_ptr< WifiDirectGroupInfo > pGroupInfo;
+ unique_ptr< WifiDirectDeviceInfo > pDeviceInfo;
+
+ if (IsFailed(r))
+ {
+ pEventArg = new _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED, DEFAULT_DEVICE_ID,
+ WifiDirectGroupInfo(), WifiDirectDeviceInfo(), WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE, r);
+ }
+ else
+ {
+ bool isGroupOwner = false;
+ (void) wifi_direct_is_group_owner(&isGroupOwner);
+
+ if (isGroupOwner == true)
+ {
+ pGroupInfo.reset(GetGroupSettingInfoN());
+ pDeviceInfo.reset(GetLocalDeviceInfoN());
+ }
+ else
+ {
+ char* pSsid = null;
+ (void) wifi_direct_get_ssid(&pSsid);
+ String ssid(pSsid);
+ free(pSsid);
+
+ int channel = -1;
+ (void) wifi_direct_get_operating_channel(&channel);
+ WifiRadioChannel operatingChannel = _WifiDirectUtility::ConvertChannel(channel);
+
+ _WifiDirectGroupInfoImpl groupInfoImpl;
+ groupInfoImpl.SetAutonomousGroupOwnerMode(false);
+ groupInfoImpl.SetBssId(peerMacAddress);
+ groupInfoImpl.SetSsid(ssid);
+ groupInfoImpl.SetOperatingChannel(operatingChannel);
+
+ pGroupInfo.reset(_WifiDirectGroupInfoImpl::CreateWifiDirectGroupInfoInstanceN(groupInfoImpl));
+ pDeviceInfo.reset(GetConnectedPeerDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER));
+ }
+
+ if (pGroupInfo != null && pDeviceInfo != null)
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED, DEFAULT_DEVICE_ID, *pGroupInfo,
+ *pDeviceInfo, isGroupOwner ? WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER : WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT, r);
+ }
+ else
+ {
+ SysLogException(NID_NET_WIFI, E_SYSTEM, "[E_SYSTEM] Failed to get group info or device info.");
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_CREATED, DEFAULT_DEVICE_ID, WifiDirectGroupInfo(),
+ WifiDirectDeviceInfo(), WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE, E_SYSTEM);
+ }
+ }
+
+ if (pEventArg != null)
+ {
+ __pWifiDirectEvent->FireAsync(*pEventArg);
+ }
}
void
_WifiDirectSystemAdapter::OnWifiDirectAssociationCompleted(const Tizen::Base::String& peerMacAddress, result r)
{
- _WifiDirectEventArg* pEventArg = null;
- unique_ptr<WifiDirectDeviceInfo> pDeviceInfo;
-
- if (IsFailed(r))
- {
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ASSOCIATED, DEFAULT_DEVICE_ID, r);
- }
- else
- {
- // Get the peer device information
- pDeviceInfo.reset(GetConnectedPeerDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER));
-
- if (pDeviceInfo != null)
- {
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ASSOCIATED, DEFAULT_DEVICE_ID, *pDeviceInfo, r);
- }
- else
- {
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ASSOCIATED, DEFAULT_DEVICE_ID, E_SYSTEM);
- }
- }
-
- if (pEventArg != null)
- {
- __pWifiDirectEvent->FireAsync(*pEventArg);
- }
+ _WifiDirectEventArg* pEventArg = null;
+ unique_ptr< WifiDirectDeviceInfo > pDeviceInfo;
+
+ if (IsFailed(r))
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ASSOCIATED, DEFAULT_DEVICE_ID, r);
+ }
+ else
+ {
+ // Get the peer device information
+ pDeviceInfo.reset(GetConnectedPeerDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER));
+
+ if (pDeviceInfo != null)
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ASSOCIATED, DEFAULT_DEVICE_ID, *pDeviceInfo, r);
+ }
+ else
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_ASSOCIATED, DEFAULT_DEVICE_ID, E_SYSTEM);
+ }
+ }
+
+ if (pEventArg != null)
+ {
+ __pWifiDirectEvent->FireAsync(*pEventArg);
+ }
}
void
_WifiDirectSystemAdapter::OnWifiDirectClientAssociated(const Tizen::Base::String& peerMacAddress)
{
- _WifiDirectEventArg* pEventArg = null;
- unique_ptr<WifiDirectDeviceInfo> pDeviceInfo(GetConnectedPeerDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT, &peerMacAddress));
+ _WifiDirectEventArg* pEventArg = null;
+ unique_ptr< WifiDirectDeviceInfo > pDeviceInfo(GetConnectedPeerDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT, &peerMacAddress));
- if (pDeviceInfo != null)
- {
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GO_EVENT_CLIENT_ASSOCIATED, DEFAULT_DEVICE_ID, *pDeviceInfo);
+ if (pDeviceInfo != null)
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GO_EVENT_CLIENT_ASSOCIATED, DEFAULT_DEVICE_ID, *pDeviceInfo);
- __pWifiDirectEvent->FireAsync(*pEventArg);
- }
+ __pWifiDirectEvent->FireAsync(*pEventArg);
+ }
}
void
_WifiDirectSystemAdapter::OnWifiDirectClientDisassociated(const Tizen::Base::String& peerMacAddress)
{
- _WifiDirectEventArg* pEventArg = null;
+ _WifiDirectEventArg* pEventArg = null;
- WifiDirectDeviceInfo* pDeviceInfo = GetPeerInfo(peerMacAddress);
- WifiDirectAssociationTerminationReason reason = WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED;
+ WifiDirectDeviceInfo* pDeviceInfo = GetPeerInfo(peerMacAddress);
+ WifiDirectAssociationTerminationReason reason = WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_SELF_INITIATED;
- if (pDeviceInfo != null)
- {
- if (_WifiDirectDeviceInfoImpl::GetInstance(*pDeviceInfo)->IsDisconnecting() != true)
- {
- reason = WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_DISCONNECTED;
- }
+ if (pDeviceInfo != null)
+ {
+ if (_WifiDirectDeviceInfoImpl::GetInstance(*pDeviceInfo)->IsDisconnecting() != true)
+ {
+ reason = WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_DISCONNECTED;
+ }
- pEventArg = new (std::nothrow)_WifiDirectEventArg( WIFI_DIRECT_GO_EVENT_CLIENT_DISASSOCIATED,
- DEFAULT_DEVICE_ID, *pDeviceInfo, WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_DISCONNECTED);
- }
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GO_EVENT_CLIENT_DISASSOCIATED,
+ DEFAULT_DEVICE_ID, *pDeviceInfo, WIFI_DIRECT_ASSOCIATION_TERMINATION_REASON_DISCONNECTED);
+ }
- if (pEventArg != null)
- {
- __pWifiDirectEvent->FireAsync(*pEventArg);
- }
+ if (pEventArg != null)
+ {
+ __pWifiDirectEvent->FireAsync(*pEventArg);
+ }
}
void
_WifiDirectSystemAdapter::OnWifiDirectAssociationTerminated(WifiDirectAssociationTerminationReason reason, result r)
{
- _WifiDirectEventArg* pEventArg = null;
+ _WifiDirectEventArg* pEventArg = null;
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_DISASSOCIATED, DEFAULT_DEVICE_ID, reason, r);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GC_EVENT_DISASSOCIATED, DEFAULT_DEVICE_ID, reason, r);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectEvent->FireAsync(*pEventArg);
+ __pWifiDirectEvent->FireAsync(*pEventArg);
}
void
_WifiDirectSystemAdapter::OnWifiDirectGroupDestroyed(result r)
{
- _WifiDirectEventArg* pEventArg = null;
+ _WifiDirectEventArg* pEventArg = null;
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_GO_EVENT_GROUP_DESTROYED, DEFAULT_DEVICE_ID, r);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_GO_EVENT_GROUP_DESTROYED, DEFAULT_DEVICE_ID, r);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectEvent->FireAsync(*pEventArg);
+ __pWifiDirectEvent->FireAsync(*pEventArg);
}
void
_WifiDirectSystemAdapter::OnWifiDirectConnected(const Tizen::Base::String& peerMacAddress, result r)
{
- _WifiDirectEventArg* pEventArg = null;
- unique_ptr<WifiDirectDeviceInfo> pDeviceInfo;
-
- if (!IsFailed(r))
- {
- bool isGroupOwner = false;
- int err = wifi_direct_is_group_owner(&isGroupOwner);
- SysLog(NID_NET_WIFI, "[0x%x] Return value of wifi_direct_is_group_owner()", err);
-
- if (isGroupOwner == true)
- {
- pDeviceInfo.reset(GetConnectedPeerDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT, &peerMacAddress));
- }
- else
- {
- pDeviceInfo.reset(GetConnectedPeerDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER, &peerMacAddress));
- }
-
- if (pDeviceInfo != null)
- {
- AddPeerInfo(pDeviceInfo.get());
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_CONNECTED, DEFAULT_DEVICE_ID, *pDeviceInfo, r);
-
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- }
- }
- else
- {
- pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_CONNECTED, DEFAULT_DEVICE_ID, WifiDirectDeviceInfo(), r);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- }
-
- __pWifiDirectEvent->FireAsync(*pEventArg);
+ _WifiDirectEventArg* pEventArg = null;
+ unique_ptr< WifiDirectDeviceInfo > pDeviceInfo;
+
+ if (r == E_SUCCESS)
+ {
+ bool isGroupOwner = false;
+ int err = wifi_direct_is_group_owner(&isGroupOwner);
+ SysTryLog(NID_NET_WIFI, err == WIFI_DIRECT_ERROR_NONE, "Failed result from wifi_direct_is_group_owner() is 0x%x.", err);
+
+ if (isGroupOwner == true)
+ {
+ pDeviceInfo.reset(GetConnectedPeerDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT, &peerMacAddress));
+ }
+ else
+ {
+ pDeviceInfo.reset(GetConnectedPeerDeviceInfoN(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER, &peerMacAddress));
+ }
+
+ if (pDeviceInfo != null)
+ {
+ AddPeerInfo(pDeviceInfo.get());
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_CONNECTED, DEFAULT_DEVICE_ID, *pDeviceInfo, r);
+
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ }
+ }
+ else
+ {
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_CONNECTED, DEFAULT_DEVICE_ID, WifiDirectDeviceInfo(), r);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ }
+
+ __pWifiDirectEvent->FireAsync(*pEventArg);
}
void
_WifiDirectSystemAdapter::OnWifiDirectDisconnected(const Tizen::Base::String& peerMacAddress, result r)
{
- _WifiDirectEventArg* pEventArg = null;
+ _WifiDirectEventArg* pEventArg = null;
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_DISCONNECTED, DEFAULT_DEVICE_ID, peerMacAddress);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_DISCONNECTED, DEFAULT_DEVICE_ID, peerMacAddress);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- WifiDirectDeviceInfo* pDeviceInfoTemp = GetPeerInfo(peerMacAddress);
- if (pDeviceInfoTemp != null)
- {
- RemovePeerInfo(pDeviceInfoTemp);
- }
+ SysLog(NID_NET_WIFI, "mac : %ls", peerMacAddress.GetPointer());
- __pWifiDirectEvent->FireAsync(*pEventArg);
+
+ WifiDirectDeviceInfo* pDeviceInfoTemp = GetPeerInfo(peerMacAddress);
+ if (pDeviceInfoTemp != null)
+ {
+ RemovePeerInfo(pDeviceInfoTemp);
+ }
+
+ __pWifiDirectEvent->FireAsync(*pEventArg);
}
void
_WifiDirectSystemAdapter::OnWifiDirectAutonomousGroupCreated(result r)
{
- _WifiDirectEventArg* pEventArg = new _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_AUTONOMOS_GROUP_CREATED, DEFAULT_DEVICE_ID, r);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ _WifiDirectEventArg* pEventArg = new _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_AUTONOMOS_GROUP_CREATED, DEFAULT_DEVICE_ID, r);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- __pWifiDirectEvent->FireAsync(*pEventArg);
+ __pWifiDirectEvent->FireAsync(*pEventArg);
}
void
_WifiDirectSystemAdapter::OnWifiDirectGroupLeft(result r)
{
- _WifiDirectEventArg* pEventArg = null;
+ _WifiDirectEventArg* pEventArg = null;
- pEventArg = new (std::nothrow)_WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_LEFT, DEFAULT_DEVICE_ID);
- SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ __connectedPeerList.RemoveAll();
- __pWifiDirectEvent->FireAsync(*pEventArg);
+ pEventArg = new (std::nothrow) _WifiDirectEventArg(WIFI_DIRECT_DEVICE_EVENT_GROUP_LEFT, DEFAULT_DEVICE_ID);
+ SysTryReturnVoidResult(NID_NET_WIFI, pEventArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+
+ __pWifiDirectEvent->FireAsync(*pEventArg);
}
} } } // Tizen::Net::Wifi
-
class _WifiDirectDeviceImpl;
class _WifiIpcProxy;
- enum _WifiDirectSystemState
- {
- WIFI_DIRECT_SYSTEM_DEACTIVATED,
- WIFI_DIRECT_SYSTEM_ACTIVATING,
- WIFI_DIRECT_SYSTEM_DEACTIVATING,
- WIFI_DIRECT_SYSTEM_ACTIVATED,
- WIFI_DIRECT_SYSTEM_AUTONOMOUS_GROUP_CREATING,
- WIFI_DIRECT_SYSTEM_GROUP_CREATING,
- WIFI_DIRECT_SYSTEM_GROUP_CANCELING,
- WIFI_DIRECT_SYSTEM_CONNECTING,
- WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING,
- WIFI_DIRECT_SYSTEM_ASSOCIATING,
- WIFI_DIRECT_SYSTEM_OWNER,
- WIFI_DIRECT_SYSTEM_DESTROYING,
- WIFI_DIRECT_SYSTEM_LEAVING,
- WIFI_DIRECT_SYSTEM_CLIENT,
- WIFI_DIRECT_SYSTEM_DISCONNECTING
- };
-
- enum _WifiDirectSystemScanState
- {
- WIFI_DIRECT_SYSTEM_SCAN_IDLE,
- WIFI_DIRECT_SYSTEM_SCAN_LISTEN,
- WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN,
- WIFI_DIRECT_SYSTEM_SCAN_SCANNING,
- WIFI_DIRECT_SYSTEM_SCAN_CANCELLING
- };
+enum _WifiDirectSystemState
+{
+ WIFI_DIRECT_SYSTEM_DEACTIVATED,
+ WIFI_DIRECT_SYSTEM_ACTIVATING,
+ WIFI_DIRECT_SYSTEM_DEACTIVATING,
+ WIFI_DIRECT_SYSTEM_ACTIVATED,
+ WIFI_DIRECT_SYSTEM_AUTONOMOUS_GROUP_CREATING,
+ WIFI_DIRECT_SYSTEM_GROUP_CREATING,
+ WIFI_DIRECT_SYSTEM_GROUP_CANCELING,
+ WIFI_DIRECT_SYSTEM_CONNECTING,
+ WIFI_DIRECT_SYSTEM_CONNECT_CANCELLING,
+ WIFI_DIRECT_SYSTEM_ASSOCIATING,
+ WIFI_DIRECT_SYSTEM_OWNER,
+ WIFI_DIRECT_SYSTEM_DESTROYING,
+ WIFI_DIRECT_SYSTEM_LEAVING,
+ WIFI_DIRECT_SYSTEM_CLIENT,
+ WIFI_DIRECT_SYSTEM_DISCONNECTING
+};
+
+enum _WifiDirectSystemScanState
+{
+ WIFI_DIRECT_SYSTEM_SCAN_IDLE,
+ WIFI_DIRECT_SYSTEM_SCAN_LISTEN,
+ WIFI_DIRECT_SYSTEM_SCAN_LISTEN_CANCELING_TO_SCAN,
+ WIFI_DIRECT_SYSTEM_SCAN_SCANNING,
+ WIFI_DIRECT_SYSTEM_SCAN_CANCELLING
+};
class _WifiDirectSystemAdapter
- : public Tizen::Base::Object
+ : public Tizen::Base::Object
{
public:
- struct _WifiDirectEventDeleter
- {
- template <typename Obj>
- void operator()(Obj* object)
- {
- delete object;
- wifi_direct_unset_connection_state_changed_cb();
- wifi_direct_unset_discovery_state_changed_cb();
- wifi_direct_unset_connection_state_changed_cb();
- }
- };
-
- /**
- * Gets the instance.
- *
- * @return The pointer to %_WifiDirectSystemAdapter
- */
- static _WifiDirectSystemAdapter* GetInstance(void);
-
- /**
- * Gets the All Device Info List.
- *
- * @return The pointer to List containing all device info
- */
- Tizen::Base::Collection::IList* GetAllDeviceInfoN(void);
-
- /**
- * @see WifiDirectDevice::Activate()
- */
- result Activate(void);
-
- /**
- * @see WifiDirectDevice::Deactivate()
- */
- result Deactivate(void);
-
- /**
- * @see WifiDirectDevice::GetGroupSettingInfoN()
- */
- WifiDirectGroupInfo* GetGroupSettingInfoN(void) const;
-
- /**
- * @see WifiDirectDevice::GetLocalDeviceInfoN()
- */
- WifiDirectDeviceInfo* GetLocalDeviceInfoN(void) const;
-
- /**
- * @see WifiDirectDevice::GetWpsConfigurationModePreference()
- */
- WifiWpsConfigurationMode GetWpsConfigurationModePreference(void) const;
-
- /**
- * @see WifiDirectDevice::SetLocalDeviceName()
- */
- result SetLocalDeviceName(const Tizen::Base::String &name);
-
- /**
- * @see WifiDirectDevice::SetWpsConfigurationModePreference()
- */
- result SetWpsConfigurationModePreference(WifiWpsConfigurationMode mode);
-
- /**
- * @see WifiDirectDevice::CreateGroup()
- */
- result CreateGroup(const WifiDirectGroupInfo *pWifiDirectGroupInfo = null, const WifiDirectDeviceInfo *pWifiDirectRemoteDeviceInfo = null);
-
- /**
- * @see WifiDirectDevice::CancelGroupCreation()
- */
- result CancelGroupCreation(void);
-
- /**
- * @see WifiDirectDevice::Scan()
- */
- result Scan(void);
-
- /**
- * @see WifiDirectDevice::CancelScan()
- */
- result CancelScan(void);
-
- /**
- * @see WifiDirectDevice::Associate()
- */
- result Associate(const WifiDirectDeviceInfo &wifiDirectGroupOwnerDeviceInfo);
-
- /**
- * @see WifiDirectDevice::GetWifiDirectMemberN()
- */
- WifiDirectGroupMember* GetWifiDirectMemberN(void);
-
- /**
- * @see WifiDirectDevice::IsDiscoverable()
- */
- bool IsDiscoverable(void) const;
-
- /**
- * @see WifiDirectDevice::IsActivated()
- */
- bool IsActivated(void) const;
-
- /**
- * @see WifiDirectDevice::Connect()
- */
- result Connect(const WifiDirectDeviceInfo& peerDeviceInfo);
-
- /**
- * @see WifiDirectDevice::CancelConnect()
- */
- result CancelConnect(void);
-
- /**
- * @see WifiDirectDevice::CreateAutonomousGroup()
- */
- result CreateAutonomousGroup(void);
-
- /**
- * @see WifiDirectDevice::SetGroupSettingInfo()
- */
- result SetGroupSettingInfo(const WifiDirectGroupInfo& groupSettingInfo);
-
- /**
- * @see WifiDirectDevice::Disconnect()
- * @see WifiDirectGroupOwner::Disconnect()
- */
- result Disconnect(const WifiDirectDeviceInfo& remoteDeviceInfo);
-
- /**
- * @see WifiDirectDevice::LeaveGroup()
- */
- result LeaveGroup(void);
-
- /**
- * @see WifiDirectDevice::GetGroupOwnerInfo()
- */
- WifiDirectDeviceInfo* GetGroupOwnerInfoN(void) const;
-
- /**
- * @see WifiDirectDevice::GetGroupClientInfoListN()
- */
- Tizen::Base::Collection::IList* GetGroupClientInfoListN(void) const;
-
- /**
- * @see WifiDirectDevice::GetOperatingChannel()
- */
- WifiRadioChannel GetOperatingChannel(void) const;
-
- /**
- * @see WifiDirectGroupOwner::DestroyGroup()
- */
- result DestroyGroup(void);
-
- /**
- * @see WifiDirectGroupOwner::GetAllGroupMemberInfoImplListN()
- */
- Tizen::Base::Collection::IList* GetAllGroupMemberInfoImplListN(void);
-
- /**
- * @see WifiDirectGroupClient::Disassociate()
- */
- result Disassociate(void);
-
- /**
- * Gets the type of the Wi-Fi Direct group member.
- *
- * @return The type of the Wi-Fi Direct group member
- */
- WifiDirectGroupMemberType GetCurrentMemberType(void) const;
-
- /**
- * Called when the state of device is changed.
- *
- * @param[in] errorCode Any Error occured on power change
- * @param[in] deviceState Device Status
- * @param[in] pUserData The user data passed from the callback registration function
- */
- static void OnWifiDirectPowerChanged(int errorCode, wifi_direct_device_state_e deviceState, void* pUserData);
-
- /**
- * Called when the state of discovery is changed.
- *
- * @param[in] errorCode Any Error occured during scan process
- * @param[in] discoveryState Discovery status
- * @param[in] pUserData The user data passed from the callback registration function
- */
- static void OnWifiDirectScanCompleted(int errorCode, wifi_direct_discovery_state_e discoveryState, void* pUserData);
-
- /**
- * Called when the state of connection is changed.
- *
- * @param[in] errorCode Any Error occured during connection process
- * @param[in] connectionState Connection status
- * @param[in] pMacAddress Mac Address
- * @param[in] pUserData The user data passed from the callback registration function
- */
- static void OnWifiDirectConnectionChanged(int errorCode, wifi_direct_connection_state_e connectionState,
- const char* pMacAddress, void* pUserData);
- /**
- * Called when IP address of client is assigned when your device is group owner.
- *
- * @param[in] errorCode Any Error occured during connection process
- * @param[in] connectionState Connection status
- * @param[in] pMacAddress Mac Address
- * @param[in] pUserData The user data passed from the callback registration function
- */
- static void OnWifiDirectClientIpAssigned(const char *mac_address, const char *ip_address,
- const char *interface_address, void *user_data);
-
- /**
+ struct _WifiDirectEventDeleter
+ {
+ template< typename Obj >
+ void operator ()(Obj* object)
+ {
+ delete object;
+ wifi_direct_unset_connection_state_changed_cb();
+ wifi_direct_unset_discovery_state_changed_cb();
+ wifi_direct_unset_connection_state_changed_cb();
+ }
+ };
+
+ /**
+ * Gets the instance.
+ *
+ * @return The pointer to %_WifiDirectSystemAdapter
+ */
+ static _WifiDirectSystemAdapter* GetInstance(void);
+
+ /**
+ * Gets the All Device Info List.
+ *
+ * @return The pointer to List containing all device info
+ */
+ Tizen::Base::Collection::IList* GetAllDeviceInfoN(void);
+
+ /**
+ * @see WifiDirectDevice::Activate()
+ */
+ result Activate(void);
+
+ /**
+ * @see WifiDirectDevice::Deactivate()
+ */
+ result Deactivate(void);
+
+ /**
+ * @see WifiDirectDevice::GetGroupSettingInfoN()
+ */
+ WifiDirectGroupInfo* GetGroupSettingInfoN(void) const;
+
+ /**
+ * @see WifiDirectDevice::GetLocalDeviceInfoN()
+ */
+ WifiDirectDeviceInfo* GetLocalDeviceInfoN(void) const;
+
+ /**
+ * @see WifiDirectDevice::GetWpsConfigurationModePreference()
+ */
+ WifiWpsConfigurationMode GetWpsConfigurationModePreference(void) const;
+
+ /**
+ * @see WifiDirectDevice::SetLocalDeviceName()
+ */
+ result SetLocalDeviceName(const Tizen::Base::String& name);
+
+ /**
+ * @see WifiDirectDevice::SetWpsConfigurationModePreference()
+ */
+ result SetWpsConfigurationModePreference(WifiWpsConfigurationMode mode);
+
+ /**
+ * @see WifiDirectDevice::CreateGroup()
+ */
+ result CreateGroup(const WifiDirectGroupInfo* pWifiDirectGroupInfo = null, const WifiDirectDeviceInfo* pWifiDirectRemoteDeviceInfo = null);
+
+ /**
+ * @see WifiDirectDevice::CancelGroupCreation()
+ */
+ result CancelGroupCreation(void);
+
+ /**
+ * @see WifiDirectDevice::Scan()
+ */
+ result Scan(void);
+
+ /**
+ * @see WifiDirectDevice::CancelScan()
+ */
+ result CancelScan(void);
+
+ /**
+ * @see WifiDirectDevice::Associate()
+ */
+ result Associate(const WifiDirectDeviceInfo& wifiDirectGroupOwnerDeviceInfo);
+
+ /**
+ * @see WifiDirectDevice::GetWifiDirectMemberN()
+ */
+ WifiDirectGroupMember* GetWifiDirectMemberN(void);
+
+ /**
+ * @see WifiDirectDevice::IsDiscoverable()
+ */
+ bool IsDiscoverable(void) const;
+
+ /**
+ * @see WifiDirectDevice::IsActivated()
+ */
+ bool IsActivated(void) const;
+
+ /**
+ * @see WifiDirectDevice::Connect()
+ */
+ result Connect(const WifiDirectDeviceInfo& peerDeviceInfo);
+
+ /**
+ * @see WifiDirectDevice::CancelConnect()
+ */
+ result CancelConnect(void);
+
+ /**
+ * @see WifiDirectDevice::CreateAutonomousGroup()
+ */
+ result CreateAutonomousGroup(void);
+
+ /**
+ * @see WifiDirectDevice::SetGroupSettingInfo()
+ */
+ result SetGroupSettingInfo(const WifiDirectGroupInfo& groupSettingInfo);
+
+ /**
+ * @see WifiDirectDevice::Disconnect()
+ * @see WifiDirectGroupOwner::Disconnect()
+ */
+ result Disconnect(const WifiDirectDeviceInfo& remoteDeviceInfo);
+
+ /**
+ * @see WifiDirectDevice::LeaveGroup()
+ */
+ result LeaveGroup(void);
+
+ /**
+ * @see WifiDirectDevice::GetGroupOwnerInfo()
+ */
+ WifiDirectDeviceInfo* GetGroupOwnerInfoN(void) const;
+
+ /**
+ * @see WifiDirectDevice::GetGroupClientInfoListN()
+ */
+ Tizen::Base::Collection::IList* GetGroupClientInfoListN(void) const;
+
+ /**
+ * @see WifiDirectDevice::GetOperatingChannel()
+ */
+ WifiRadioChannel GetOperatingChannel(void) const;
+
+ /**
+ * @see WifiDirectGroupOwner::DestroyGroup()
+ */
+ result DestroyGroup(void);
+
+ /**
+ * @see WifiDirectGroupOwner::GetAllGroupMemberInfoImplListN()
+ */
+ Tizen::Base::Collection::IList* GetAllGroupMemberInfoImplListN(void);
+
+ /**
+ * @see WifiDirectGroupClient::Disassociate()
+ */
+ result Disassociate(void);
+
+ /**
+ * Gets the type of the Wi-Fi Direct group member.
+ *
+ * @return The type of the Wi-Fi Direct group member
+ */
+ WifiDirectGroupMemberType GetCurrentMemberType(void) const;
+
+ /**
+ * Called when the state of device is changed.
+ *
+ * @param[in] errorCode Any Error occured on power change
+ * @param[in] deviceState Device Status
+ * @param[in] pUserData The user data passed from the callback registration function
+ */
+ static void OnWifiDirectPowerChanged(int errorCode, wifi_direct_device_state_e deviceState, void* pUserData);
+
+ /**
+ * Called when the state of discovery is changed.
+ *
+ * @param[in] errorCode Any Error occured during scan process
+ * @param[in] discoveryState Discovery status
+ * @param[in] pUserData The user data passed from the callback registration function
+ */
+ static void OnWifiDirectScanCompleted(int errorCode, wifi_direct_discovery_state_e discoveryState, void* pUserData);
+
+ /**
+ * Called when the state of connection is changed.
+ *
+ * @param[in] errorCode Any Error occured during connection process
+ * @param[in] connectionState Connection status
+ * @param[in] pMacAddress Mac Address
+ * @param[in] pUserData The user data passed from the callback registration function
+ */
+ static void OnWifiDirectConnectionChanged(int errorCode, wifi_direct_connection_state_e connectionState, const char* pMacAddress, void* pUserData);
+ /**
+ * Called when IP address of client is assigned when your device is group owner.
+ *
+ * @param[in] errorCode Any Error occured during connection process
+ * @param[in] connectionState Connection status
+ * @param[in] pMacAddress Mac Address
+ * @param[in] pUserData The user data passed from the callback registration function
+ */
+ static void OnWifiDirectClientIpAssigned(const char* mac_address, const char* ip_address, const char* interface_address, void* user_data);
+
+ /**
* Call back for each discovered device
*
* @param[in] pPeer Device Information
*/
static bool OnWifiDirectPeerFound(wifi_direct_discovered_peer_info_s* pPeer, void* pUserData);
- /**
- * Call back for each discovered device
- *
- * @param[in] pPeer Device Information
- * @param[in] pUserData The user data passed from the callback registration function
- */
- static bool OnWifiDirectEachDiscoveredPeer(wifi_direct_discovered_peer_info_s* pPeer, void* pUserData);
-
- /**
- * Call back for each connected device
- *
- * @param[in] pPeer Device Information
- * @param[in] pUserData The user data passed from the callback registration function
- */
- static bool OnWifiDirectEachConnectedClient(wifi_direct_connected_peer_info_s* pPeer, void* pUserData);
-
- /**
- * Call back for connected owner
- *
- * @param[in] pPeer Device Information
- * @param[in] pUserData The user data passed from the callback registration function
- */
- static bool OnWifiDirectConnectedOwner(wifi_direct_connected_peer_info_s* pPeer, void* pUserData);
-
- /**
- * Call back for each discovered device, for searching same device for create group
- *
- * @param[in] pPeer Device Information
- * @param[in] pUserData The user data passed from the callback registration function
- */
- static bool OnWifiDirectFindSameDeviceName(wifi_direct_discovered_peer_info_s* pPeer, void* pUserData);
-
- /**
- * Call back for each supported WPS mode
- *
- * @param[in] type WPS mode type
- * @param[in] pUserData The user data passed from the callback registration function
- */
- static bool OnWifiDirectSupportedWpsMode(wifi_direct_wps_type_e type, void* pUserData);
-
- /**
- * Adds Listner
- *
- * @param[in] listner object of _WifiDirectDeviceImpl
- */
- void AddListener(const _WifiDirectDeviceImpl& listner);
-
- /**
- * Removes Listner
- *
- * @param[in] listner object of _WifiDirectDeviceImpl
- */
- void RemoveListener(const _WifiDirectDeviceImpl& listner);
-
- /**
- * Called to notify the application with the result and related information for a request of group creation or group creation
- * cancellation.
- *
- * @param[in] peerMacAddress The peer mac address
- * @param[in] r An error code
- */
- void OnWifiDirectGroupCreated(const Tizen::Base::String& peerMacAddress, result r);
-
- /**
- * Called to notify the application that the connection to a Wi-Fi Direct group owner is completely established.
- *
- * @param[in] peerMacAddress The peer mac address
- * @param[in] r An error code
- */
- void OnWifiDirectAssociationCompleted(const Tizen::Base::String& peerMacAddress, result r);
-
- /**
- * Called to notify the application that a successful association has occurred with a client.
- *
- * @param[in] peerMacAddress The peer mac address
- */
- void OnWifiDirectClientAssociated(const Tizen::Base::String& peerMacAddress);
-
- /**
- * Called to notify the application that a disassociation has occurred with a client.
- *
- * @param[in] peerMacAddress The peer mac address
- */
- void OnWifiDirectClientDisassociated(const Tizen::Base::String& peerMacAddress);
-
- /**
- * Called to notify the application that a connection to a Wi-Fi Direct group owner has terminated.
- *
- * @param[in] reason The reason of association termination
- * @param[in] r An error code
- */
- void OnWifiDirectAssociationTerminated(WifiDirectAssociationTerminationReason reason, result r);
-
- /**
- * Called to notify the application that the Wi-Fi Direct group is destroyed.
- *
- * @param[in] r An error code
- */
- void OnWifiDirectGroupDestroyed(result r);
-
- /**
- * Called to notify the application that Wi-Fi Direct connection has been established with the remove device.
- *
- * @param[in] peerMacAddress The peer mac address
- * @param[in] r An error code
- */
- void OnWifiDirectConnected(const Tizen::Base::String& peerMacAddress, result r);
-
- /**
- * Called to notify the application that the Wi-Fi Direct connection has been disconnected with peer device.
- *
- * @param[in] peerMacAddress The peer mac address
- */
- void OnWifiDirectDisconnected(const Tizen::Base::String& peerMacAddress, result r);
-
- /**
- * Called to notify the application that an autonomous group is created.
- *
- * @param[in] r An error code
- */
- void OnWifiDirectAutonomousGroupCreated(result r);
-
- /**
- * Called to notify the application that the local device is left from the group.
- *
- * @param[in] r An error code
- */
- void OnWifiDirectGroupLeft(result r);
+ /**
+ * Call back for each Discovered device
+ *
+ * @param[in] pPeer Device Information
+ * @param[in] pUserData The user data passed from the callback registration function
+ */
+ static bool OnWifiDirectEachDiscoveredPeer(wifi_direct_discovered_peer_info_s* pPeer, void* pUserData);
+
+ /**
+ * Call back for each connected device
+ *
+ * @param[in] pPeer Device Information
+ * @param[in] pUserData The user data passed from the callback registration function
+ */
+ static bool OnWifiDirectEachConnectedClient(wifi_direct_connected_peer_info_s* pPeer, void* pUserData);
+
+ /**
+ * Call back for connected owner
+ *
+ * @param[in] pPeer Device Information
+ * @param[in] pUserData The user data passed from the callback registration function
+ */
+ static bool OnWifiDirectConnectedOwner(wifi_direct_connected_peer_info_s* pPeer, void* pUserData);
+
+ /**
+ * Call back for each discovered device, for searching same device for create group
+ *
+ * @param[in] pPeer Device Information
+ * @param[in] pUserData The user data passed from the callback registration function
+ */
+ static bool OnWifiDirectFindSameDeviceName(wifi_direct_discovered_peer_info_s* pPeer, void* pUserData);
+
+ /**
+ * Call back for each supported WPS mode
+ *
+ * @param[in] type WPS mode type
+ * @param[in] pUserData The user data passed from the callback registration function
+ */
+ static bool OnWifiDirectSupportedWpsMode(wifi_direct_wps_type_e type, void* pUserData);
+
+ /**
+ * Adds Listner
+ *
+ * @param[in] listner object of _WifiDirectDeviceImpl
+ */
+ void AddListener(const _WifiDirectDeviceImpl& listner);
+
+ /**
+ * Removes Listner
+ *
+ * @param[in] listner object of _WifiDirectDeviceImpl
+ */
+ void RemoveListener(const _WifiDirectDeviceImpl& listner);
+
+ /**
+ * Called to notify the application with the result and related information for a request of group creation or group creation
+ * cancellation.
+ *
+ * @param[in] peerMacAddress The peer mac address
+ * @param[in] r An error code
+ */
+ void OnWifiDirectGroupCreated(const Tizen::Base::String& peerMacAddress, result r);
+
+ /**
+ * Called to notify the application that the connection to a Wi-Fi Direct group owner is completely established.
+ *
+ * @param[in] peerMacAddress The peer mac address
+ * @param[in] r An error code
+ */
+ void OnWifiDirectAssociationCompleted(const Tizen::Base::String& peerMacAddress, result r);
+
+ /**
+ * Called to notify the application that a successful association has occurred with a client.
+ *
+ * @param[in] peerMacAddress The peer mac address
+ */
+ void OnWifiDirectClientAssociated(const Tizen::Base::String& peerMacAddress);
+
+ /**
+ * Called to notify the application that a disassociation has occurred with a client.
+ *
+ * @param[in] peerMacAddress The peer mac address
+ */
+ void OnWifiDirectClientDisassociated(const Tizen::Base::String& peerMacAddress);
+
+ /**
+ * Called to notify the application that a connection to a Wi-Fi Direct group owner has terminated.
+ *
+ * @param[in] reason The reason of association termination
+ * @param[in] r An error code
+ */
+ void OnWifiDirectAssociationTerminated(WifiDirectAssociationTerminationReason reason, result r);
+
+ /**
+ * Called to notify the application that the Wi-Fi Direct group is destroyed.
+ *
+ * @param[in] r An error code
+ */
+ void OnWifiDirectGroupDestroyed(result r);
+
+ /**
+ * Called to notify the application that Wi-Fi Direct connection has been established with the remove device.
+ *
+ * @param[in] peerMacAddress The peer mac address
+ * @param[in] r An error code
+ */
+ void OnWifiDirectConnected(const Tizen::Base::String& peerMacAddress, result r);
+
+ /**
+ * Called to notify the application that the Wi-Fi Direct connection has been disconnected with peer device.
+ *
+ * @param[in] peerMacAddress The peer mac address
+ */
+ void OnWifiDirectDisconnected(const Tizen::Base::String& peerMacAddress, result r);
+
+ /**
+ * Called to notify the application that an autonomous group is created.
+ *
+ * @param[in] r An error code
+ */
+ void OnWifiDirectAutonomousGroupCreated(result r);
+
+ /**
+ * Called to notify the application that the local device is left from the group.
+ *
+ * @param[in] r An error code
+ */
+ void OnWifiDirectGroupLeft(result r);
private:
- /**
- * This default constructor is intentionally declared as private to implement the Singleton semantic.
- *
- */
- _WifiDirectSystemAdapter(void);
-
- /**
- * This destructor is intentionally declared as private to implement the Singleton semantic.
- *
- */
- virtual ~_WifiDirectSystemAdapter(void);
-
- /**
- * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
- */
- _WifiDirectSystemAdapter(const _WifiDirectSystemAdapter& value);
-
- /**
- * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
- */
- _WifiDirectSystemAdapter& operator =(const _WifiDirectSystemAdapter& rhs);
-
- /**
- * Initializes this instance of _WifiDirectSystemAdapter.
- */
- bool Construct(void);
-
- /**
- * Adds connected peer to the end of the list.
- *
- * @param[in] pPeerInfo The peer device information
- */
- result AddPeerInfo(WifiDirectDeviceInfo* pPeerInfo);
-
- /**
- * Removes disconnected peer.
- *
- * @param[in] pClientInfo Device Information
- */
- result RemovePeerInfo(WifiDirectDeviceInfo* pPeerInfo);
-
- /**
- * Returns device information matching with mac address
- *
- * @param[in] macAddress mac address string to search in the list
- */
- WifiDirectDeviceInfo* GetPeerInfo(const Tizen::Base::String& macAddress);
-
- /**
- * Returns char buffer of device state
- *
- * @return char buffer of device state
- */
- const char* GetStringOfDeviceState(void) const;
-
- /**
- * Returns char buffer of scan state
- *
- * @return char buffer of scan state
- */
- const char* GetStringOfScanState(void) const;
-
- /**
- * Returns String of all status
- *
- * @return String of all status
- */
- Tizen::Base::String GetStringOfAllCurrentState(void) const;
-
- /**
- * Initializes current state of Wi-Fi Direct
- *
- * @return An error code
- */
- result InitializeCurrentState(void);
-
- /**
- * Starts listen mode
- *
- * @return An error code
- */
- result StartListenMode(void);
-
- /**
- * Stops listen mode
- *
- * @return An error code
- */
- result StopListenModeToScan(void);
-
- /**
- * Starts discovery
- *
- * @return An error code
- */
- result StartDiscovery(void);
-
- /**
- * Cancels discovery
- *
- * @return An error code
- */
- result CancelDiscovery(void);
-
- /**
- * Initializes the _WifiDirectSystemAdapter singletone instance.
- *
- * @exception E_SUCCESS The initialization was successful.
- * @exception E_SYSTEM A system error occurred.
- * @exception E_OUT_OF_MEMORY The memory is insufficient.
- */
- static void InitSingleton(void);
-
- /**
- * Destorys instance of singleton class.
- */
- static void DestroySingleton(void);
-
- /**
- * Gets the connected peer device info.
- */
- WifiDirectDeviceInfo* GetConnectedPeerDeviceInfoN(WifiDirectGroupMemberType peerMemberType, const Tizen::Base::String* pPeerMacAddress = null) const;
+ /**
+ * This default constructor is intentionally declared as private to implement the Singleton semantic.
+ *
+ */
+ _WifiDirectSystemAdapter(void);
+
+ /**
+ * This destructor is intentionally declared as private to implement the Singleton semantic.
+ *
+ */
+ virtual ~_WifiDirectSystemAdapter(void);
+
+ /**
+ * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
+ */
+ _WifiDirectSystemAdapter(const _WifiDirectSystemAdapter& value);
+
+ /**
+ * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
+ */
+ _WifiDirectSystemAdapter& operator =(const _WifiDirectSystemAdapter& rhs);
+
+ /**
+ * Initializes this instance of _WifiDirectSystemAdapter.
+ */
+ bool Construct(void);
+
+ /**
+ * Adds connected peer to the end of the list.
+ *
+ * @param[in] pPeerInfo The peer device information
+ */
+ result AddPeerInfo(WifiDirectDeviceInfo* pPeerInfo);
+
+ /**
+ * Removes disconnected peer.
+ *
+ * @param[in] pClientInfo Device Information
+ */
+ result RemovePeerInfo(WifiDirectDeviceInfo* pPeerInfo);
+
+ /**
+ * Returns device information matching with mac address
+ *
+ * @param[in] macAddress mac address string to search in the list
+ */
+ WifiDirectDeviceInfo* GetPeerInfo(const Tizen::Base::String& macAddress);
+
+ /**
+ * Returns char buffer of device state
+ *
+ * @return char buffer of device state
+ */
+ const char* GetStringOfDeviceState(void) const;
+
+ /**
+ * Returns char buffer of scan state
+ *
+ * @return char buffer of scan state
+ */
+ const char* GetStringOfScanState(void) const;
+
+ /**
+ * Returns String of all status
+ *
+ * @return String of all status
+ */
+ Tizen::Base::String GetStringOfAllCurrentState(void) const;
+
+ /**
+ * Initializes current state of Wi-Fi Direct
+ *
+ * @return An error code
+ */
+ result InitializeCurrentState(void);
+
+ /**
+ * Starts listen mode
+ *
+ * @return An error code
+ */
+ result StartListenMode(void);
+
+ /**
+ * Stops listen mode
+ *
+ * @return An error code
+ */
+ result StopListenModeToScan(void);
+
+ /**
+ * Starts discovery
+ *
+ * @return An error code
+ */
+ result StartDiscovery(void);
+
+ /**
+ * Cancels discovery
+ *
+ * @return An error code
+ */
+ result CancelDiscovery(void);
+
+ /**
+ * Initializes the _WifiDirectSystemAdapter singletone instance.
+ *
+ * @exception E_SUCCESS The initialization was successful.
+ * @exception E_SYSTEM A system error occurred.
+ * @exception E_OUT_OF_MEMORY The memory is insufficient.
+ */
+ static void InitSingleton(void);
+
+ /**
+ * Destorys instance of singleton class.
+ */
+ static void DestroySingleton(void);
+
+ /**
+ * Gets the connected peer device info.
+ */
+ WifiDirectDeviceInfo* GetConnectedPeerDeviceInfoN(WifiDirectGroupMemberType peerMemberType, const Tizen::Base::String* pPeerMacAddress = null) const;
+
+ /**
+ * Gets the list of connected peer device info.
+ */
+ Tizen::Base::Collection::IList* GetConnectedPeerDeviceInfoListN(WifiDirectGroupMemberType currentMemberType) const;
private:
- static _WifiDirectSystemAdapter* __pWifiDirectSystemAdapter;
- std::unique_ptr<_WifiDirectEvent,_WifiDirectEventDeleter> __pWifiDirectEvent;
-
- Tizen::Base::String __remoteMacAddress;
- Tizen::Base::String __remoteDeviceName;
- Tizen::Base::Collection::IList* __pScanResult;
- _WifiDirectSystemState __currentState;
- _WifiDirectSystemScanState __currentScanState;
- Tizen::Base::Collection::ArrayList __connectedPeerList;
- Tizen::Base::Collection::ArrayList __discoveredPeerList;
- _WifiIpcProxy* __pWifiServiceProxy;
- friend class std::default_delete<_WifiDirectSystemAdapter>;
+ static _WifiDirectSystemAdapter* __pWifiDirectSystemAdapter;
+ std::unique_ptr< _WifiDirectEvent, _WifiDirectEventDeleter > __pWifiDirectEvent;
+
+ Tizen::Base::String __remoteMacAddress;
+ Tizen::Base::String __remoteDeviceName;
+ Tizen::Base::Collection::IList* __pScanResult;
+ _WifiDirectSystemState __currentState;
+ _WifiDirectSystemScanState __currentScanState;
+ Tizen::Base::Collection::ArrayList __connectedPeerList;
+ Tizen::Base::Collection::ArrayList __discoveredPeerList;
+ _WifiIpcProxy* __pWifiServiceProxy;
+ friend class std::default_delete< _WifiDirectSystemAdapter >;
};
} } } // Tizen::Net::Wifi
using namespace Tizen::Base::Collection;
using namespace Tizen::Base::Utility;
-namespace Tizen { namespace Net { namespace Wifi {
+namespace Tizen { namespace Net { namespace Wifi
+{
_WIFIDIRECT_MESSAGE_TYPE
_WifiDirectUtility::GetMessageType(String message)
{
- result r = E_SUCCESS;
+ result r = E_SUCCESS;
- int messageType = 0;
+ int messageType = 0;
- String type;
+ String type;
- r = message.SubString(0, MESSAGE_TYPE_LENGTH, type);
+ r = message.SubString(0, MESSAGE_TYPE_LENGTH, type);
- if (IsFailed(r))
- {
- type.Clear();
- return UNKNOWN;
- }
+ if (IsFailed(r))
+ {
+ type.Clear();
+ return UNKNOWN;
+ }
- type.Trim();
+ type.Trim();
- r = Integer::Decode(type, messageType);
+ r = Integer::Decode(type, messageType);
- if (IsFailed(r))
- {
- return UNKNOWN;
- }
- else
- {
- return static_cast< _WIFIDIRECT_MESSAGE_TYPE >(messageType);
- }
+ if (IsFailed(r))
+ {
+ return UNKNOWN;
+ }
+ else
+ {
+ return static_cast< _WIFIDIRECT_MESSAGE_TYPE >(messageType);
+ }
}
bool
_WifiDirectUtility::CheckMacFormat(wchar_t* pMacAddress)
{
- int temp = 0;
-
- while (*pMacAddress)
- {
- if ((*pMacAddress >= '0') && (*pMacAddress < '9'+1))
- {
- temp = *pMacAddress - '0';
- }
- else if ((*pMacAddress >= 'A') && (*pMacAddress < 'G'))
- {
- temp = *pMacAddress - 'A' + 10;
- }
- else if ((*pMacAddress >= 'a') && (*pMacAddress < 'g'))
- {
- temp = *pMacAddress - 'a' + 10;
- }
- else
- {
- return false;
- }
-
- pMacAddress++;
- }
-
- return true;
+ int temp = 0;
+
+ while (*pMacAddress)
+ {
+ if ((*pMacAddress >= '0') && (*pMacAddress <= '9'))
+ {
+ temp = *pMacAddress - '0';
+ }
+ else if ((*pMacAddress >= 'A') && (*pMacAddress <= 'F'))
+ {
+ temp = *pMacAddress - 'A' + 10;
+ }
+ else if ((*pMacAddress >= 'a') && (*pMacAddress <= 'f'))
+ {
+ temp = *pMacAddress - 'a' + 10;
+ }
+ else
+ {
+ return false;
+ }
+
+ pMacAddress++;
+ }
+
+ return true;
}
bool
_WifiDirectUtility::CheckMacAddress(Tizen::Base::String macAddress)
{
- String tempString("");
-
- bool ret = true;
-
- const int lastDelimiterIndex = 5;
- int currentIndex = 0;
- int nextIndex = 0;
- int count = 0;
- int checkIndex = 2;
-
-
- macAddress.Trim();
-
- if (MAX_MAC_ADDRESS_LENGTH != macAddress.GetLength())
- {
- return false;
- }
-
- while (E_SUCCESS == macAddress.IndexOf("-", currentIndex, nextIndex))
- {
- if (nextIndex != checkIndex)
- {
- ret = false;
- break;
- }
-
- macAddress.SubString(currentIndex, 2, tempString);
- ret = _WifiDirectUtility::CheckMacFormat(const_cast<wchar_t*>(tempString.GetPointer()));
-
- if (ret == false)
- {
- break;
- }
-
- checkIndex += 3;
- currentIndex = nextIndex + 1;
- count++;
- };
-
- if (count == lastDelimiterIndex
- && E_SUCCESS == macAddress.SubString(currentIndex, 2, tempString))
- {
- ret = _WifiDirectUtility::CheckMacFormat(const_cast<wchar_t*>(tempString.GetPointer()));
- }
- else
- {
- ret = false;
- }
-
- return ret;
-}
-
-result
-_WifiDirectUtility::ConvertErrorCode(int err)
-{
- result r = E_SUCCESS;
- String message;
- static const int MAX_LOG_LENGTH = 256;
-
- switch (err)
- {
- case WIFI_DIRECT_ERROR_NONE:
- message.Format(MAX_LOG_LENGTH, L"[%s] Error None", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_CONNECTION_FAILED:
- r = E_NOT_RESPONDING;
- message.Format(MAX_LOG_LENGTH, L"[%s] Connection failed", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_OUT_OF_MEMORY:
- r = E_OUT_OF_MEMORY;
- message.Format(MAX_LOG_LENGTH, L"[%s] Out of memory", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_COMMUNICATION_FAILED:
- r = E_SYSTEM;
- message.Format(MAX_LOG_LENGTH, L"[%s] I/O error", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_NOT_PERMITTED:
- r = E_INVALID_OPERATION;
- message.Format(MAX_LOG_LENGTH, L"[%s] Operation not permitted", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_INVALID_PARAMETER:
- r = E_INVALID_ARG;
- message.Format(MAX_LOG_LENGTH, L"[%s] Invalid function parameter", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_TOO_MANY_CLIENT:
- r = E_INVALID_ARG;
- message.Format(MAX_LOG_LENGTH, L"[%s] Too many users", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_RESOURCE_BUSY:
- r = E_SYSTEM;
- message.Format(MAX_LOG_LENGTH, L"[%s] Device or resource busy", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_CONNECTION_TIME_OUT:
- r = E_REMOTE_DEVICE_NOT_FOUND;
- message.Format(MAX_LOG_LENGTH, L"[%s] Connection timed out", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_OPERATION_FAILED:
- r = E_SYSTEM;
- message.Format(MAX_LOG_LENGTH, L"[%s] Operation failed", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_WIFI_USED:
- r = E_SYSTEM;
- message.Format(MAX_LOG_LENGTH, L"[%s] Wifi is ON", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_MOBILE_AP_USED:
- r = E_SYSTEM;
- message.Format(MAX_LOG_LENGTH, L"[%s] Mobile AP is ON", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_AUTH_FAILED:
- r = E_AUTHENTICATION;
- message.Format(MAX_LOG_LENGTH, L"[%s] Authentication failed", GetErrorMessage(r));
- break;
- case WIFI_DIRECT_ERROR_NOT_INITIALIZED:
- r = E_SYSTEM;
- message.Format(MAX_LOG_LENGTH, L"[%s] Not initialized", GetErrorMessage(r));
- break;
- default:
- r = E_SYSTEM;
- message.Format(MAX_LOG_LENGTH, L"[%s] Unknown Error", GetErrorMessage(r));
- break;
- }
-
- SysLog(NID_NET_WIFI, "[ErrorCode : %d] %ls", err, message.GetPointer());
-
- return r;
+ String tempString;
+
+ bool ret = true;
+
+ const int lastDelimiterIndex = 5;
+ int currentIndex = 0;
+ int nextIndex = 0;
+ int count = 0;
+ int checkIndex = 2;
+
+
+ macAddress.Trim();
+
+ if (MAX_MAC_ADDRESS_LENGTH != macAddress.GetLength())
+ {
+ return false;
+ }
+
+ while (E_SUCCESS == macAddress.IndexOf("-", currentIndex, nextIndex))
+ {
+ if (nextIndex != checkIndex)
+ {
+ ret = false;
+ break;
+ }
+
+ macAddress.SubString(currentIndex, 2, tempString);
+ ret = _WifiDirectUtility::CheckMacFormat(const_cast< wchar_t* >(tempString.GetPointer()));
+
+ if (ret == false)
+ {
+ break;
+ }
+
+ checkIndex += 3;
+ currentIndex = nextIndex + 1;
+ count++;
+ }
+ ;
+
+ if (count == lastDelimiterIndex
+ && E_SUCCESS == macAddress.SubString(currentIndex, 2, tempString))
+ {
+ ret = _WifiDirectUtility::CheckMacFormat(const_cast< wchar_t* >(tempString.GetPointer()));
+ }
+ else
+ {
+ ret = false;
+ }
+
+ return ret;
}
WifiRadioChannel
_WifiDirectUtility::ConvertChannel(int channel)
{
- WifiRadioChannel radioChannel = WIFI_RADIO_CHANNEL_UNKNOWN;
-
- switch (channel)
- {
- case 1:
- radioChannel = WIFI_RADIO_CHANNEL_1;
- break;
- case 2:
- radioChannel = WIFI_RADIO_CHANNEL_2;
- break;
- case 3:
- radioChannel = WIFI_RADIO_CHANNEL_3;
- break;
- case 4:
- radioChannel = WIFI_RADIO_CHANNEL_4;
- break;
- case 5:
- radioChannel = WIFI_RADIO_CHANNEL_5;
- break;
- case 6:
- radioChannel = WIFI_RADIO_CHANNEL_6;
- break;
- case 7:
- radioChannel = WIFI_RADIO_CHANNEL_7;
- break;
- case 8:
- radioChannel = WIFI_RADIO_CHANNEL_8;
- break;
- case 9:
- radioChannel = WIFI_RADIO_CHANNEL_9;
- break;
- case 10:
- radioChannel = WIFI_RADIO_CHANNEL_10;
- break;
- case 11:
- radioChannel = WIFI_RADIO_CHANNEL_11;
- break;
- case 12:
- radioChannel = WIFI_RADIO_CHANNEL_12;
- break;
- case 13:
- radioChannel = WIFI_RADIO_CHANNEL_13;
- break;
- case 14:
- radioChannel = WIFI_RADIO_CHANNEL_14;
- break;
- default:
- break;
- }
- SysLog(NID_NET_WIFI, "channel value : %d", channel);
-
- return radioChannel;
+ WifiRadioChannel radioChannel = WIFI_RADIO_CHANNEL_UNKNOWN;
+
+ switch (channel)
+ {
+ case 1:
+ radioChannel = WIFI_RADIO_CHANNEL_1;
+ break;
+
+ case 2:
+ radioChannel = WIFI_RADIO_CHANNEL_2;
+ break;
+
+ case 3:
+ radioChannel = WIFI_RADIO_CHANNEL_3;
+ break;
+
+ case 4:
+ radioChannel = WIFI_RADIO_CHANNEL_4;
+ break;
+
+ case 5:
+ radioChannel = WIFI_RADIO_CHANNEL_5;
+ break;
+
+ case 6:
+ radioChannel = WIFI_RADIO_CHANNEL_6;
+ break;
+
+ case 7:
+ radioChannel = WIFI_RADIO_CHANNEL_7;
+ break;
+
+ case 8:
+ radioChannel = WIFI_RADIO_CHANNEL_8;
+ break;
+
+ case 9:
+ radioChannel = WIFI_RADIO_CHANNEL_9;
+ break;
+
+ case 10:
+ radioChannel = WIFI_RADIO_CHANNEL_10;
+ break;
+
+ case 11:
+ radioChannel = WIFI_RADIO_CHANNEL_11;
+ break;
+
+ case 12:
+ radioChannel = WIFI_RADIO_CHANNEL_12;
+ break;
+
+ case 13:
+ radioChannel = WIFI_RADIO_CHANNEL_13;
+ break;
+
+ case 14:
+ radioChannel = WIFI_RADIO_CHANNEL_14;
+ break;
+
+ default:
+ break;
+ }
+
+ return radioChannel;
}
Tizen::Base::String
_WifiDirectUtility::ConvertMacCharToString(const char macAddress[])
{
- result r = E_SUCCESS;
- String mac;
- mac.Append(macAddress);
+ result r = E_SUCCESS;
+ String mac;
+ mac.Append(macAddress);
- int curIndex = 0;
- int findIndex = 0;
+ int curIndex = 0;
+ int findIndex = 0;
- while(E_OBJ_NOT_FOUND != mac.IndexOf(":", curIndex, findIndex))
- {
- r = mac.SetCharAt('-',findIndex);
+ while (E_OBJ_NOT_FOUND != mac.IndexOf(":", curIndex, findIndex))
+ {
+ r = mac.SetCharAt('-', findIndex);
- if (IsFailed(r))
- {
- mac.Clear();
- return mac;
- }
+ if (IsFailed(r))
+ {
+ mac.Clear();
+ return mac;
+ }
- curIndex = ++findIndex;
- }
+ curIndex = ++findIndex;
+ }
- return mac;
+ return mac;
}
char*
_WifiDirectUtility::ConvertMacStringToCharN(const Tizen::Base::String macAddress)
{
- result r = E_SUCCESS;
- char* pMacAddress = null;
- String mac = macAddress;;
+ result r = E_SUCCESS;
+ char* pMacAddress = null;
+ String mac = macAddress;
+ ;
- int curIndex = 0;
- int findIndex = 0;
+ int curIndex = 0;
+ int findIndex = 0;
- while(E_OBJ_NOT_FOUND != mac.IndexOf("-", curIndex, findIndex))
- {
- r = mac.SetCharAt(':',findIndex);
+ while (E_OBJ_NOT_FOUND != mac.IndexOf("-", curIndex, findIndex))
+ {
+ r = mac.SetCharAt(':', findIndex);
- if (IsFailed(r))
- {
- mac.Clear();
- break;
- }
+ if (IsFailed(r))
+ {
+ mac.Clear();
+ break;
+ }
- curIndex = ++findIndex;
- }
+ curIndex = ++findIndex;
+ }
- pMacAddress = _StringConverter::CopyToCharArrayN(mac);
- SysTryReturn(NID_NET_WIFI, pMacAddress != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ pMacAddress = _StringConverter::CopyToCharArrayN(mac);
+ SysTryReturn(NID_NET_WIFI, pMacAddress != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- return pMacAddress;
+ return pMacAddress;
}
WifiDirectDeviceTypeCategory
_WifiDirectUtility::ConvertDeviceTypeCategory(wifi_direct_primary_device_type_e primary_dev_type)
{
- if (primary_dev_type >= WIFI_DIRECT_PRIMARY_DEVICE_TYPE_COMPUTER
- && primary_dev_type <=WIFI_DIRECT_PRIMARY_DEVICE_TYPE_AUDIO)
- {
- return (WifiDirectDeviceTypeCategory)(primary_dev_type-1);
- }
- else
- {
- return WIFI_DIRECT_DEVICE_TYPE_CATEGORY_OTHERS;
- }
+ if (primary_dev_type >= WIFI_DIRECT_PRIMARY_DEVICE_TYPE_COMPUTER
+ && primary_dev_type <= WIFI_DIRECT_PRIMARY_DEVICE_TYPE_AUDIO)
+ {
+ return (WifiDirectDeviceTypeCategory) (primary_dev_type - 1);
+ }
+ else
+ {
+ return WIFI_DIRECT_DEVICE_TYPE_CATEGORY_OTHERS;
+ }
}
WifiWpsConfigurationMode
_WifiDirectUtility::ConvertSupportedWpsMode(wifi_direct_wps_type_e wpsType)
{
- WifiWpsConfigurationMode wpsMode = WIFI_WPS_CONFIG_MODE_NONE;
-
- if(wpsType == WIFI_DIRECT_WPS_TYPE_PBC)
- {
- wpsMode = WIFI_WPS_CONFIG_MODE_PBC;
- }
-
- else if(wpsType == WIFI_DIRECT_WPS_TYPE_PIN_DISPLAY)
- {
- wpsMode = WIFI_WPS_CONFIG_MODE_PIN_DISPLAY;
- }
-
- else if(wpsType == WIFI_DIRECT_WPS_TYPE_PIN_KEYPAD)
- {
- wpsMode = WIFI_WPS_CONFIG_MODE_PIN_KEYPAD;
- }
-
- return wpsMode;
+ WifiWpsConfigurationMode wpsMode = WIFI_WPS_CONFIG_MODE_NONE;
+
+ if (wpsType == WIFI_DIRECT_WPS_TYPE_PBC)
+ {
+ wpsMode = WIFI_WPS_CONFIG_MODE_PBC;
+ }
+ else if (wpsType == WIFI_DIRECT_WPS_TYPE_PIN_DISPLAY)
+ {
+ wpsMode = WIFI_WPS_CONFIG_MODE_PIN_DISPLAY;
+ }
+ else if (wpsType == WIFI_DIRECT_WPS_TYPE_PIN_KEYPAD)
+ {
+ wpsMode = WIFI_WPS_CONFIG_MODE_PIN_KEYPAD;
+ }
+
+ return wpsMode;
}
WifiDirectDeviceInfo*
_WifiDirectUtility::ConvertPeerInfoToDeviceInfoN(WifiDirectGroupMemberType memberType,
- const wifi_direct_connected_peer_info_s &peerInfo)
+ const wifi_direct_connected_peer_info_s& peerInfo)
{
- unique_ptr<WifiDirectDeviceInfo> pDeviceInfo(new (std::nothrow) WifiDirectDeviceInfo());
- SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+ unique_ptr< WifiDirectDeviceInfo > pDeviceInfo(new (std::nothrow) WifiDirectDeviceInfo());
+ SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
- _WifiDirectDeviceInfoImpl* pDeviceInfoImpl = _WifiDirectDeviceInfoImpl::GetInstance(*pDeviceInfo);
- SysTryReturn(NID_NET_WIFI, pDeviceInfoImpl != null, null, E_SYSTEM,
- "[E_SYSTEM] Failed to acquire the instance of _WifiDirectDeviceInfoImpl.");
+ _WifiDirectDeviceInfoImpl* pDeviceInfoImpl = _WifiDirectDeviceInfoImpl::GetInstance(*pDeviceInfo);
+ SysTryReturn(NID_NET_WIFI, pDeviceInfoImpl != null, null, E_SYSTEM,
+ "[E_SYSTEM] Failed to acquire the instance of _WifiDirectDeviceInfoImpl.");
- // DeviceId
- pDeviceInfoImpl->SetDeviceId(DEFAULT_DEVICE_ID);
+ // DeviceId
+ pDeviceInfoImpl->SetDeviceId(DEFAULT_DEVICE_ID);
- // DeviceName
- pDeviceInfoImpl->SetDeviceName(String(peerInfo.device_name));
+ // DeviceName
+ pDeviceInfoImpl->SetDeviceName(String(peerInfo.device_name));
- // DeviceStatus
- pDeviceInfoImpl->SetDeviceStatus(WIFI_DIRECT_DEVICE_ACTIVATED);
+ // DeviceStatus
+ pDeviceInfoImpl->SetDeviceStatus(WIFI_DIRECT_DEVICE_ACTIVATED);
- // DeviceTypeCategory
- pDeviceInfoImpl->SetDeviceTypeCategory(_WifiDirectUtility::ConvertDeviceTypeCategory(
- static_cast< wifi_direct_primary_device_type_e >(peerInfo.primary_device_type)));
+ // DeviceTypeCategory
+ wifi_direct_primary_device_type_e primaryDeviceType = static_cast< wifi_direct_primary_device_type_e >(peerInfo.primary_device_type);
+ pDeviceInfoImpl->SetDeviceTypeCategory(_WifiDirectUtility::ConvertDeviceTypeCategory(primaryDeviceType));
- // GroupMemberType
- pDeviceInfoImpl->SetGroupMemberType(memberType);
+ // GroupMemberType
+ pDeviceInfoImpl->SetGroupMemberType(memberType);
- // IpAddress
- pDeviceInfoImpl->SetIpAddress(String(peerInfo.ip_address));
+ // IpAddress
+ pDeviceInfoImpl->SetIpAddress(String(peerInfo.ip_address));
- // MacAddress
- pDeviceInfoImpl->SetMacAddress(_WifiDirectUtility::ConvertMacCharToString(peerInfo.mac_address));
- pDeviceInfoImpl->SetVirtualMacAddress(_WifiDirectUtility::ConvertMacCharToString(peerInfo.interface_address));
+ // MacAddress
+ pDeviceInfoImpl->SetMacAddress(_WifiDirectUtility::ConvertMacCharToString(peerInfo.mac_address));
+ pDeviceInfoImpl->SetVirtualMacAddress(_WifiDirectUtility::ConvertMacCharToString(peerInfo.interface_address));
- // SupportedWpsConfigurationModeList(Not Required)
- _WifiDirectDeviceInfoImpl::PrintDeviceInfo(*pDeviceInfoImpl);
+ // SupportedWpsConfigurationModeList(Not Required)
- return pDeviceInfo.release();
+ return pDeviceInfo.release();
}
WifiDirectDeviceInfo*
_WifiDirectUtility::ConvertDiscoveryEntry2DeviceInfoN(const wifi_direct_discovered_peer_info_s& peerInfo)
{
- unique_ptr<WifiDirectDeviceInfo> pDeviceInfo(new (std::nothrow) WifiDirectDeviceInfo());
- SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
-
- _WifiDirectDeviceInfoImpl* pDeviceInfoImpl = _WifiDirectDeviceInfoImpl::GetInstance(*pDeviceInfo);
- SysTryReturn(NID_NET_WIFI, pDeviceInfoImpl != null, null, E_SYSTEM,
- "[E_SYSTEM] Failed to acquire the instance of _WifiDirectDeviceInfoImpl.");
-
- // DeviceId
- pDeviceInfoImpl->SetDeviceId(DEFAULT_DEVICE_ID);
-
- // DeviceName
- pDeviceInfoImpl->SetDeviceName(String(peerInfo.device_name));
- //pDeviceInfoImpl->SetDeviceName(String(peerInfo.ssid));
-
- // DeviceStatus
- pDeviceInfoImpl->SetDeviceStatus(WIFI_DIRECT_DEVICE_ACTIVATED);
-
- // DeviceTypeCategory
- pDeviceInfoImpl->SetDeviceTypeCategory(_WifiDirectUtility::ConvertDeviceTypeCategory(
- static_cast< wifi_direct_primary_device_type_e >(peerInfo.primary_device_type)));
-
- // GroupMemberType
- if (peerInfo.is_group_owner == true)
- {
- pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER);
- }
- else
- {
- pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE);
- }
-
- // IpAddress(Not Required)
-
- // MacAddress
- pDeviceInfoImpl->SetMacAddress(_WifiDirectUtility::ConvertMacCharToString(peerInfo.mac_address));
- pDeviceInfoImpl->SetVirtualMacAddress(_WifiDirectUtility::ConvertMacCharToString(peerInfo.interface_address));
-
- // SupportedWpsConfigurationModeList
- ArrayListT<WifiWpsConfigurationMode> wpsList;
- wpsList.Construct();
- WifiWpsConfigurationMode wpsMode;
-
- if (peerInfo.supported_wps_types == WIFI_DIRECT_WPS_TYPE_PBC)
- {
- wpsMode = _WifiDirectUtility::ConvertSupportedWpsMode((wifi_direct_wps_type_e)peerInfo.supported_wps_types);
- wpsList.Add(wpsMode);
- }
-
- if (peerInfo.supported_wps_types == WIFI_DIRECT_WPS_TYPE_PIN_DISPLAY)
- {
- wpsMode = _WifiDirectUtility::ConvertSupportedWpsMode((wifi_direct_wps_type_e)peerInfo.supported_wps_types);
- wpsList.Add(wpsMode);
- }
-
- if (peerInfo.supported_wps_types == WIFI_DIRECT_WPS_TYPE_PIN_KEYPAD)
- {
- wpsMode = _WifiDirectUtility::ConvertSupportedWpsMode((wifi_direct_wps_type_e)peerInfo.supported_wps_types);
- wpsList.Add(wpsMode);
- }
- pDeviceInfoImpl->SetSupportedWpsConfigurationMode(wpsList);
-
- _WifiDirectDeviceInfoImpl::PrintDeviceInfo(*pDeviceInfoImpl);
-
- return pDeviceInfo.release();
+ unique_ptr< WifiDirectDeviceInfo > pDeviceInfo(new (std::nothrow) WifiDirectDeviceInfo());
+ SysTryReturn(NID_NET_WIFI, pDeviceInfo != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+
+ _WifiDirectDeviceInfoImpl* pDeviceInfoImpl = _WifiDirectDeviceInfoImpl::GetInstance(*pDeviceInfo);
+ SysTryReturn(NID_NET_WIFI, pDeviceInfoImpl != null, null, E_SYSTEM,
+ "[E_SYSTEM] Failed to acquire the instance of _WifiDirectDeviceInfoImpl.");
+
+ // DeviceId
+ pDeviceInfoImpl->SetDeviceId(DEFAULT_DEVICE_ID);
+
+ // DeviceName
+ pDeviceInfoImpl->SetDeviceName(String(peerInfo.device_name));
+ //pDeviceInfoImpl->SetDeviceName(String(peerInfo.ssid));
+
+ // DeviceStatus
+ pDeviceInfoImpl->SetDeviceStatus(WIFI_DIRECT_DEVICE_ACTIVATED);
+
+ // DeviceTypeCategory
+ pDeviceInfoImpl->SetDeviceTypeCategory(_WifiDirectUtility::ConvertDeviceTypeCategory(
+ static_cast< wifi_direct_primary_device_type_e >(peerInfo.primary_device_type)));
+
+ // GroupMemberType
+ if (peerInfo.is_group_owner == true)
+ {
+ pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_OWNER);
+ }
+ else
+ {
+ if (peerInfo.is_connected == true)
+ {
+ pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_CLIENT);
+ }
+ else
+ {
+ pDeviceInfoImpl->SetGroupMemberType(WIFI_DIRECT_GROUP_MEMBER_TYPE_NONE);
+ }
+
+ }
+
+ // IpAddress(Not Required)
+
+ // MacAddress
+ pDeviceInfoImpl->SetMacAddress(_WifiDirectUtility::ConvertMacCharToString(peerInfo.mac_address));
+ pDeviceInfoImpl->SetVirtualMacAddress(_WifiDirectUtility::ConvertMacCharToString(peerInfo.interface_address));
+
+ // SupportedWpsConfigurationModeList
+ ArrayListT< WifiWpsConfigurationMode > wpsList;
+ wpsList.Construct();
+
+ if (peerInfo.supported_wps_types & WIFI_DIRECT_WPS_TYPE_PBC)
+ {
+ wpsList.Add(WIFI_WPS_CONFIG_MODE_PBC);
+ }
+
+ if (peerInfo.supported_wps_types & WIFI_DIRECT_WPS_TYPE_PIN_DISPLAY)
+ {
+ wpsList.Add(WIFI_WPS_CONFIG_MODE_PIN_DISPLAY);
+ }
+
+ if (peerInfo.supported_wps_types & WIFI_DIRECT_WPS_TYPE_PIN_KEYPAD)
+ {
+ wpsList.Add(WIFI_WPS_CONFIG_MODE_PIN_KEYPAD);
+ }
+ pDeviceInfoImpl->SetSupportedWpsConfigurationMode(wpsList);
+
+ return pDeviceInfo.release();
}
} } } //Tizen::Net::Wifi
-
/**
* @file FNetWifi_WifiManagerEvent.cpp
* @brief This is the implementation file for the _WifiManagerEvent Class
- * @version 1.0
*
* This file contains the implementation of the _WifiManagerEvent Class.
*/
/**
* @file FNetWifi_WifiManagerEventArg.cpp
* @brief This is the implementation file for the _WifiManagerEventArg Class
- * @version 1.0
*
* This file contains the implementation of the _WifiManagerEventArg Class.
*/
using namespace Tizen::Base;
using namespace Tizen::Base::Collection;
-namespace Tizen { namespace Net { namespace Wifi {
+namespace Tizen { namespace Net { namespace Wifi
+{
// This is the class constructor for WIFI_EVENT_ACTIVATED and WIFI_EVENT_DEACTIVATED.
_WifiManagerEventArg::_WifiManagerEventArg(_WifiManagerEventType eventType, result r)
- : __eventType(eventType)
- , __error(r)
- , __rssi(-1)
- , __ssid()
- , __pBssInfoList(null)
+ : __eventType(eventType)
+ , __error(r)
+ , __rssi(-1)
+ , __ssid()
+ , __pBssInfoList(null)
, __connState(WIFI_CONN_STATE_NOT_CONNECTED)
{
}
// This is the class constructor for WIFI_EVENT_RSSI_CHANGED.
_WifiManagerEventArg::_WifiManagerEventArg(_WifiManagerEventType eventType, long rssi)
- : __eventType(eventType)
- , __error(E_SUCCESS)
- , __rssi(rssi)
- , __ssid()
- , __pBssInfoList(null)
+ : __eventType(eventType)
+ , __error(E_SUCCESS)
+ , __rssi(rssi)
+ , __ssid()
+ , __pBssInfoList(null)
, __connState(WIFI_CONN_STATE_NOT_CONNECTED)
{
}
// This is the class constructor for WIFI_EVENT_SCAN_COMPLETED.
_WifiManagerEventArg::_WifiManagerEventArg(_WifiManagerEventType eventType, IList* pBssInfoList, result r)
- : __eventType(eventType)
- , __error(r)
- , __rssi(-1)
- , __ssid()
- , __pBssInfoList(pBssInfoList)
+ : __eventType(eventType)
+ , __error(r)
+ , __rssi(-1)
+ , __ssid()
+ , __pBssInfoList(pBssInfoList)
, __connState(WIFI_CONN_STATE_NOT_CONNECTED)
{
}
if (__pBssInfoList != null)
{
__pBssInfoList->RemoveAll(true);
- delete __pBssInfoList;
+ delete __pBssInfoList;
}
}
_WifiManagerEventType
_WifiManagerEventArg::GetEventType(void) const
{
- return __eventType;
+ return __eventType;
}
result
_WifiManagerEventArg::GetError(void) const
{
- return __error;
+ return __error;
}
long
_WifiManagerEventArg::GetRssi(void) const
{
- return __rssi;
+ return __rssi;
}
Tizen::Base::String
_WifiManagerEventArg::GetSsid(void) const
{
- return __ssid;
+ return __ssid;
}
IList*
_WifiManagerEventArg::GetBssInfoList(void) const
{
- return __pBssInfoList;
+ return __pBssInfoList;
}
WifiConnectionState
}
} } } //Tizen::Net::Wifi
-
*/
enum _WifiManagerEventType
{
- _WIFI_EVENT_ACTIVATED, //< Event which notifies activation of the local Wi-Fi device
- _WIFI_EVENT_DEACTIVATED, //< Event which notifies deactivation of the local Wi-Fi device
- _WIFI_EVENT_CONNECTED, //< Event which notifies connection of the local Wi-Fi device
- _WIFI_EVENT_DISCONNECTED, //< Event which notifies disconnection of the local Wi-Fi device
- _WIFI_EVENT_RSSI_CHANGED, //< Event which notifies updated RSSI value of the local Wi-Fi device
- _WIFI_EVENT_SCAN_COMPLETED, //< Event which notifies end of scan
- _WIFI_EVENT_CONNECTION_CHNAGED, //< Event which notifies that the current connection state is changed
- _WIFI_EVENT_SCAN_UPDATED //< Event which notifies that the result of background scan is updated
+ _WIFI_EVENT_ACTIVATED, //< Event which notifies activation of the local Wi-Fi device
+ _WIFI_EVENT_DEACTIVATED, //< Event which notifies deactivation of the local Wi-Fi device
+ _WIFI_EVENT_CONNECTED, //< Event which notifies connection of the local Wi-Fi device
+ _WIFI_EVENT_DISCONNECTED, //< Event which notifies disconnection of the local Wi-Fi device
+ _WIFI_EVENT_RSSI_CHANGED, //< Event which notifies updated RSSI value of the local Wi-Fi device
+ _WIFI_EVENT_SCAN_COMPLETED, //< Event which notifies end of scan
+ _WIFI_EVENT_CONNECTION_CHNAGED, //< Event which notifies that the current connection state is changed
+ _WIFI_EVENT_SCAN_UPDATED //< Event which notifies that the result of background scan is updated
};
/**
* @class _WifiManagerEventArg
* @brief This class is used as an argument of methods of the IWifiManagerEventListener class.
*
- * @since 2.0
- *
* This class is used as an argument of IWifiManagerEventListener's methods.
* When a %WifiManager event occurs, the _WifiManagerEvent object finds a IWifiManagerEventListener object
* which is registered for the WifiManager object and calls an appropriate method of the listener.
* @see IWifiManagerEventListener for example codes
*/
-class _WifiManagerEventArg:
- public Tizen::Base::Runtime::IEventArg,
- public Tizen::Base::Object
+class _WifiManagerEventArg
+ : public Tizen::Base::Runtime::IEventArg
+ , public Tizen::Base::Object
{
public:
/**
*/
_WifiManagerEventArg(_WifiManagerEventType eventType, result r);
- /**
- * This is the class constructor for WIFI_EVENT_CONNECTED
- */
- _WifiManagerEventArg(_WifiManagerEventType eventType, Tizen::Base::String ssid, result r);
+ /**
+ * This is the class constructor for WIFI_EVENT_CONNECTED
+ */
+ _WifiManagerEventArg(_WifiManagerEventType eventType, Tizen::Base::String ssid, result r);
- /**
- * This is the class constructor for WIFI_EVENT_RSSI_CHANGED.
- */
- _WifiManagerEventArg(_WifiManagerEventType eventType, long rssi);
+ /**
+ * This is the class constructor for WIFI_EVENT_RSSI_CHANGED.
+ */
+ _WifiManagerEventArg(_WifiManagerEventType eventType, long rssi);
- /**
- * This is the class constructor for WIFI_EVENT_SCAN_COMPLETED.
- */
- _WifiManagerEventArg(_WifiManagerEventType eventType, Tizen::Base::Collection::IList* pBssInfoList, result r);
+ /**
+ * This is the class constructor for WIFI_EVENT_SCAN_COMPLETED.
+ */
+ _WifiManagerEventArg(_WifiManagerEventType eventType, Tizen::Base::Collection::IList* pBssInfoList, result r);
- /**
- * This is the class constructor for WIFI_EVENT_DISCONNECTED and WIFI_EVENT_SCAN_UPDATED.
- */
- _WifiManagerEventArg(_WifiManagerEventType eventType);
+ /**
+ * This is the class constructor for WIFI_EVENT_DISCONNECTED and WIFI_EVENT_SCAN_UPDATED.
+ */
+ _WifiManagerEventArg(_WifiManagerEventType eventType);
- /**
- * This is the class constructor for WIFI_EVENT_CONNECTION_CHNAGED.
- */
- _WifiManagerEventArg(_WifiManagerEventType eventType, WifiConnectionState state);
+ /**
+ * This is the class constructor for WIFI_EVENT_CONNECTION_CHNAGED.
+ */
+ _WifiManagerEventArg(_WifiManagerEventType eventType, WifiConnectionState state);
- /**
- * This destructor overrides Tizen::Base::Object::~Object().
- */
- virtual ~_WifiManagerEventArg(void);
+ /**
+ * This destructor overrides Tizen::Base::Object::~Object().
+ */
+ virtual ~_WifiManagerEventArg(void);
-public:
- /**
- * @brief Gets the event type.
- * @return WifiManagerEventType Event type of this argument.
- * @see WifiManagerEventType
- */
- _WifiManagerEventType GetEventType(void) const;
-
- /**
- * @brief Gets the error code.
- * @return WifiManagerError Error code of this argument.
- * @see WifiManagerError
- */
- result GetError(void) const;
-
- /**
- * @brief Gets the RSSI value.
- * @return long RSSI value of this argument.
- */
- long GetRssi(void) const;
-
- /**
- * @brief Gets the Ssid.
- * @return String SSID value of this argument.
- */
- Tizen::Base::String GetSsid(void) const;
-
- /**
- * @brief Gets the list of scanned BSS.
- * @return ArrayList Pointer to the ArrayList object which contains information of scanned BSS.
- */
- Tizen::Base::Collection::IList* GetBssInfoList(void) const;
-
- /**
- * @brief Gets the connection states of the local device.
- */
- WifiConnectionState GetConnectionState(void) const;
+ /**
+ * Gets the event type.
+ * @return event type of this argument.
+ */
+ _WifiManagerEventType GetEventType(void) const;
+
+ /**
+ * Gets the error code.
+ * @return error code of this argument.
+ */
+ result GetError(void) const;
+
+ /**
+ * Gets the RSSI value.
+ * @return RSSI value of this argument.
+ */
+ long GetRssi(void) const;
+
+ /**
+ * Gets the SSID.
+ * @return SSID value of this argument.
+ */
+ Tizen::Base::String GetSsid(void) const;
+
+ /**
+ * Gets the list of scanned BSS.
+ * @return Pointer to the ArrayList object which contains information of scanned BSS.
+ */
+ Tizen::Base::Collection::IList* GetBssInfoList(void) const;
+
+ /**
+ * Gets the connection states of the local device.
+ */
+ WifiConnectionState GetConnectionState(void) const;
private:
- /**
- * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
- *
- * @param[in] rhs An instance of %_WifiManagerEventArg
- */
- _WifiManagerEventArg(const _WifiManagerEventArg& rhs);
-
- /**
- * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
- *
- * @param[in] rhs An instance of %_WifiManagerEventArg
- */
- _WifiManagerEventArg& operator =(const _WifiManagerEventArg& rhs);
+ /**
+ * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
+ *
+ * @param[in] rhs An instance of %_WifiManagerEventArg
+ */
+ _WifiManagerEventArg(const _WifiManagerEventArg& rhs);
+
+ /**
+ * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
+ *
+ * @param[in] rhs An instance of %_WifiManagerEventArg
+ */
+ _WifiManagerEventArg& operator =(const _WifiManagerEventArg& rhs);
private:
- _WifiManagerEventType __eventType;
- result __error;
- long __rssi;
- Tizen::Base::String __ssid;
- Tizen::Base::Collection::IList* __pBssInfoList;
- WifiConnectionState __connState;
+ _WifiManagerEventType __eventType;
+ result __error;
+ long __rssi;
+ Tizen::Base::String __ssid;
+ Tizen::Base::Collection::IList* __pBssInfoList;
+ WifiConnectionState __connState;
}; // _WifiManagerEventArg
} } } // Tizen::Net::Wifi
#endif // _FNET_WIFI_INTERNAL_WIFI_MANAGER_EVENT_ARG_H_
-
/**
* @file FNetWifi_WifiManagerImpl.cpp
* @brief This is the implementation file for the _WifiManagerImpl Class.
- * @version 1.0
*
* This file contains the implementation of the _WifiManagerImpl Class.
*/
/**
* @file FNetWifi_WifiNetAccountInfoImpl.cpp
* @brief This is the implementation file for the _WifiNetAccountInfoImpl
- * @version 1.0
*
* This file contains the implementation of the _WifiNetAccountInfoImpl Class.
*/
using namespace Tizen::Base;
-namespace Tizen { namespace Net { namespace Wifi {
+namespace Tizen { namespace Net { namespace Wifi
+{
_WifiNetAccountInfoImpl::_WifiNetAccountInfoImpl(void)
- :__bssType(WIFI_BSS_TYPE_INFRASTRUCTURE)
- ,__ssid("")
- ,__bssid("")
- ,__channel(WIFI_RADIO_CHANNEL_UNKNOWN)
+ : __bssType(WIFI_BSS_TYPE_INFRASTRUCTURE)
+ , __channel(WIFI_RADIO_CHANNEL_UNKNOWN)
{
}
-_WifiNetAccountInfoImpl::_WifiNetAccountInfoImpl(const _WifiNetAccountInfoImpl &value)
- :__bssType(value.__bssType)
- ,__ssid(value.__ssid)
- ,__securityInfo(value.__securityInfo)
- ,__bssid(value.__bssid)
- ,__channel(value.__channel)
+_WifiNetAccountInfoImpl::_WifiNetAccountInfoImpl(const _WifiNetAccountInfoImpl& value)
+ : __bssType(value.__bssType)
+ , __ssid(value.__ssid)
+ , __securityInfo(value.__securityInfo)
+ , __bssid(value.__bssid)
+ , __channel(value.__channel)
{
}
/**
* @file FNetWifi_WifiProximityManagerImpl.cpp
* @brief This is the implementation file for the _WifiProximityManagerImpl Class.
- * @version 3.0
*
* This file contains the implementation of the _WifiProximityManagerImpl Class.
*/
#include <unique_ptr.h>
#include <FBaseDataType.h>
#include <FBaseString.h>
+#include <FBaseStringComparer.h>
+#include <FBaseStringHashCodeProvider.h>
#include <FBaseSysLog.h>
#include <FBaseColIListT.h>
#include <FBaseColHashMapT.h>
using namespace Tizen::Base;
using namespace Tizen::Base::Collection;
-namespace Tizen { namespace Net { namespace Wifi {
-
-
-/*
- * @class _StringComparer
- * @brief The _StringComparer class provides the comparer about two specified String.
- */
-class _StringComparer
- : public Tizen::Base::Collection::IComparerT <Tizen::Base::String>
- , public Tizen::Base::Object
-{
-public:
- _StringComparer(void) {}
- virtual ~_StringComparer(void) {}
-
- virtual result Compare(const Tizen::Base::String& obj1, const Tizen::Base::String& obj2, int& cmp) const
- {
- cmp = obj1.CompareTo(obj2);
- return E_SUCCESS;
- }
-
-private:
- _StringComparer(const _StringComparer& value);
- _StringComparer& operator =(const _StringComparer& value);
-
-}; //_StringComparer
-
-/*
- * @class _StringHashCodeProvider
- * @brief The _StringHashCodeProvider class provides the hash code of a specified String.
- */
-class _StringHashCodeProvider
- : public Tizen::Base::Collection::IHashCodeProviderT <Tizen::Base::String>
+namespace Tizen { namespace Net { namespace Wifi
{
-public:
- _StringHashCodeProvider(void) {}
- virtual ~_StringHashCodeProvider(void) {}
- virtual int GetHashCode(const Tizen::Base::String& obj) const
- {
- return obj.GetHashCode();
- }
-
-private:
- _StringHashCodeProvider(const _StringHashCodeProvider& value);
- _StringHashCodeProvider& operator =(const _StringHashCodeProvider& value);
-}; //_StringHashCodeProvider
_WifiProximityManagerImpl* _WifiProximityManagerImpl::__pWifiProximityManagerImpl = null;
_WifiProximityManagerImpl::Construct(void)
{
result r = E_SUCCESS;
- unique_ptr< HashMapT<_IWifiProximityEventListener*, bool> > pTempMap;
- unique_ptr< MultiHashMapT<String, _IWifiProximityEventListener*> > pTempMultiMap;
- static _StringHashCodeProvider strHashCodeProvider;
- static _StringComparer strComparer;
+ unique_ptr< HashMapT< _IWifiProximityEventListener*, bool > > pTempMap;
+ unique_ptr< MultiHashMapT< String, _IWifiProximityEventListener* > > pTempMultiMap;
+ static StringHashCodeProvider strHashCodeProvider;
+ static ComparerT<String> strComparer;
pTempMap.reset(new (std::nothrow) HashMapT<_IWifiProximityEventListener*, bool>());
SysTryReturnResult(NID_NET_WIFI, pTempMap != null, E_OUT_OF_MEMORY, "Memory allocation failed.");
/**
* @file FNetWifi_WifiSecurityInfoImpl.cpp
* @brief This is the implementation file for the _WifiSecurityInfoImpl Class
- * @version 1.0
*
* This file contains the implementation of the _WifiSecurityInfoImpl Class.
*/
_WifiSystemAdapter::~_WifiSystemAdapter(void)
{
- int err = WIFI_ERROR_NONE;
-
- wifi_unset_connection_state_changed_cb();
- wifi_unset_device_state_changed_cb();
- wifi_unset_rssi_level_changed_cb();
- wifi_unset_background_scan_cb();
-
- err = wifi_deinitialize();
-
- if (err != WIFI_ERROR_NONE)
- {
- SysLogException(NID_NET_WIFI, E_SYSTEM, "[E_SYSTEM] Failed to de-initialize the wifi manager [0x%08X]", err);
- }
-
- pInstance = null;
}
result
void
_WifiSystemAdapter::DestroySingleton(void)
{
- delete pInstance;
+ wifi_unset_connection_state_changed_cb();
+ wifi_unset_device_state_changed_cb();
+ wifi_unset_rssi_level_changed_cb();
+ wifi_unset_background_scan_cb();
+ wifi_deinitialize();
}
_WifiSystemAdapter*
}
}
- if (pSecurityInfoImpl->GetAuthenticationType() == WIFI_AUTHENTICATION_WPA ||
- pSecurityInfoImpl->GetAuthenticationType() == WIFI_AUTHENTICATION_WPA2 )
- {
- wifi_eap_type_e eapType = _WifiUtility::ConvertEapType(pSecurityInfoImpl->GetEapType());
- err = wifi_ap_set_eap_type(ap, eapType);
- r = TransExceptionsExclusive(_WifiUtility::ConvertErrorCode(err), E_FAILURE, E_INVALID_ARG);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to set eap type.");
-
- wifi_eap_auth_type_e eapAuthType = _WifiUtility::ConvertEapAuthType(pSecurityInfoImpl->GetEapType());
- err = wifi_ap_set_eap_auth_type(ap, eapAuthType);
- r = TransExceptionsExclusive(_WifiUtility::ConvertErrorCode(err), E_FAILURE, E_INVALID_ARG);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to set eap authentication type.");
-
- err = wifi_ap_set_eap_passphrase(ap, pSecurityInfoImpl->GetEapUserId(), pSecurityInfoImpl->GetEapPassword());
- r = TransExceptionsExclusive(_WifiUtility::ConvertErrorCode(err), E_FAILURE, E_INVALID_ARG);
- SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to set eap authentication type.");
- }
+ if (pSecurityInfoImpl->GetAuthenticationType() == WIFI_AUTHENTICATION_WPA ||
+ pSecurityInfoImpl->GetAuthenticationType() == WIFI_AUTHENTICATION_WPA2)
+ {
+ wifi_eap_type_e eapType = _WifiUtility::ConvertEapType(pSecurityInfoImpl->GetEapType());
+ err = wifi_ap_set_eap_type(ap, eapType);
+ _WifiConvertErrorResult(err != WIFI_ERROR_NONE, r, E_FAILURE);
+ _WifiConvertErrorResult(err == WIFI_ERROR_INVALID_PARAMETER, r, E_INVALID_ARG);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to set eap type.");
+
+ wifi_eap_auth_type_e eapAuthType = _WifiUtility::ConvertEapAuthType(pSecurityInfoImpl->GetEapType());
+ err = wifi_ap_set_eap_auth_type(ap, eapAuthType);
+ _WifiConvertErrorResult(err != WIFI_ERROR_NONE, r, E_FAILURE);
+ _WifiConvertErrorResult(err == WIFI_ERROR_INVALID_PARAMETER, r, E_INVALID_ARG);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to set eap authentication type.");
+
+ err = wifi_ap_set_eap_passphrase(ap, pSecurityInfoImpl->GetEapUserId(), pSecurityInfoImpl->GetEapPassword());
+ _WifiConvertErrorResult(err != WIFI_ERROR_NONE, r, E_FAILURE);
+ _WifiConvertErrorResult(err == WIFI_ERROR_INVALID_PARAMETER, r, E_INVALID_ARG);
+ SysTryReturnResult(NID_NET_WIFI, r == E_SUCCESS, r, "Failed to set eap authentication type.");
+ }
- err = wifi_connect(ap, OnWifiConnected, NULL);
- _WifiConvertErrorResult(err != WIFI_ERROR_NONE, r, E_FAILURE);
- return E_SUCCESS;
+ err = wifi_connect(ap, OnWifiConnected, null);
+ _WifiConvertErrorResult(err != WIFI_ERROR_NONE, r, E_FAILURE);
+ return E_SUCCESS;
}
void
#include "FNetWifi_WifiSystemMonitoringEventArg.h"
-namespace Tizen { namespace Net { namespace Wifi {
+namespace Tizen { namespace Net { namespace Wifi
+{
_WifiSystemMonitoringEvent::_WifiSystemMonitoringEvent(void)
{
* When a Wi-Fi background system monitoring event occurs, the _WifiSystemMonitoringEvent object finds an
* IWifiSystemMonitoringEventListener object and calls an appropriate method of the listener.
*/
-class _WifiSystemMonitoringEvent:
- public Tizen::Base::Runtime::_Event
+class _WifiSystemMonitoringEvent
+ : public Tizen::Base::Runtime::_Event
{
public:
{
}
-result
-_WifiUtility::ConvertErrorCode(int error)
-{
- result r = E_SUCCESS;
-
- switch (error)
- {
- case WIFI_ERROR_NONE:
- r = E_SUCCESS;
- break;
- case WIFI_ERROR_INVALID_PARAMETER:
- r = E_INVALID_ARG;
- SysLogException(NID_NET_WIFI, E_SYSTEM, "[E_INVALID_ARG] Invalid parameter.");
- break;
- case WIFI_ERROR_OUT_OF_MEMORY:
- r = E_OUT_OF_MEMORY;
- SysLogException(NID_NET_WIFI, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Out of Memory Error.");
- break;
- case WIFI_ERROR_INVALID_OPERATION:
- r = E_INVALID_OPERATION;
- SysLogException(NID_NET_WIFI, E_INVALID_OPERATION, "[E_INVALID_OPERATION] Invalid Operation.");
- break;
- case WIFI_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED:
- r = E_UNSUPPORTED_FAMILY;
- SysLogException(NID_NET_WIFI, E_FAILURE, "[E_FAILURE] Address family not supported.");
- break;
- case WIFI_ERROR_OPERATION_FAILED:
- r = E_FAILURE;
- SysLogException(NID_NET_WIFI, E_FAILURE, "[E_FAILURE] Operation Failed.");
- break;
- case WIFI_ERROR_NO_CONNECTION:
- r = E_INVALID_CONNECTION;
- SysLogException(NID_NET_WIFI, E_INVALID_CONNECTION, "[E_INVALID_CONNECTION] There is no connected AP.");
- break;
- case WIFI_ERROR_NOW_IN_PROGRESS:
- r = E_IN_PROGRESS;
- SysLogException(NID_NET_WIFI, E_IN_PROGRESS, "[E_IN_PROGRESS] Now in progress.");
- break;
- case WIFI_ERROR_ALREADY_EXISTS:
- r = E_SYSTEM;
- SysLogException(NID_NET_WIFI, E_SYSTEM, "[E_SYSTEM] Already exists.");
- break;
- case WIFI_ERROR_OPERATION_ABORTED:
- r = E_SYSTEM;
- SysLogException(NID_NET_WIFI, E_SYSTEM, "[E_SYSTEM] Operation is aborted.");
- break;
- case WIFI_ERROR_DHCP_FAILED:
- r = E_DHCP;
- SysLogException(NID_NET_WIFI, E_DHCP, "[E_DHCP] DHCP failed.");
- break;
- case WIFI_ERROR_INVALID_KEY:
- r = E_AUTHENTICATION;
- SysLogException(NID_NET_WIFI, E_AUTHENTICATION, "[E_AUTHENTICATION] Invalid key.");
- break;
- case WIFI_ERROR_NO_REPLY:
- r = E_NOT_RESPONDING;
- SysLogException(NID_NET_WIFI, E_INVALID_CONNECTION, "[E_NOT_RESPONDING] No reply.");
- break;
- default:
- r = E_SYSTEM;
- SysLogException(NID_NET_WIFI, E_SYSTEM, "[E_SYSTEM] Other case.");
- break;
- }
-
- return r;
-}
-
WifiAuthenticationType
_WifiUtility::ConvertAuthType(wifi_security_type_e securityMode, wifi_encryption_type_e encryptionMode)
{
{
authenticationType = WIFI_AUTHENTICATION_WPA;
}
- else if (encryptionMode == WIFI_ENCRYPTION_TYPE_AES)
+ else if (encryptionMode == WIFI_ENCRYPTION_TYPE_AES
+ || encryptionMode == WIFI_ENCRYPTION_TYPE_TKIP_AES_MIXED)
{
authenticationType = WIFI_AUTHENTICATION_WPA2;
}
- break;
+ break;
}
case WIFI_SECURITY_TYPE_WPA_PSK:
{