2  * ============LICENSE_START==========================================
 
   4  * ===================================================================
 
   5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
 
   6  * ===================================================================
 
   8  * Unless otherwise specified, all software contained herein is licensed
 
   9  * under the Apache License, Version 2.0 (the "License");
 
  10  * you may not use this software except in compliance with the License.
 
  11  * You may obtain a copy of the License at
 
  13  *             http://www.apache.org/licenses/LICENSE-2.0
 
  15  * Unless required by applicable law or agreed to in writing, software
 
  16  * distributed under the License is distributed on an "AS IS" BASIS,
 
  17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
  18  * See the License for the specific language governing permissions and
 
  19  * limitations under the License.
 
  21  * Unless otherwise specified, all documentation contained herein is licensed
 
  22  * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
 
  23  * you may not use this documentation except in compliance with the License.
 
  24  * You may obtain a copy of the License at
 
  26  *             https://creativecommons.org/licenses/by/4.0/
 
  28  * Unless required by applicable law or agreed to in writing, documentation
 
  29  * distributed under the License is distributed on an "AS IS" BASIS,
 
  30  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
  31  * See the License for the specific language governing permissions and
 
  32  * limitations under the License.
 
  34  * ============LICENSE_END============================================
 
  38 package org.onap.portalapp.portal.domain;
 
  40 import java.util.List;
 
  42 import javax.persistence.Column;
 
  43 import javax.persistence.Entity;
 
  44 import javax.persistence.GeneratedValue;
 
  45 import javax.persistence.GenerationType;
 
  46 import javax.persistence.Id;
 
  47 import javax.persistence.Transient;
 
  50  * This class is almost identical to org.onap.portalapp.portal.transport.FunctionalMenuItem
 
  51  * The only difference is the appId field. In FunctionMenuItem, we used @Transient as an attribute, and we are using @Column in this class.
 
  52  * In some sql queries, we need to have appId, but it's not a field in fn_menu_functional table.
 
  58 public class FunctionalMenuItemWithAppID{
 
  59         private static final long serialVersionUID = 1L;
 
  62     @GeneratedValue(strategy=GenerationType.IDENTITY)
 
  63         @Column(name = "MENU_ID")
 
  66         @Column(name = "COLUMN_NUM")
 
  67         public Integer column;
 
  69         @Column(name = "TEXT")
 
  72         @Column(name = "PARENT_MENU_ID")
 
  73         public Integer parentMenuId;
 
  78         @Column(name="ACTIVE_YN")
 
  79         public String active_yn;
 
  81         @Column(name="APP_ID")
 
  85         public List<Integer> roles;
 
  88         public Boolean restrictedApp;
 
  90         public void normalize() {
 
  91                 if (this.column == null)
 
  92                         this.column = new Integer(1);
 
  93                 this.text = (this.text == null) ? "" : this.text.trim();
 
  94                 if (this.parentMenuId == null)
 
  95                         this.parentMenuId = new Integer(-1);
 
  96                 this.url = (this.url == null) ? "" : this.url.trim();
 
 100         public String toString() {
 
 101                 return "FunctionalMenuItem [menuId=" + menuId + ", column=" + column + ", text=" + text + ", parentMenuId="
 
 102                                 + parentMenuId + ", url=" + url + ", active_yn=" + active_yn + ", appid=" + appid + ", roles=" + roles
 
 103                                 + ", restrictedApp=" + restrictedApp + "]";
 
 106         public void setUrl(String url) {
 
 110         public void setRestrictedApp(Boolean restrictedApp) {
 
 111                 this.restrictedApp = restrictedApp;