]> source.dussan.org Git - archiva.git/blob
4df023d1b14ec228ee0b7e49e8973a8aa256edb0
[archiva.git] /
1 package org.apache.archiva.event.context;
2 /*
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  * Unless required by applicable law or agreed to in writing,
13  * software distributed under the License is distributed on an
14  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15  * KIND, either express or implied.  See the License for the
16  * specific language governing permissions and limitations
17  * under the License.
18  */
19
20 import org.apache.archiva.event.EventContext;
21
22 import java.io.Serializable;
23 import java.util.HashMap;
24 import java.util.Map;
25
26 /**
27  * This context provides repository data.
28  *
29  * @author Martin Schreier <martin_s@apache.org>
30  */
31 public class RepositoryContext implements EventContext, Serializable
32 {
33     private static final long serialVersionUID = -4172663291198878307L;
34
35     private static final String PREFIX = "repository";
36
37     private final String id;
38     private final String type;
39     private final String flavour;
40
41     public RepositoryContext( String id, String type, String flavour )
42     {
43         this.id = id;
44         this.type = type;
45         this.flavour = flavour;
46     }
47
48     /**
49      * Returns the repository id
50      * @return the repository id
51      */
52     public String getId( )
53     {
54         return id;
55     }
56
57     /**
58      * Returns the repository type (e.g. MAVEN)
59      * @return the string representation of the repository type
60      */
61     public String getType( )
62     {
63         return type;
64     }
65
66     /**
67      * Returns the repository flavour (e.g. Remote, Managed, Group)
68      * @return
69      */
70     public String getFlavour( )
71     {
72         return flavour;
73     }
74
75     @Override
76     public Map<String, String> getData( )
77     {
78         Map<String, String> values = new HashMap<>( );
79         values.put( PREFIX+".id", id );
80         values.put( PREFIX+".type", type );
81         values.put( PREFIX+".flavour", flavour );
82         return values;
83     }
84
85     @Override
86     public String getPrefix( )
87     {
88         return PREFIX;
89     }
90 }