From 8ad6253a979ee97ce6e814f84fa36cb5c8961772 Mon Sep 17 00:00:00 2001 From: Janos Kovacs Date: Thu, 14 Feb 2013 03:40:06 +0200 Subject: [PATCH] resource: make accessible from LUA resource-set id and application_class --- src/resource/resource-lua.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/resource/resource-lua.c b/src/resource/resource-lua.c index 8904636..134eced 100644 --- a/src/resource/resource-lua.c +++ b/src/resource/resource-lua.c @@ -64,7 +64,8 @@ enum field_e { RESOURCE_SET, ATTRIBUTES, RESOURCE, - STATE + STATE, + ID }; struct ownerref_s { @@ -428,7 +429,9 @@ static int ownerref_getfield(lua_State *L) static int ownerref_setfield(lua_State *L) { - mrp_resource_owner_t *owner = ownerref_check(L, 1); + /* mrp_resource_owner_t *owner = ownerref_check(L, 1); */ + + MRP_UNUSED(L); MRP_LUA_ENTER; @@ -477,6 +480,10 @@ static int setref_getfield(lua_State *L) switch (field) { + case ID: + lua_pushinteger(L, rset->id); + break; + case STATE: switch (rset->state) { case mrp_resource_no_request: state = "no_request"; break; @@ -487,6 +494,10 @@ static int setref_getfield(lua_State *L) lua_pushstring(L, state); break; + case APPLICATION_CLASS: + lua_pushstring(L, rset->class.ptr->name); + break; + default: lua_pushnil(L); break; @@ -603,6 +614,11 @@ static field_t field_name_to_type(const char *name, size_t len) { switch (len) { + case 2: + if (!strcmp(name, "id")) + return ID; + break; + case 5: if (!strcmp(name, "state")) return STATE; -- 2.7.4