| # | |
| # 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 | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # | |
| # Unless required by applicable law or agreed to in writing, software | |
| # distributed under the License is distributed on an "AS IS" BASIS, | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| # See the License for the specific language governing permissions and | |
| # limitations under the License. | |
| # | |
| from wookie import WookieConnectorService | |
| from wookie.widget import Property | |
| from wookie.widget import User | |
| # @param host, path, api_key, shareddatakey | |
| WookieConn = WookieConnectorService.WookieConnectorService('localhost:8081', '/wookie', 'TEST','localhost_python') | |
| # set locale | |
| #WookieConn.setLocale("en") | |
| # set Widget user | |
| WookieConn.setUser("demo_python", "demo_python_screenName") | |
| print WookieConn.getCurrentUser().getLoginName() | |
| print WookieConn.getCurrentUser().getScreenName() | |
| # params: name, value, isPublic (default: false) | |
| prop1 = Property.Property("test", "proov") | |
| print prop1.getName()+":"+prop1.getValue()+":"+prop1.getIsPublic() | |
| connectionAlive = WookieConn.getConnection().Test() | |
| print connectionAlive | |
| if connectionAlive: | |
| # get available widgets | |
| widgetList = WookieConn.getAvailableWidgets() | |
| a = widgetList[12] | |
| b = widgetList[11] | |
| #a = 'http://www.getwookie.org/widgets/weather' | |
| # create or get instances | |
| retrievedInstance = WookieConn.getOrCreateInstance(a) | |
| if retrievedInstance: | |
| print retrievedInstance.getTitle()+'\n'+retrievedInstance.getUrl() | |
| print retrievedInstance.getWidth()+'\n'+retrievedInstance.getHeight() | |
| # add participant, returns string "true" (if exists, or created) or "false" | |
| print WookieConn.addParticipant(retrievedInstance, User.User("ants_python", "ants_screenName")) | |
| # get participants, return list of participants | |
| users = WookieConn.getParticipants(retrievedInstance) | |
| print users[0].getLoginName()+":"+users[0].getScreenName()+":"+users[0].getThumbnail() | |
| # delete participant | |
| WookieConn.deleteParticipant(retrievedInstance, User.User("ants_python")); | |
| # add property | |
| # params: name, value, is_public | |
| prop2 = Property.Property("python_prop", "demo") | |
| WookieConn.setProperty(retrievedInstance, prop2) | |
| # get property, return property objec, if failed then "false" | |
| retrievedProp = WookieConn.getProperty(retrievedInstance, prop2) | |
| print retrievedProp.getValue() | |
| #delete property, returns "true" or "false" | |
| WookieConn.deleteProperty(retrievedInstance, prop2) | |
| retrievedInstance2 = WookieConn.getOrCreateInstance(b) | |
| if retrievedInstance2: | |
| print retrievedInstance2.getTitle()+'\n'+retrievedInstance2.getUrl() | |
| print retrievedInstance2.getWidth()+'\n'+retrievedInstance2.getHeight() | |
| retrievedInstance3 = WookieConn.getOrCreateInstance('http://www.getwookie.org/widgets/weather') | |
| if retrievedInstance3: | |
| print retrievedInstance3.getTitle()+'\n'+retrievedInstance3.getUrl() | |
| print retrievedInstance3.getWidth()+'\n'+retrievedInstance3.getHeight() |