##### Coverage Report - org.apache.commons.configuration.web.ServletContextConfiguration

Classes in this File | Line Coverage | Branch Coverage | Complexity

ServletContextConfiguration

100% | 12/12

100% | 2/2

1.25;1,25

1

     /*

2

      * Licensed to the Apache Software Foundation (ASF) under one or more

3

      * contributor license agreements.  See the NOTICE file distributed with

4

      * this work for additional information regarding copyright ownership.

5

      * The ASF licenses this file to You under the Apache License, Version 2.0

6

      * (the "License"); you may not use this file except in compliance with

7

      * the License.  You may obtain a copy of the License at

8

      *

9

      *     http://www.apache.org/licenses/LICENSE-2.0

10

      *

11

      * Unless required by applicable law or agreed to in writing, software

12

      * distributed under the License is distributed on an "AS IS" BASIS,

13

      * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

14

      * See the License for the specific language governing permissions and

15

      * limitations under the License.

16

      */

17

18

     package org.apache.commons.configuration.web;

19

20

     import java.util.Iterator;

21

     import java.util.List;

22

     import javax.servlet.Servlet;

23

     import javax.servlet.ServletContext;

24

25

     import org.apache.commons.collections.iterators.EnumerationIterator;

26

     import org.apache.commons.configuration.PropertyConverter;

27

28

     /**

29

      * A configuration wrapper to read the initialization parameters of a servlet

30

      * context. This configuration is read only, adding or removing a property will

31

      * throw an UnsupportedOperationException.

32

      *

33

      * @author <a href="mailto:ebourg@apache.org">Emmanuel Bourg</a>

34

      * @version $Revision: 439648 $, $Date: 2006-09-02 22:42:10 +0200 (Sa, 02 Sep 2006) $

35

      * @since 1.1

36

      */

37

     public class ServletContextConfiguration extends BaseWebConfiguration

38

     {

39

         /** Stores the wrapped servlet context.*/

40

         protected ServletContext context;

41

42

         /**

43

          * Create a ServletContextConfiguration using the context of

44

          * the specified servlet.

45

          *

46

          * @param servlet the servlet

47

          */

48

         public ServletContextConfiguration(Servlet servlet)

49

7

         {

50

7

             this.context = servlet.getServletConfig().getServletContext();

51

7

         }

52

53

         /**

54

          * Create a ServletContextConfiguration using the servlet context

55

          * initialization parameters.

56

          *

57

          * @param context the servlet context

58

          */

59

         public ServletContextConfiguration(ServletContext context)

60

1

         {

61

1

             this.context = context;

62

1

         }

63

64

         public Object getProperty(String key)

65

         {

66

7

             Object value = context.getInitParameter(key);

67

7

             if (!isDelimiterParsingDisabled())

68

             {

69

7

                 List list = PropertyConverter.split((String) value, getListDelimiter());

70

7

                 value = list.size() > 1 ? list : value;

71

             }

72

73

7

             return value;

74

         }

75

76

         public Iterator getKeys()

77

         {

78

3

             return new EnumerationIterator(context.getInitParameterNames());

79

         }

80

     }