EMMA Coverage Report (generated Sun Sep 18 11:34:27 PHT 2011)
[all classes][org.apache.maven.continuum.core.action]

COVERAGE SUMMARY FOR SOURCE FILE [AddAssignableRolesAction.java]

nameclass, %method, %block, %line, %
AddAssignableRolesAction.java100% (1/1)100% (2/2)58%  (40/69)64%  (9/14)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class AddAssignableRolesAction100% (1/1)100% (2/2)58%  (40/69)64%  (9/14)
execute (Map): void 100% (1/1)56%  (37/66)62%  (8/13)
AddAssignableRolesAction (): void 100% (1/1)100% (3/3)100% (1/1)

1package org.apache.maven.continuum.core.action;
2 
3/*
4 * Licensed to the Apache Software Foundation (ASF) under one
5 * or more contributor license agreements.  See the NOTICE file
6 * distributed with this work for additional information
7 * regarding copyright ownership.  The ASF licenses this file
8 * to you under the Apache License, Version 2.0 (the
9 * "License"); you may not use this file except in compliance
10 * with the License.  You may obtain a copy of the License at
11 *
12 *   http://www.apache.org/licenses/LICENSE-2.0
13 *
14 * Unless required by applicable law or agreed to in writing,
15 * software distributed under the License is distributed on an
16 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17 * KIND, either express or implied.  See the License for the
18 * specific language governing permissions and limitations
19 * under the License.
20 */
21 
22import java.util.Map;
23 
24import org.apache.continuum.dao.ProjectGroupDao;
25import org.apache.maven.continuum.ContinuumException;
26import org.apache.maven.continuum.model.project.ProjectGroup;
27import org.apache.maven.continuum.store.ContinuumStoreException;
28import org.codehaus.plexus.redback.role.RoleManager;
29import org.codehaus.plexus.redback.role.RoleManagerException;
30 
31/**
32 * AddAssignableRolesAction:
33 *
34 * @author: Jesse McConnell <jmcconnell@apache.org>
35 * @version: $Id: AddAssignableRolesAction.java 771177 2009-05-04 05:02:26Z evenisse $
36 * @plexus.component role="org.codehaus.plexus.action.Action" role-hint="add-assignable-roles"
37 */
38public class AddAssignableRolesAction
39    extends AbstractContinuumAction
40{
41    /**
42     * @plexus.requirement
43     */
44    private ProjectGroupDao projectGroupDao;
45 
46    /**
47     * @plexus.requirement role-hint="default"
48     */
49    private RoleManager roleManager;
50 
51    public void execute( Map context )
52        throws ContinuumException, ContinuumStoreException
53    {
54        int projectGroupId = getProjectGroupId( context );
55 
56        ProjectGroup projectGroup = projectGroupDao.getProjectGroup( projectGroupId );
57 
58        // TODO: make the resource the name of the project group and hide the id from the user
59 
60        try
61        {
62            if ( !roleManager.templatedRoleExists( "project-administrator", projectGroup.getName() ) )
63            {
64                roleManager.createTemplatedRole( "project-administrator", projectGroup.getName() );
65            }
66            if ( !roleManager.templatedRoleExists( "project-developer", projectGroup.getName() ) )
67            {
68                roleManager.createTemplatedRole( "project-developer", projectGroup.getName() );
69            }
70 
71            if ( !roleManager.templatedRoleExists( "project-user", projectGroup.getName() ) )
72            {
73                roleManager.createTemplatedRole( "project-user", projectGroup.getName() );
74            }
75        }
76        catch ( RoleManagerException e )
77        {
78            e.printStackTrace();
79            throw new ContinuumException( "error generating templated role for project " + projectGroup.getName(), e );
80        }
81    }
82}

[all classes][org.apache.maven.continuum.core.action]
EMMA 2.0.5312 (C) Vladimir Roubtsov