You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by de...@apache.org on 2005/09/05 07:01:08 UTC
svn commit: r278674 -
/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/ModuleConfiguration.java
Author: deepal
Date: Sun Sep 4 22:01:04 2005
New Revision: 278674
URL: http://svn.apache.org/viewcvs?rev=278674&view=rev
Log:
adding a missing file
Added:
webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/ModuleConfiguration.java
Added: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/ModuleConfiguration.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/ModuleConfiguration.java?rev=278674&view=auto
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/ModuleConfiguration.java (added)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/ModuleConfiguration.java Sun Sep 4 22:01:04 2005
@@ -0,0 +1,89 @@
+package org.apache.axis2.description;
+
+import org.apache.axis2.AxisFault;
+
+import javax.xml.namespace.QName;
+import java.util.ArrayList;
+/*
+* Copyright 2004,2005 The Apache Software Foundation.
+*
+* 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.
+*
+*
+*/
+
+/**
+ * Author: Deepal Jayasinghe
+ * Date: Sep 1, 2005
+ * Time: 2:06:46 PM
+ */
+
+/**
+ * This is to store deployment time data , described by
+ * <moduleConfig module="modulename">
+ * <paramter> ....</parameter>
+ * </moduleConfig>
+ *
+ * for the initilal stage this just keep set of paramters , but when the time
+ * bean will be store more
+ */
+
+public class ModuleConfiguration implements ParameterInclude{
+
+ private QName moduleName;
+ private ParameterInclude paramterinclude;
+
+ //to keep the pointer to its parent , only to access paramters
+ private ParameterInclude parent;
+
+ public ModuleConfiguration(QName moduleName, ParameterInclude parent) {
+ this.moduleName = moduleName;
+ this.parent = parent;
+ paramterinclude = new ParameterIncludeImpl();
+ }
+
+ public QName getModuleName() {
+ return moduleName;
+ }
+
+ public void addParameter(Parameter param) throws AxisFault {
+ if(isParamterLocked(param.getName())){
+ throw new AxisFault("Parmter is locked can not overide: " + param.getName());
+ } else{
+ paramterinclude.addParameter(param);
+ }
+ }
+
+ public Parameter getParameter(String name) {
+ return paramterinclude.getParameter(name);
+ }
+
+ public ArrayList getParameters() {
+ return paramterinclude.getParameters();
+ }
+
+ public boolean isParamterLocked(String paramterName) {
+ // checking the locked value of parent
+ boolean loscked = false;
+ if (parent !=null) {
+ loscked = parent.isParamterLocked(paramterName);
+ }
+ if(loscked){
+ return true;
+ } else {
+ Parameter parameter = getParameter(paramterName);
+ return parameter != null && parameter.isLocked();
+ }
+ }
+
+}