Update groupId to org.onap.ccsdk.sli
[ccsdk/sli/core.git] / sli / provider / src / test / java / org / onap / ccsdk / sli / core / sli / provider / LunchSelectorPlugin.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP : CCSDK
4  * ================================================================================
5  * Copyright (C) 2017 ONAP
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.onap.ccsdk.sli.core.sli.provider;
22
23 import java.util.Map;
24
25 import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
26 import org.onap.ccsdk.sli.core.sli.SvcLogicException;
27 import org.onap.ccsdk.sli.core.sli.SvcLogicJavaPlugin;
28
29
30
31 public class LunchSelectorPlugin implements SvcLogicJavaPlugin {
32     public class UnknownLunchDayException extends Exception{
33
34         public UnknownLunchDayException(String string) {
35             super(string);
36         }
37
38     }
39     class Sandwhich {
40         String meat;
41         String cheese;
42
43         public Sandwhich(String meat, String cheese) {
44             this.meat = meat;
45             this.cheese = cheese;
46         }
47     }
48
49     public String selectLunch(Map<String, String> parameters, SvcLogicContext ctx) throws Exception {
50         String day = parameters.get("day");
51         if (day == null || day.length() < 1) {
52             throw new UnknownLunchDayException("What day is it?");
53         }
54         switch (day) {
55         case ("monday"): {
56             return "pizza";
57         }
58         case ("tuesday"): {
59             return "soup";
60         }
61         case ("wednesday"): {
62             return "salad";
63         }
64         case ("thursday"): {
65             return "sushi";
66         }
67         case ("friday"): {
68             return "bbq";
69         }
70         }
71         throw new SvcLogicException("Lunch cannot be served");
72     }
73
74     public Sandwhich makeLunch(Map<String, String> parameters, SvcLogicContext ctx) throws SvcLogicException {
75         return new Sandwhich("ham", "american");
76     }
77 }