001: /*
002: * Licensed to the Apache Software Foundation (ASF) under one or more
003: * contributor license agreements. See the NOTICE file distributed with
004: * this work for additional information regarding copyright ownership.
005: * The ASF licenses this file to You under the Apache License, Version 2.0
006: * (the "License"); you may not use this file except in compliance with
007: * the License. You may obtain a copy of the License at
008: *
009: * http://www.apache.org/licenses/LICENSE-2.0
010: *
011: * Unless required by applicable law or agreed to in writing, software
012: * distributed under the License is distributed on an "AS IS" BASIS,
013: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014: * See the License for the specific language governing permissions and
015: * limitations under the License.
016: */
017: package org.apache.servicemix.jbi.management.task;
018:
019: import org.apache.servicemix.jbi.framework.AdminCommandsServiceMBean;
020: import org.apache.tools.ant.Project;
021:
022: /**
023: * ListBindingComponentsTask
024: *
025: * @version $Revision:
026: */
027: public class ListBindingComponentsTask extends JbiTask {
028:
029: private String sharedLibraryName;
030:
031: private String serviceAssemblyName;
032:
033: private String bindingComponentName;
034:
035: private String state;
036:
037: private String xmlOutput;
038:
039: /**
040: * @return the xmlOutput
041: */
042: public String isXmlOutput() {
043: return xmlOutput;
044: }
045:
046: /**
047: * @param xmlOutput
048: * the xmlOutput to set
049: */
050: public void setXmlOutput(String xmlOutput) {
051: this .xmlOutput = xmlOutput;
052: }
053:
054: /**
055: *
056: * @return shared library name
057: */
058: public String getSharedLibraryName() {
059: return sharedLibraryName;
060: }
061:
062: /**
063: *
064: * @param sharedLibraryName
065: */
066: public void setSharedLibraryName(String sharedLibraryName) {
067: this .sharedLibraryName = sharedLibraryName;
068: }
069:
070: /**
071: *
072: * @return service assembly name
073: */
074: public String getServiceAssemblyName() {
075: return serviceAssemblyName;
076: }
077:
078: /**
079: *
080: * @param serviceAssemblyName
081: */
082: public void setServiceAssemblyName(String serviceAssemblyName) {
083: this .serviceAssemblyName = serviceAssemblyName;
084: }
085:
086: /**
087: *
088: * @return binding component name
089: */
090: public String getBindingComponentName() {
091: return bindingComponentName;
092: }
093:
094: /**
095: *
096: * @param bindingComponentName
097: */
098: public void setBindingComponentName(String bindingComponentName) {
099: this .bindingComponentName = bindingComponentName;
100: }
101:
102: /**
103: *
104: * @return component state
105: */
106: public String getState() {
107: return state;
108: }
109:
110: /**
111: *
112: * @param state
113: * Sets the component state
114: */
115: public void setState(String state) {
116: this .state = state;
117: }
118:
119: /**
120: * execute the task
121: *
122: * @throws BuildException
123: */
124: public void doExecute(AdminCommandsServiceMBean acs)
125: throws Exception {
126: String result = acs.listComponents(true, false, true,
127: getState(), getSharedLibraryName(),
128: getServiceAssemblyName());
129: if (xmlOutput != null) {
130: getProject().setProperty(xmlOutput, result);
131: }
132: log(result, Project.MSG_WARN);
133: }
134:
135: }
|