01 /*
02 * Licensed to the Apache Software Foundation (ASF) under one
03 * or more contributor license agreements. See the NOTICE file
04 * distributed with this work for additional information
05 * regarding copyright ownership. The ASF licenses this file
06 * to you under the Apache License, Version 2.0 (the
07 * "License"); you may not use this file except in compliance
08 * with the License. You may obtain a copy of the License at
09 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
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 */
21 package org.apache.qpid.server.security.access;
22
23 public class VirtualHostAccess
24 {
25 private String _vhost;
26 private AccessRights _rights;
27
28 public VirtualHostAccess(String vhostaccess)
29 {
30 //format <vhost>(<rights>)
31 int hostend = vhostaccess.indexOf('(');
32
33 if (hostend == -1)
34 {
35 throw new IllegalArgumentException("VirtualHostAccess format string contains no access _rights");
36 }
37
38 _vhost = vhostaccess.substring(0, hostend);
39
40 String rights = vhostaccess.substring(hostend);
41
42 if (rights.indexOf('r') != -1)
43 {
44 if (rights.indexOf('w') != -1)
45 {
46 _rights = new AccessRights(AccessRights.Rights.READWRITE);
47 }
48 else
49 {
50 _rights = new AccessRights(AccessRights.Rights.READ);
51 }
52 }
53 else if (rights.indexOf('w') != -1)
54 {
55 _rights = new AccessRights(AccessRights.Rights.WRITE);
56 }
57 }
58
59 public AccessRights getAccessRights()
60 {
61 return _rights;
62 }
63
64 public String getVirtualHost()
65 {
66 return _vhost;
67 }
68 }
|