X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=zigbee-daemon%2Fzigbee-lib%2Fsrc%2Fdrivers%2Fzblib_driver_zcl_group.c;h=8209366c3add200ba30652b0bacf1781172ff596;hb=bda426ee9e3507f01d4d1657885d537f456d8267;hp=9400a5896937784e8e92f8ee138422f9546ee6fe;hpb=38f7f415a5657e1a2f9ed835835cf68b367b8227;p=platform%2Fcore%2Fconnectivity%2Fzigbee-manager.git diff --git a/zigbee-daemon/zigbee-lib/src/drivers/zblib_driver_zcl_group.c b/zigbee-daemon/zigbee-lib/src/drivers/zblib_driver_zcl_group.c index 9400a58..8209366 100644 --- a/zigbee-daemon/zigbee-lib/src/drivers/zblib_driver_zcl_group.c +++ b/zigbee-daemon/zigbee-lib/src/drivers/zblib_driver_zcl_group.c @@ -18,6 +18,7 @@ #include #include +#include #include "zblib_driver_zcl_group.h" @@ -26,13 +27,57 @@ typedef struct { ZblibDriverZclGroupOps_t *ops; /**< Operations */ } ZblibDriverZclGroupPrivData_t; -static gboolean __zblib_driver_zcl_group_dispatcher(ZigBeeDriver *driver) +static gboolean __zblib_driver_zcl_group_dispatcher(ZigBeeDriver *driver, guint request_id) { + ZigBeeService *service = NULL; + guint request_type; + guint ops_id; + if (NULL == driver) { Z_LOGE("driver is NULL"); return FALSE; } + service = zblib_driver_ref_service(driver); + if (NULL == service) { + Z_LOGE("service is NULL"); + return FALSE; + } + + /* Fetch request_type using request_id */ + request_type = zblib_request_ref_request_type_by_request_id(service, request_id); + + /* Fetch ops ID */ + ops_id = zblib_request_get_ops_id(request_type); + switch (ops_id) { + case ZBLIB_ZCL_GROUP_OPS_ADD_GROUP: { + } + break; + + case ZBLIB_ZCL_GROUP_OPS_VIEW_GROUP: { + } + break; + + case ZBLIB_ZCL_GROUP_OPS_GET_GROUP_MEMBERSHIP: { + } + break; + + case ZBLIB_ZCL_GROUP_OPS_REMOVE_GROUP: { + } + break; + + case ZBLIB_ZCL_GROUP_OPS_REMOVE_ALL_GROUP: { + } + break; + + case ZBLIB_ZCL_GROUP_OPS_ADD_GROUP_IF_IDENTIFYING: { + } + break; + + default: + break; + } + return TRUE; }