summaryrefslogtreecommitdiffstats
path: root/sca-cpp/trunk/samples/AlertAggregator/sample.alerter/AlertCheckerImpl.py
diff options
context:
space:
mode:
authorjsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68>2009-11-23 05:48:11 +0000
committerjsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68>2009-11-23 05:48:11 +0000
commit1c2df9a2458897ff6c2393913b2723457e42a0da (patch)
tree69652a0305830b4472f39c55ad1168522d8301f1 /sca-cpp/trunk/samples/AlertAggregator/sample.alerter/AlertCheckerImpl.py
parente5d978186780787e8dad6681cca139486df93643 (diff)
Simplified the automake build using configure options instead of environment variables and cleaned up some of the makefile.am files. Adjusted build instructions. Moved directories that don't yet build or work out of the main build dir and obsolete docs to a contrib dir.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@883254 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-cpp/trunk/samples/AlertAggregator/sample.alerter/AlertCheckerImpl.py')
-rw-r--r--sca-cpp/trunk/samples/AlertAggregator/sample.alerter/AlertCheckerImpl.py116
1 files changed, 0 insertions, 116 deletions
diff --git a/sca-cpp/trunk/samples/AlertAggregator/sample.alerter/AlertCheckerImpl.py b/sca-cpp/trunk/samples/AlertAggregator/sample.alerter/AlertCheckerImpl.py
deleted file mode 100644
index d9aab820ac..0000000000
--- a/sca-cpp/trunk/samples/AlertAggregator/sample.alerter/AlertCheckerImpl.py
+++ /dev/null
@@ -1,116 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you 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.
-#
-import xml.etree.ElementTree, datetime
-
-def getAllNewAlerts ():
-
- returnXML = "<alerts xmlns=\"http://tuscany.apache.org/samples/alerter\">\n</alerts>"
- returnElem = xml.etree.ElementTree.XML(returnXML)
-
- # Use the alertConfigService to get the configuration
- configElem = alertConfigService.getAlertConfig()
-
- for sourceElem in configElem.findall("./{http://tuscany.apache.org/samples/alerter}source"):
-
- sourceid = sourceElem.attrib["id"]
-
- newAlerts = getAlerts(sourceElem)
- if xml.etree.ElementTree.iselement(newAlerts):
- # Add the sourceid to each alert and append to the entire list
- for alert in newAlerts.findall("./{http://tuscany.apache.org/samples/alerter}alert"):
- alert.attrib["sourceid"] = sourceid
- returnElem.append(alert)
-
- return returnElem
-
-def getAlerts (sourceElem):
-
- lastcheckedElem = sourceElem.find("./{http://tuscany.apache.org/samples/alerter}lastChecked")
- if not xml.etree.ElementTree.iselement(lastcheckedElem):
- lastcheckedElem = xml.etree.ElementTree.SubElement(sourceElem, "lastChecked")
- lastcheckedElem.text = ""
-
- if sourceElem.attrib["type"] == "rss":
-
- feedaddress = sourceElem.find("./{http://tuscany.apache.org/samples/alerter}feedAddress").text
-
- if feedaddress:
- # Use the rssCheckerService to get new articles for this config
- newAlerts = rssCheckerService.getNewAlerts(feedaddress, lastcheckedElem.text)
-
- lastcheckedElem.text = datetime.datetime.now().replace(microsecond=0).isoformat()
- alertConfigService.updateSourceConfig(sourceElem)
- return newAlerts
-
- elif sourceElem.attrib["type"] == "pop":
-
- popserver = sourceElem.find("./{http://tuscany.apache.org/samples/alerter}popServer").text
- popusername = sourceElem.find("./{http://tuscany.apache.org/samples/alerter}popUsername").text
- poppassword = sourceElem.find("./{http://tuscany.apache.org/samples/alerter}popPassword").text
-
- if popserver and popusername and poppassword:
- # Use the popCheckerService to get new emails for this config
- newAlerts = popCheckerService.getNewAlerts(popserver, popusername, poppassword, lastcheckedElem.text)
-
- lastcheckedElem.text = datetime.datetime.now().replace(microsecond=0).isoformat()
- alertConfigService.updateSourceConfig(sourceElem)
- return newAlerts
-
- else:
- print "Source type not supported: ", sourceElem.attrib["type"]
-
- return None
-
-
-def getNewAlerts (sourceId):
- # Use the alertConfigService to get the configuration
- sourceConfigElem = alertConfigService.getSourceConfig(sourceId)
-
- # Get the alerts
- newAlerts = getAlerts(sourceConfigElem)
-
- if xml.etree.ElementTree.iselement(newAlerts):
- # Add the sourceid to each alert
- for alert in newAlerts.findall("./{http://tuscany.apache.org/samples/alerter}alert"):
- alert.attrib["sourceid"] = sourceId
-
- return newAlerts
-
-def addAlertSource (sourceElem):
- # Add the source directly to the configuration
- return alertConfigService.addSourceConfig(sourceElem)
-
-def updateAlertSource (sourceElem):
- # Update the source in the configuration
- return alertConfigService.updateSourceConfig(sourceElem)
-
-def removeAlertSource (sourceId):
- # Remove the source from the configuration
- alertConfigService.removeSourceConfig(sourceId)
-
-def getAlertSources ():
- # Get the config for all the sources
- return alertConfigService.getAlertConfig()
-
-# # Testing
-# import AlertConfigImpl as alertConfigService
-# import RSSCheckerImpl as rssCheckerService
-# import POPCheckerImpl as popCheckerService
-#
-# print xml.etree.ElementTree.tostring(getAlertSources())
-# print xml.etree.ElementTree.tostring(getAllNewAlerts())