summaryrefslogtreecommitdiffstats
path: root/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'branches/sca-java-1.2/samples/calculator-implementation-policies/src/main')
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/AddService.java28
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/AddServiceImpl.java35
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/CalculatorClient.java70
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/CalculatorService.java35
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/CalculatorServiceImpl.java70
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/DivideService.java28
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/DivideServiceImpl.java35
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/MultiplyService.java28
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/MultiplyServiceImpl.java35
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/SubtractService.java28
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/SubtractServiceImpl.java35
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/security/CalculatorCallbackHandler.java50
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/security/JaasLoginModule.java178
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/security/UserPrincipal.java66
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/Calculator.composite61
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/CalculatorJass.config21
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/CalculatorLogMessages.properties18
-rw-r--r--branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/definitions.xml49
18 files changed, 0 insertions, 870 deletions
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/AddService.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/AddService.java
deleted file mode 100644
index 188451ebac..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/AddService.java
+++ /dev/null
@@ -1,28 +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.
- */
-package calculator;
-
-/**
- * The Add service interface
- */
-public interface AddService {
-
- double add(double n1, double n2);
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/AddServiceImpl.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/AddServiceImpl.java
deleted file mode 100644
index 7ca8fb04b5..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/AddServiceImpl.java
+++ /dev/null
@@ -1,35 +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.
- */
-package calculator;
-
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-/**
- * An implementation of the Add service
- */
-public class AddServiceImpl implements AddService {
-
- public double add(double n1, double n2) {
- Logger logger = Logger.getLogger("calculator");
- logger.log(Level.FINEST, "Adding " + n1 + " and " + n2);
- return n1 + n2;
- }
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/CalculatorClient.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/CalculatorClient.java
deleted file mode 100644
index 57bbc39d89..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/CalculatorClient.java
+++ /dev/null
@@ -1,70 +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.
- */
-
-package calculator;
-
-import javax.security.auth.login.Configuration;
-
-import org.apache.tuscany.sca.host.embedded.SCADomain;
-
-/**
- * This client program shows how to create an SCA runtime, start it,
- * and locate and invoke a SCA component
- */
-public class CalculatorClient {
- public static void main(String[] args) throws Exception {
- try {
- Configuration secConf = Configuration.getConfiguration();
- } catch ( java.lang.SecurityException e ) {
- if ( e.getMessage().equals("Unable to locate a login configuration") ) {
- System.setProperty("java.security.auth.login.config",
- CalculatorClient.class.getClassLoader().getResource("CalculatorJass.config").toString());
- } else {
- throw e;
- }
- }
-
- SCADomain scaDomain = SCADomain.newInstance("Calculator.composite");
-
- CalculatorService calculatorService =
- scaDomain.getService(CalculatorService.class, "CalculatorServiceComponent");
-
- // Calculate
- System.out.println("Calling CalculatorServiceComponent configured with 'logging' " +
- "policy for subtract and divide operations...");
- System.out.println("3 + 2=" + calculatorService.add(3, 2));
- System.out.println("3 - 2=" + calculatorService.subtract(3, 2));
- System.out.println("3 * 2=" + calculatorService.multiply(3, 2));
- System.out.println("3 / 2=" + calculatorService.divide(3, 2));
-
- calculatorService =
- scaDomain.getService(CalculatorService.class, "AnotherCalculatorServiceComponent");
-
- // Calculate
- System.out.println("Calling CalculatorServiceComponent configured with 'logging' " +
- "for all operations in the implementation...");
- System.out.println("3 + 2=" + calculatorService.add(3, 2));
- System.out.println("3 - 2=" + calculatorService.subtract(3, 2));
- System.out.println("3 * 2=" + calculatorService.multiply(3, 2));
- System.out.println("3 / 2=" + calculatorService.divide(3, 2));
-
- scaDomain.close();
- }
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/CalculatorService.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/CalculatorService.java
deleted file mode 100644
index 031fa8b912..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/CalculatorService.java
+++ /dev/null
@@ -1,35 +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.
- */
-package calculator;
-
-
-/**
- * The Calculator service interface.
- */
-public interface CalculatorService {
-
- double add(double n1, double n2);
-
- double subtract(double n1, double n2);
-
- double multiply(double n1, double n2);
-
- double divide(double n1, double n2);
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/CalculatorServiceImpl.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/CalculatorServiceImpl.java
deleted file mode 100644
index 3d861f2018..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/CalculatorServiceImpl.java
+++ /dev/null
@@ -1,70 +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.
- */
-package calculator;
-
-import org.osoa.sca.annotations.Reference;
-
-
-/**
- * An implementation of the Calculator service.
- */
-public class CalculatorServiceImpl implements CalculatorService {
-
- private AddService addService;
- private SubtractService subtractService;
- private MultiplyService multiplyService;
- private DivideService divideService;
-
- @Reference
- public void setAddService(AddService addService) {
- this.addService = addService;
- }
-
- @Reference
- public void setSubtractService(SubtractService subtractService) {
- this.subtractService = subtractService;
- }
-
- @Reference
- public void setDivideService(DivideService divideService) {
- this.divideService = divideService;
- }
-
- @Reference
- public void setMultiplyService(MultiplyService multiplyService) {
- this.multiplyService = multiplyService;
- }
-
- public double add(double n1, double n2) {
- return addService.add(n1, n2);
- }
-
- public double subtract(double n1, double n2) {
- return subtractService.subtract(n1, n2);
- }
-
- public double multiply(double n1, double n2) {
- return multiplyService.multiply(n1, n2);
- }
-
- public double divide(double n1, double n2) {
- return divideService.divide(n1, n2);
- }
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/DivideService.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/DivideService.java
deleted file mode 100644
index 30d248208b..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/DivideService.java
+++ /dev/null
@@ -1,28 +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.
- */
-package calculator;
-
-/**
- * The divide service interface
- */
-public interface DivideService {
-
- double divide(double n1, double n2);
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/DivideServiceImpl.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/DivideServiceImpl.java
deleted file mode 100644
index 1323edf55a..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/DivideServiceImpl.java
+++ /dev/null
@@ -1,35 +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.
- */
-package calculator;
-
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-/**
- * An implementation of the Divide service.
- */
-public class DivideServiceImpl implements DivideService {
-
- public double divide(double n1, double n2) {
- Logger logger = Logger.getLogger("calculator");
- logger.log(Level.FINEST, "Dividing " + n1 + " with " + n2);
- return n1 / n2;
- }
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/MultiplyService.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/MultiplyService.java
deleted file mode 100644
index 5290605938..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/MultiplyService.java
+++ /dev/null
@@ -1,28 +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.
- */
-package calculator;
-
-/**
- * The interface for the multiply service
- */
-public interface MultiplyService {
-
- double multiply(double n1, double n2);
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/MultiplyServiceImpl.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/MultiplyServiceImpl.java
deleted file mode 100644
index 91b803bc9e..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/MultiplyServiceImpl.java
+++ /dev/null
@@ -1,35 +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.
- */
-package calculator;
-
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-/**
- * An implementation of the Multiply service.
- */
-public class MultiplyServiceImpl implements MultiplyService {
-
- public double multiply(double n1, double n2) {
- Logger logger = Logger.getLogger("calculator");
- logger.log(Level.FINEST, "Multiplying " + n1 + " with " + n2);
- return n1 * n2;
- }
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/SubtractService.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/SubtractService.java
deleted file mode 100644
index bf0d1882b6..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/SubtractService.java
+++ /dev/null
@@ -1,28 +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.
- */
-package calculator;
-
-/**
- * The interface for the multiply service
- */
-public interface SubtractService {
-
- double subtract(double n1, double n2);
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/SubtractServiceImpl.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/SubtractServiceImpl.java
deleted file mode 100644
index 58cc4a3547..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/SubtractServiceImpl.java
+++ /dev/null
@@ -1,35 +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.
- */
-package calculator;
-
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-/**
- * An implementation of the subtract service.
- */
-public class SubtractServiceImpl implements SubtractService {
-
- public double subtract(double n1, double n2) {
- Logger logger = Logger.getLogger("calculator");
- logger.log(Level.FINEST, "Subtracting " + n1 + " from " + n2);
- return n1 - n2;
- }
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/security/CalculatorCallbackHandler.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/security/CalculatorCallbackHandler.java
deleted file mode 100644
index 4f063993a3..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/security/CalculatorCallbackHandler.java
+++ /dev/null
@@ -1,50 +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.
- */
-
-package calculator.security;
-
-import java.io.IOException;
-
-import javax.security.auth.callback.Callback;
-import javax.security.auth.callback.CallbackHandler;
-import javax.security.auth.callback.NameCallback;
-import javax.security.auth.callback.PasswordCallback;
-import javax.security.auth.callback.UnsupportedCallbackException;
-
-/**
- * @version $Rev$ $Date$
- */
-public class CalculatorCallbackHandler implements CallbackHandler {
-
- public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException {
- for (int i = 0; i < callbacks.length; i++) {
- if (callbacks[i] instanceof NameCallback) {
- NameCallback nc = (NameCallback)callbacks[i];
- nc.setName("CalculatorUser");
- } else if (callbacks[i] instanceof PasswordCallback) {
- PasswordCallback pc = (PasswordCallback)callbacks[i];
- pc.setPassword("CalculatorUserPasswd".toCharArray());
- } else {
- throw new UnsupportedCallbackException
- (callbacks[i], "Unsupported Callback!");
- }
- }
- }
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/security/JaasLoginModule.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/security/JaasLoginModule.java
deleted file mode 100644
index b3ef6e7312..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/security/JaasLoginModule.java
+++ /dev/null
@@ -1,178 +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.
- */
-
-package calculator.security;
-
-import java.security.Principal;
-import java.util.Map;
-
-import javax.security.auth.Subject;
-import javax.security.auth.callback.Callback;
-import javax.security.auth.callback.CallbackHandler;
-import javax.security.auth.callback.NameCallback;
-import javax.security.auth.callback.PasswordCallback;
-import javax.security.auth.login.LoginException;
-import javax.security.auth.spi.LoginModule;
-
-/**
- * @version $Rev$ $Date$
- */
-public class JaasLoginModule implements LoginModule {
-
- private CallbackHandler callbackHandler;
- private Subject subject;
- private Principal userPrincipal;
- private String userId;
- private String password;
- private boolean succeeded;
- private boolean commitSucceeded;
-
- public void initialize(Subject subject,
- CallbackHandler callbackHandler,
- Map<String, ?> sharedState,
- Map<String, ?> options) {
- this.callbackHandler = callbackHandler;
- this.subject = subject;
- }
-
- public boolean login() throws LoginException {
- Callback[] callbacks = new Callback[2];
- callbacks[0] = new NameCallback("UserId:");
- callbacks[1] = new PasswordCallback("Password:", false);
-
- try {
- callbackHandler.handle(callbacks);
- userId = ((NameCallback)callbacks[0]).getName();
- password = new String(((PasswordCallback)callbacks[1]).getPassword());
-
- if (userId.equals("CalculatorUser") && password.equals("CalculatorUserPasswd")) {
- System.out.println("Successfully AUTHENTICATED!!");
- succeeded = true;
- return true;
- } else {
- System.out.println("Incorrect userId / password! AUTHENTICATION FAILED!!");
- return false;
- }
- } catch (Exception e) {
- e.printStackTrace();
- return false;
- }
- }
-
- /**
- * <p> This method is called if the LoginContext's
- * overall authentication succeeded
- * (the relevant REQUIRED, REQUISITE, SUFFICIENT and OPTIONAL LoginModules
- * succeeded).
- *
- * <p> If this LoginModule's own authentication attempt
- * succeeded (checked by retrieving the private state saved by the
- * <code>login</code> method), then this method associates a
- * <code>UserPrincipal</code>
- * with the <code>Subject</code> located in the
- * <code>LoginModule</code>. If this LoginModule's own
- * authentication attempted failed, then this method removes
- * any state that was originally saved.
- *
- * <p>
- *
- * @exception LoginException if the commit fails.
- *
- * @return true if this LoginModule's own login and commit
- * attempts succeeded, or false otherwise.
- */
- public boolean commit() throws LoginException {
- if (succeeded == false) {
- return false;
- } else {
- // add a Principal (authenticated identity) to the Subject
-
- // assume the user we authenticated is the UserPrincipal
- userPrincipal = new UserPrincipal(userId);
- if (!subject.getPrincipals().contains(userPrincipal))
- subject.getPrincipals().add(userPrincipal);
-
- // in any case, clean out state
- userId = null;
- password = null;
- commitSucceeded = true;
- return true;
- }
- }
-
- /**
- * <p> This method is called if the LoginContext's
- * overall authentication failed.
- * (the relevant REQUIRED, REQUISITE, SUFFICIENT and OPTIONAL LoginModules
- * did not succeed).
- *
- * <p> If this LoginModule's own authentication attempt
- * succeeded (checked by retrieving the private state saved by the
- * <code>login</code> and <code>commit</code> methods),
- * then this method cleans up any state that was originally saved.
- *
- * <p>
- *
- * @exception LoginException if the abort fails.
- *
- * @return false if this LoginModule's own login and/or commit attempts
- * failed, and true otherwise.
- */
- public boolean abort() throws LoginException {
- if (succeeded == false) {
- return false;
- } else if (succeeded == true && commitSucceeded == false) {
- // login succeeded but overall authentication failed
- succeeded = false;
- userId = null;
- password = null;
- userPrincipal = null;
- } else {
- // overall authentication succeeded and commit succeeded,
- // but someone else's commit failed
- logout();
- }
- return true;
- }
-
- /**
- * Logout the user.
- *
- * <p> This method removes the <code>SimplePrincipal</code>
- * that was added by the <code>commit</code> method.
- *
- * <p>
- *
- * @exception LoginException if the logout fails.
- *
- * @return true in all cases since this <code>LoginModule</code>
- * should not be ignored.
- */
- public boolean logout() throws LoginException {
- subject.getPrincipals().remove(userPrincipal);
- succeeded = false;
- succeeded = commitSucceeded;
- userId = null;
- if (password != null)
- password = null;
- userPrincipal = null;
- return true;
- }
-
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/security/UserPrincipal.java b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/security/UserPrincipal.java
deleted file mode 100644
index 595626e672..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/java/calculator/security/UserPrincipal.java
+++ /dev/null
@@ -1,66 +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.
- */
-package calculator.security;
-
-import java.security.Principal;
-
-/**
- * @version $Rev$ $Date$
- */
-public class UserPrincipal implements Principal {
-
- private final String name;
-
- public UserPrincipal(String name) {
- if (name == null)
- throw new IllegalArgumentException("name cannot be null");
- this.name = name;
- }
-
- public String getName() {
- return name;
- }
-
- public String toString() {
- return name;
- }
-
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + ((name == null) ? 0 : name.hashCode());
- return result;
- }
-
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- final UserPrincipal other = (UserPrincipal)obj;
- if (name == null) {
- if (other.name != null)
- return false;
- } else if (!name.equals(other.name))
- return false;
- return true;
- }
-}
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/Calculator.composite b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/Calculator.composite
deleted file mode 100644
index d91bf88d96..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/Calculator.composite
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * 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.
--->
-<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
- targetNamespace="http://sample"
- xmlns:sample="http://sample"
- name="Calculator"
- xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0">
-
- <component name="CalculatorServiceComponent">
- <implementation.java class="calculator.CalculatorServiceImpl">
- <operation name="divide" requires="tuscany:logging"/>
- <operation name="subtract" requires="tuscany:logging"/>
- </implementation.java>
- <reference name="addService" target="AddServiceComponent" />
- <reference name="subtractService" target="SubtractServiceComponent" />
- <reference name="multiplyService" target="MultiplyServiceComponent" />
- <reference name="divideService" target="DivideServiceComponent" />
- </component>
-
- <component name="AddServiceComponent">
- <implementation.java class="calculator.AddServiceImpl" requires="tuscany:logging"/>
- </component>
-
- <component name="SubtractServiceComponent">
- <implementation.java class="calculator.SubtractServiceImpl"/>
- </component>
-
- <component name="MultiplyServiceComponent">
- <implementation.java class="calculator.MultiplyServiceImpl" requires="tuscany:jaasAuthentication"/>
- </component>
-
- <component name="DivideServiceComponent">
- <implementation.java class="calculator.DivideServiceImpl"/>
- </component>
-
- <component name="AnotherCalculatorServiceComponent">
- <implementation.java class="calculator.CalculatorServiceImpl" requires="tuscany:logging"/>
- <reference name="addService" target="AddServiceComponent" />
- <reference name="subtractService" target="SubtractServiceComponent" />
- <reference name="multiplyService" target="MultiplyServiceComponent" />
- <reference name="divideService" target="DivideServiceComponent" />
- </component>
-
-</composite>
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/CalculatorJass.config b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/CalculatorJass.config
deleted file mode 100644
index c3adb904b2..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/CalculatorJass.config
+++ /dev/null
@@ -1,21 +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.
- */
-Calculator {
- calculator.security.JaasLoginModule required debug=true;
-};
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/CalculatorLogMessages.properties b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/CalculatorLogMessages.properties
deleted file mode 100644
index 0238f0b013..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/CalculatorLogMessages.properties
+++ /dev/null
@@ -1,18 +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.
-CALLING_OPERATION=Inovoking operation {0} with arguments {1}
-OPERATION_RETURNED=Returning from operation {0} with return value {1} \ No newline at end of file
diff --git a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/definitions.xml b/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/definitions.xml
deleted file mode 100644
index b9f0feb145..0000000000
--- a/branches/sca-java-1.2/samples/calculator-implementation-policies/src/main/resources/definitions.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- * 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.
--->
-<definitions xmlns="http://www.osoa.org/xmlns/sca/1.0" targetNamespace="http://tuscany.apache.org/xmlns/sca/1.0"
- xmlns:sca="http://www.osoa.org/xmlns/sca/1.0" xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0"
- xmlns:calc="http://calculator">
-
- <!-- Policy Intents -->
- <intent name="logging" constrains="sca:implementation.java">
- <description>All messages to and from this implementation must be logged</description>
- </intent>
-
- <intent name="jaasAuthentication" constrains="sca:implementation.java">
- <description>All invocations to be authenticated</description>
- </intent>
-
- <!-- PolicySets -->
- <policySet name="JaasPolicy" provides="tuscany:jaasAuthentication" appliesTo="sca:implementation.java"
- xmlns="http://www.osoa.org/xmlns/sca/1.0">
- <tuscany:jaasAuthentication>
- <tuscany:configurationName>Calculator</tuscany:configurationName>
- <tuscany:callbackHandler>calculator.security.CalculatorCallbackHandler</tuscany:callbackHandler>
- </tuscany:jaasAuthentication>
- </policySet>
-
- <!-- PolicySets -->
- <policySet name="JDKLoggingPolicy" provides="tuscany:logging" appliesTo="sca:implementation.java"
- xmlns="http://www.osoa.org/xmlns/sca/1.0">
- <tuscany:jdkLogger name="calculator">
- <logLevel>FINER</logLevel>
- </tuscany:jdkLogger>
- </policySet>
-</definitions> \ No newline at end of file