From 0ce2ba93a297829f4c66c37653a9bea104f632cc Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Fri, 6 Apr 2012 15:09:42 +0000 Subject: [PATCH] license headers fix git-svn-id: https://svn.apache.org/repos/asf/archiva/redback/redback-core/trunk@1310388 13f79535-47bb-0310-9956-ffa450edef68 --- .../redback/rbac/jdo/JdoRbacManager.java | 25 ++- .../plexus/redback/rbac/jdo/JdoTool.java | 25 ++- .../src/main/mdo/rbac-jdo.mdo | 19 ++ .../redback-rbac-jdo/src/site/db-schema.dot | 196 ------------------ .../redback-rbac-jdo/src/site/db-schema.png | Bin 15869 -> 0 bytes .../redback/rbac/jdo/JdoRbacManagerTest.java | 25 ++- .../rbac/jdo/RbacJdoModelStaxTest.java | 25 ++- .../src/test/resources/ehcache.xml | 20 ++ 8 files changed, 95 insertions(+), 240 deletions(-) delete mode 100644 redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/site/db-schema.dot delete mode 100644 redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/site/db-schema.png diff --git a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/java/org/codehaus/plexus/redback/rbac/jdo/JdoRbacManager.java b/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/java/org/codehaus/plexus/redback/rbac/jdo/JdoRbacManager.java index 3d58c283..ceb47160 100644 --- a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/java/org/codehaus/plexus/redback/rbac/jdo/JdoRbacManager.java +++ b/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/java/org/codehaus/plexus/redback/rbac/jdo/JdoRbacManager.java @@ -1,19 +1,22 @@ package org.codehaus.plexus.redback.rbac.jdo; /* - * Copyright 2005 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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 org.codehaus.plexus.redback.rbac.AbstractRBACManager; diff --git a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/java/org/codehaus/plexus/redback/rbac/jdo/JdoTool.java b/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/java/org/codehaus/plexus/redback/rbac/jdo/JdoTool.java index d1a694c4..f9a193c6 100644 --- a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/java/org/codehaus/plexus/redback/rbac/jdo/JdoTool.java +++ b/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/java/org/codehaus/plexus/redback/rbac/jdo/JdoTool.java @@ -1,19 +1,22 @@ package org.codehaus.plexus.redback.rbac.jdo; /* - * Copyright 2001-2006 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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 org.codehaus.plexus.jdo.JdoFactory; diff --git a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/mdo/rbac-jdo.mdo b/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/mdo/rbac-jdo.mdo index 860c534d..ad6f9fe6 100644 --- a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/mdo/rbac-jdo.mdo +++ b/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/mdo/rbac-jdo.mdo @@ -1,4 +1,23 @@ + + diff --git a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/site/db-schema.dot b/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/site/db-schema.dot deleted file mode 100644 index 4b8cb014..00000000 --- a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/site/db-schema.dot +++ /dev/null @@ -1,196 +0,0 @@ -// Graph of desired database structure. -// Use GraphViz (available from www.graphviz.org) to generate the image. -// -// Command line: dot -Tpng db-schema.dot -o db-schema.png - -digraph structs { - // Graph Defaults - graph [ - rankdir="RL" - bgcolor="#f7f7f7" - label="\nGenerated by GraphViz" - labeljust="l" - ]; - - // Node Defaults. - node [ - fontname="Helvetica" - fontsize="11" - shape="plaintext" - ]; - - // Edge Defaults. - edge [ - arrowsize="0.8" - ]; - - // The Nodes - "KEY" [ - label=< - - - -
KEY
- - - - - -
- [TABLE NAME] -
- [COLUMN / PRIMARY KEY] -
- [COLUMN / INDEXED] -
- [COLUMN] -
-
> - ]; - - "ROLES" [ - label=< - - - - - -
- ROLES -
- NAME -
- DESCRIPTION -
- ASSIGNABLE -
> - ]; - - "ROLE_PERMISSION_MAP" [ - label=< - - - - -
- ROLE_PERMISSION_MAP -
- ROLE_NAME -
- PERMISSION_NAME -
> - ]; - - "ROLE_ROLE_MAP" [ - label=< - - - - -
- ROLE_ROLE_MAP -
- PARENT_ROLE_NAME -
- CHILD_ROLE_NAME -
> - ]; - - "PERMISSIONS" [ - label=< - - - - - - -
- PERMISSIONS -
- NAME -
- DESCRIPTION -
- OPERATION_NAME -
- RESOURCE_IDENTIFIER -
> - ]; - - "OPERATIONS" [ - label=< - - - - - -
- OPERATIONS -
- NAME -
- DESCRIPTION -
- RESOURCE_REQUIRED -
> - ]; - - "RESOURCES" [ - label=< - - - - -
- RESOURCES -
- IDENTIFIER -
- PATTERN -
> - ]; - - "USER_ASSIGNMENTS" [ - label=< - - - - -
- USER_ASSIGNMENTS -
- PRINCIPAL -
- ROLE_NAME -
> - ]; - - // The Connections - "PERMISSIONS":"NAME" -> - "ROLE_PERMISSION_MAP":"PERMISSION_NAME" - [arrowtail=none arrowhead=dot]; - - "PERMISSIONS":"OPERATION_NAME":w -> - "OPERATIONS":"NAME":e - [arrowtail=none arrowhead=normal]; - - "PERMISSIONS":"RESOURCE_IDENTIFIER" -> - "RESOURCES":"IDENTIFIER" - [arrowtail=none arrowhead=normal]; - - "USER_ASSIGNMENTS":"ROLE_NAME" -> - "ROLES":"NAME" - [arrowtail=none arrowhead=normal]; - - "ROLES":"NAME":w -> - "ROLE_PERMISSION_MAP":"ROLE_NAME":e - [arrowtail=none arrowhead=dot]; - - "ROLES":"NAME" -> - "ROLE_ROLE_MAP":"PARENT_ROLE_NAME" - [arrowtail=none arrowhead=dot]; - - "ROLE_ROLE_MAP":"CHILD_ROLE_NAME" -> - "ROLES":"NAME" - [arrowtail=none arrowhead=dot]; -} diff --git a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/site/db-schema.png b/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/site/db-schema.png deleted file mode 100644 index 10057442112c81332a10f412c080edb2e3056d4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15869 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

17r?J58|tQg*Za>$Djzr9$vAXHH= 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 + +