ProtocolPropertiesUtils.java
- /*
- * GovWay - A customizable API Gateway
- * https://govway.org
- *
- * Copyright (c) 2005-2025 Link.it srl (https://link.it).
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 3, as published by
- * the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
- package org.openspcoop2.protocol.sdk.properties;
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.List;
- import org.apache.commons.lang.StringUtils;
- import org.openspcoop2.core.id.IDSoggetto;
- import org.openspcoop2.core.registry.AccordoServizioParteSpecifica;
- import org.openspcoop2.core.registry.Fruitore;
- import org.openspcoop2.core.registry.ProtocolProperty;
- import org.openspcoop2.core.tracciamento.Proprieta;
- import org.openspcoop2.protocol.sdk.ProtocolException;
- import org.openspcoop2.protocol.sdk.constants.ConsoleItemValueType;
- import org.openspcoop2.protocol.sdk.constants.ConsoleOperationType;
- import org.openspcoop2.utils.BooleanNullable;
- /**
- * ProtocolPropertiesUtils
- *
- * @author Poli Andrea (apoli@link.it)
- * @author $Author$
- * @version $Rev$, $Date$
- */
- public class ProtocolPropertiesUtils {
- public static void setDefaultValue(List<BaseConsoleItem> consoleItems, AbstractProperty<?> property) throws ProtocolException{
- if(property ==null)
- return;
- for (BaseConsoleItem consoleItem : consoleItems) {
- if(consoleItem.getId().equals(property.getId()))
- setDefaultValue(consoleItem, property);
- }
- }
- public static void setDefaultValue(List<BaseConsoleItem> consoleItems, ProtocolProperty property){
- if(property ==null)
- return;
- for (BaseConsoleItem consoleItem : consoleItems) {
- if(consoleItem.getId().equals(property.getName()) && consoleItem instanceof AbstractConsoleItem<?>){
- if(consoleItem instanceof StringConsoleItem){
- ((StringConsoleItem) consoleItem).setDefaultValue(property.getValue());
- }
- else if(consoleItem instanceof NumberConsoleItem){
- Long numberValue = property.getNumberValue();
- ((NumberConsoleItem) consoleItem).setDefaultValue(numberValue);
- }
- else if(consoleItem instanceof BinaryConsoleItem){
- byte[] byteFile = property.getByteFile();
- ((BinaryConsoleItem) consoleItem).setFileName(property.getFile());
- ((BinaryConsoleItem) consoleItem).setDefaultValue(byteFile);
- }else if(consoleItem instanceof BooleanConsoleItem){
- Boolean booleanValue = property.getBooleanValue();
- ((BooleanConsoleItem) consoleItem).setDefaultValue(booleanValue);
- }
- }
- }
- }
-
- public static List<String> getListFromMultiSelectValue(String value) {
- List<String> l = new ArrayList<>();
- if(value.contains(",")) {
- l = Arrays.asList(value.split(","));
- }
- else {
- l.add(value);
- }
- return l;
- }
-
- public static String getValueMultiSelect(String []list) {
- return getValueMultiSelect(Arrays.asList(list));
- }
- public static String getValueMultiSelect(List<String> list) {
- StringBuilder bf = new StringBuilder();
- for (String s : list) {
- if(bf.length()>0) {
- bf.append(",");
- }
- bf.append(s);
- }
- return bf.toString();
- }
- public static void setDefaultValueMultiSelect(List<String> list, StringConsoleItem item) {
- item.setDefaultValue(getValueMultiSelect(list));
- }
-
- public static BaseConsoleItem getBaseConsoleItem(List<BaseConsoleItem> consoleItems, AbstractProperty<?> property){
- if(property ==null)
- return null;
- String propertyId = property.getId();
- return getBaseConsoleItem(consoleItems, propertyId);
- }
- public static BaseConsoleItem getBaseConsoleItem(List<BaseConsoleItem> consoleItems, String propertyId){
- if(propertyId ==null)
- return null;
- for (BaseConsoleItem consoleItem : consoleItems) {
- if(consoleItem.getId().equals(propertyId))
- return consoleItem;
- }
- return null;
- }
- public static AbstractConsoleItem<?> getAbstractConsoleItem(List<BaseConsoleItem> consoleItems, AbstractProperty<?> property){
- if(property ==null)
- return null;
- String propertyId = property.getId();
- return getAbstractConsoleItem(consoleItems, propertyId);
- }
- public static AbstractConsoleItem<?> getAbstractConsoleItem(List<BaseConsoleItem> consoleItems, ProtocolProperty property){
- if(property ==null)
- return null;
- String propertyId = property.getName();
- return getAbstractConsoleItem(consoleItems, propertyId);
- }
- public static AbstractConsoleItem<?> getAbstractConsoleItem(List<BaseConsoleItem> consoleItems, String propertyId){
- if(propertyId ==null)
- return null;
- for (BaseConsoleItem consoleItem : consoleItems) {
- if(consoleItem.getId().equals(propertyId) && consoleItem instanceof AbstractConsoleItem<?>)
- return (AbstractConsoleItem<?>) consoleItem;
- }
- return null;
- }
- public static AbstractProperty<?> getAbstractPropertyById(ProtocolProperties protocolProperties, String propertyId){
- if(propertyId ==null)
- return null;
- for (int i = 0; i < protocolProperties.sizeProperties(); i++) {
- AbstractProperty<?> property = protocolProperties.getProperty(i);
- if(property.getId().equals(propertyId))
- return property;
- }
- return null;
- }
- public static void setDefaultValue(BaseConsoleItem item, AbstractProperty<?> property) throws ProtocolException{
- Object defaultValue = null;
- try{
- if(item instanceof AbstractConsoleItem<?> && property != null){
- defaultValue = property.getValue();
- if(item instanceof StringConsoleItem){
- StringProperty sp = (StringProperty) property;
- ((StringConsoleItem) item).setDefaultValue(sp.getValue());
- }
- else if(item instanceof NumberConsoleItem){
- NumberProperty np = (NumberProperty) property;
- ((NumberConsoleItem) item).setDefaultValue(np.getValue());
- }
- else if(item instanceof BinaryConsoleItem){
- BinaryProperty bp = (BinaryProperty) property;
- ((BinaryConsoleItem) item).setFileId(bp.getFileId());
- ((BinaryConsoleItem) item).setFileName(bp.getFileName());
- ((BinaryConsoleItem) item).setDefaultValue(bp.getValue());
- }else if(item instanceof BooleanConsoleItem){
- BooleanProperty bolP = (BooleanProperty) property;
- ((BooleanConsoleItem) item).setDefaultValue(bolP.getValue());
- }
- }
- }catch(Exception e){
- String defaultValueClassName = defaultValue != null ? defaultValue.getClass().getName() : "Default Value Null";
- throw new ProtocolException("Impossibile assegnare un valore di tipo ["+defaultValueClassName+"] all'item ["+item.getId()+"]");
- }
- }
- public static ConsoleItemValueType getConsoleItemValueType(BaseConsoleItem item){
- if(item instanceof AbstractConsoleItem<?>){
- if(item instanceof StringConsoleItem){
- return ConsoleItemValueType.STRING;
- }
- else if(item instanceof NumberConsoleItem){
- return ConsoleItemValueType.NUMBER;
- }
- else if(item instanceof BooleanConsoleItem){
- return ConsoleItemValueType.BOOLEAN;
- }
- else if(item instanceof BinaryConsoleItem){
- return ConsoleItemValueType.BINARY;
- }
- }
- return null;
- }
- public static List<ProtocolProperty> toProtocolPropertiesRegistry (ProtocolProperties protocolProperties, ConsoleOperationType consoleOperationType, List<ProtocolProperty> oldProtocolPropertyList){
- List<ProtocolProperty> lstProtocolProperty = new ArrayList<>();
- for (int i = 0; i < protocolProperties.sizeProperties(); i++) {
- AbstractProperty<?> property = protocolProperties.getProperty(i);
- ProtocolProperty prop = new ProtocolProperty();
- prop.setName(property.getId());
- boolean add = false;
- if(property instanceof StringProperty){
- StringProperty sp = (StringProperty) property;
- if(StringUtils.isNotEmpty(sp.getValue())) {
- prop.setValue(sp.getValue());
- }
- /**if(StringUtils.isNotEmpty(sp.getValue()))*/
- // aggiungo sempre per cercare proprieta' non valorizzate nelle search
- add = true;
- } else if(property instanceof NumberProperty){
- NumberProperty np = (NumberProperty) property;
- if(np.getValue() != null) {
- prop.setNumberValue(np.getValue());
- }
- /**if(np.getValue() != null)*/
- // aggiungo sempre per cercare proprieta' non valorizzate nelle search
- add = true;
- } else if(property instanceof BinaryProperty){
- BinaryProperty bp = (BinaryProperty) property;
- if(consoleOperationType.equals(ConsoleOperationType.ADD) || bp.getValue()!=null){
- prop.setByteFile(bp.getValue());
- prop.setFile(bp.getFileName());
- if(bp.getValue() != null && bp.getValue().length > 0)
- add = true;
- }else {
- // caso change non si puo' modificare un binary quindi riporto il valore che ho trovato sul db a inizio change
- for (ProtocolProperty protocolProperty : oldProtocolPropertyList) {
- if(property.getId().equals(protocolProperty.getName())){
-
- if(bp.isClearContent()) {
- prop.setByteFile(null);
- prop.setFile(null);
- add = true;
- }
- else {
- prop.setByteFile(protocolProperty.getByteFile());
- prop.setFile(protocolProperty.getFile());
- if(protocolProperty.getByteFile() != null && protocolProperty.getByteFile().length > 0){
- add = true;
- }
- }
-
- break;
- }
- }
- }
- } else if(property instanceof BooleanProperty){
- BooleanProperty bp = (BooleanProperty) property;
- prop.setBooleanValue(bp.getValue() != null ? bp.getValue() : false);
- /**if(bp.getValue() != null)*/
- // aggiungo sempre per cercare proprieta' non valorizzate nelle search
- add = true;
- }
- if(add)
- lstProtocolProperty.add(prop);
- }
- return lstProtocolProperty;
- }
- public static List<org.openspcoop2.core.config.ProtocolProperty> toProtocolPropertiesConfig (ProtocolProperties protocolProperties, ConsoleOperationType consoleOperationType, List<org.openspcoop2.core.config.ProtocolProperty> oldProtocolPropertyList){
- List<org.openspcoop2.core.config.ProtocolProperty> lstProtocolProperty = new ArrayList<>();
- for (int i = 0; i < protocolProperties.sizeProperties(); i++) {
- AbstractProperty<?> property = protocolProperties.getProperty(i);
- org.openspcoop2.core.config.ProtocolProperty prop = new org.openspcoop2.core.config.ProtocolProperty();
- prop.setName(property.getId());
- boolean add = false;
- if(property instanceof StringProperty){
- StringProperty sp = (StringProperty) property;
- if(StringUtils.isNotEmpty(sp.getValue())) {
- prop.setValue(sp.getValue());
- }
- /**if(StringUtils.isNotEmpty(sp.getValue()))*/
- // aggiungo sempre per cercare proprieta' non valorizzate nelle search
- add = true;
- } else if(property instanceof NumberProperty){
- NumberProperty np = (NumberProperty) property;
- if(np.getValue() != null) {
- prop.setNumberValue(np.getValue());
- }
- /**if(np.getValue() != null)*/
- // aggiungo sempre per cercare proprieta' non valorizzate nelle search
- add = true;
- } else if(property instanceof BinaryProperty){
- BinaryProperty bp = (BinaryProperty) property;
- if(consoleOperationType.equals(ConsoleOperationType.ADD) || bp.getValue()!=null){
- prop.setByteFile(bp.getValue());
- prop.setFile(bp.getFileName());
- if(bp.getValue() != null && bp.getValue().length > 0)
- add = true;
- }else {
- // caso change non si puo' modificare un binary quindi riporto il valore che ho trovato sul db a inizio change
- for (org.openspcoop2.core.config.ProtocolProperty protocolProperty : oldProtocolPropertyList) {
- if(property.getId().equals(protocolProperty.getName())){
-
- if(bp.isClearContent()) {
- prop.setByteFile(null);
- prop.setFile(null);
- add = true;
- }
- else {
- prop.setByteFile(protocolProperty.getByteFile());
- prop.setFile(protocolProperty.getFile());
- if(protocolProperty.getByteFile() != null && protocolProperty.getByteFile().length > 0){
- add = true;
- }
- }
-
- break;
- }
- }
- }
- } else if(property instanceof BooleanProperty){
- BooleanProperty bp = (BooleanProperty) property;
- prop.setBooleanValue(bp.getValue() != null && bp.getValue());
- /**if(bp.getValue() != null)*/
- // aggiungo sempre per cercare proprieta' non valorizzate nelle search
- add = true;
- }
- if(add)
- lstProtocolProperty.add(prop);
- }
- return lstProtocolProperty;
- }
- public static void mergeProtocolPropertiesRegistry (ProtocolProperties protocolProperties, List<ProtocolProperty> listaProtocolPropertiesDaDB, ConsoleOperationType consoleOperationType){
-
- if(consoleOperationType!=null) {
- // nop
- }
-
- for (int i = 0; i < protocolProperties.sizeProperties(); i++) {
- AbstractProperty<?> property = protocolProperties.getProperty(i);
- for (ProtocolProperty protocolProperty : listaProtocolPropertiesDaDB) {
- if(property.getId().equals(protocolProperty.getName())){
- if(property instanceof StringProperty){
- StringProperty sp = (StringProperty) property;
- sp.setValue(protocolProperty.getValue());
- } else if(property instanceof NumberProperty){
- NumberProperty np = (NumberProperty) property;
- np.setValue(protocolProperty.getNumberValue());
- } else if(property instanceof BinaryProperty){
- BinaryProperty bp = (BinaryProperty) property;
- bp.setValue(protocolProperty.getByteFile());
- bp.setFileName(protocolProperty.getFile());
- } else if(property instanceof BooleanProperty){
- BooleanProperty bp = (BooleanProperty) property;
- bp.setValue(protocolProperty.getBooleanValue());
- }
- break;
- }
- }
- }
- }
- public static void mergeProtocolPropertiesConfig (ProtocolProperties protocolProperties, List<org.openspcoop2.core.config.ProtocolProperty> listaProtocolPropertiesDaDB, ConsoleOperationType consoleOperationType){
-
- if(consoleOperationType!=null) {
- // nop
- }
-
- for (int i = 0; i < protocolProperties.sizeProperties(); i++) {
- AbstractProperty<?> property = protocolProperties.getProperty(i);
- for (org.openspcoop2.core.config.ProtocolProperty protocolProperty : listaProtocolPropertiesDaDB) {
- if(property.getId().equals(protocolProperty.getName())){
- if(property instanceof StringProperty){
- StringProperty sp = (StringProperty) property;
- sp.setValue(protocolProperty.getValue());
- } else if(property instanceof NumberProperty){
- NumberProperty np = (NumberProperty) property;
- np.setValue(protocolProperty.getNumberValue());
- } else if(property instanceof BinaryProperty){
- BinaryProperty bp = (BinaryProperty) property;
- bp.setValue(protocolProperty.getByteFile());
- bp.setFileName(protocolProperty.getFile());
- } else if(property instanceof BooleanProperty){
- BooleanProperty bp = (BooleanProperty) property;
- bp.setValue(protocolProperty.getBooleanValue());
- }
- break;
- }
- }
- }
- }
- public static ProtocolProperty getProtocolPropertyRegistry (String propertyId , List<ProtocolProperty> listaProtocolPropertiesDaDB){
- if(listaProtocolPropertiesDaDB == null || propertyId == null)
- return null;
-
- for (ProtocolProperty protocolProperty : listaProtocolPropertiesDaDB) {
- if(propertyId.equals(protocolProperty.getName())){
- return protocolProperty;
- }
- }
-
- return null;
- }
- public static org.openspcoop2.core.config.ProtocolProperty getProtocolPropertyConfig (String propertyId , List<org.openspcoop2.core.config.ProtocolProperty> listaProtocolPropertiesDaDB){
- if(listaProtocolPropertiesDaDB == null || propertyId == null)
- return null;
-
- for (org.openspcoop2.core.config.ProtocolProperty protocolProperty : listaProtocolPropertiesDaDB) {
- if(propertyId.equals(protocolProperty.getName())){
- return protocolProperty;
- }
- }
-
- return null;
- }
-
-
- public static String getRequiredStringValuePropertyRegistry(List<ProtocolProperty> list, String propertyName) throws ProtocolException{
- String value = getStringValuePropertyRegistry(list, propertyName, true);
- if(value==null){
- throw new ProtocolException("Property ["+propertyName+"] with null value?");
- }
- return value;
- }
- public static String getOptionalStringValuePropertyRegistry(List<ProtocolProperty> list, String propertyName) throws ProtocolException{
- String value = getStringValuePropertyRegistry(list, propertyName, false);
- return value;
- }
- private static String getStringValuePropertyRegistry(List<ProtocolProperty> list, String propertyName, boolean throwNotFoundException) throws ProtocolException{
-
- ProtocolProperty pp = getProtocolPropertyRegistry(list, propertyName, throwNotFoundException);
- if(pp!=null){
- return pp.getValue();
- }
- if(throwNotFoundException){
- throw new ProtocolException("Property ["+propertyName+"] not found");
- }
- else{
- return null;
- }
-
- }
- public static String getRequiredStringValuePropertyConfig(List<org.openspcoop2.core.config.ProtocolProperty> list, String propertyName) throws ProtocolException{
- String value = getStringValuePropertyConfig(list, propertyName, true);
- if(value==null){
- throw new ProtocolException("Property ["+propertyName+"] with null value?");
- }
- return value;
- }
- public static String getOptionalStringValuePropertyConfig(List<org.openspcoop2.core.config.ProtocolProperty> list, String propertyName) throws ProtocolException{
- String value = getStringValuePropertyConfig(list, propertyName, false);
- return value;
- }
- private static String getStringValuePropertyConfig(List<org.openspcoop2.core.config.ProtocolProperty> list, String propertyName, boolean throwNotFoundException) throws ProtocolException{
-
- org.openspcoop2.core.config.ProtocolProperty pp = getProtocolPropertyConfig(list, propertyName, throwNotFoundException);
- if(pp!=null){
- return pp.getValue();
- }
- if(throwNotFoundException){
- throw new ProtocolException("Property ["+propertyName+"] not found");
- }
- else{
- return null;
- }
-
- }
-
- public static byte[] getRequiredBinaryValuePropertyRegistry(List<ProtocolProperty> list, String propertyName) throws ProtocolException{
- byte[] value = getBinaryValuePropertyRegistry(list, propertyName, true);
- if(value==null){
- throw new ProtocolException("Property ["+propertyName+"] with null value?");
- }
- return value;
- }
- public static byte[] getOptionalBinaryValuePropertyRegistry(List<ProtocolProperty> list, String propertyName) throws ProtocolException{
- byte[] value = getBinaryValuePropertyRegistry(list, propertyName, false);
- return value;
- }
- private static byte[] getBinaryValuePropertyRegistry(List<ProtocolProperty> list, String propertyName, boolean throwNotFoundException) throws ProtocolException{
-
- ProtocolProperty pp = getProtocolPropertyRegistry(list, propertyName, throwNotFoundException);
- if(pp!=null){
- return pp.getByteFile();
- }
- if(throwNotFoundException){
- throw new ProtocolException("Property ["+propertyName+"] not found");
- }
- else{
- return null;
- }
-
- }
- public static byte[] getRequiredBinaryValuePropertyConfig(List<org.openspcoop2.core.config.ProtocolProperty> list, String propertyName) throws ProtocolException{
- byte[] value = getBinaryValuePropertyConfig(list, propertyName, true);
- if(value==null){
- throw new ProtocolException("Property ["+propertyName+"] with null value?");
- }
- return value;
- }
- public static byte[] getOptionalBinaryValuePropertyConfig(List<org.openspcoop2.core.config.ProtocolProperty> list, String propertyName) throws ProtocolException{
- byte[] value = getBinaryValuePropertyConfig(list, propertyName, false);
- return value;
- }
- private static byte[] getBinaryValuePropertyConfig(List<org.openspcoop2.core.config.ProtocolProperty> list, String propertyName, boolean throwNotFoundException) throws ProtocolException{
-
- org.openspcoop2.core.config.ProtocolProperty pp = getProtocolPropertyConfig(list, propertyName, throwNotFoundException);
- if(pp!=null){
- return pp.getByteFile();
- }
- if(throwNotFoundException){
- throw new ProtocolException("Property ["+propertyName+"] not found");
- }
- else{
- return null;
- }
-
- }
-
- public static BooleanNullable getOptionalBooleanValuePropertyRegistry(List<ProtocolProperty> list, String propertyName) throws ProtocolException{
-
- ProtocolProperty pp = getProtocolPropertyRegistry(list, propertyName, false);
- if(pp!=null && pp.getBooleanValue()!=null){
- return pp.getBooleanValue() ? BooleanNullable.TRUE() : BooleanNullable.FALSE();
- }
- return BooleanNullable.NULL();
-
- }
- public static BooleanNullable getOptionalBooleanValuePropertyConfig(List<org.openspcoop2.core.config.ProtocolProperty> list, String propertyName) throws ProtocolException{
-
- org.openspcoop2.core.config.ProtocolProperty pp = getProtocolPropertyConfig(list, propertyName, false);
- if(pp!=null && pp.getBooleanValue()!=null){
- return pp.getBooleanValue() ? BooleanNullable.TRUE() : BooleanNullable.FALSE();
- }
- return BooleanNullable.NULL();
-
- }
- public static boolean getBooleanValuePropertyRegistry(List<ProtocolProperty> list, String propertyName, boolean throwNotFoundException) throws ProtocolException{
-
- ProtocolProperty pp = getProtocolPropertyRegistry(list, propertyName, throwNotFoundException);
- if(pp!=null){
- return pp.getBooleanValue()!=null ? pp.getBooleanValue() : false;
- }
- if(throwNotFoundException){
- throw new ProtocolException("Property ["+propertyName+"] not found");
- }
- else{
- return false;
- }
-
- }
- public static boolean getBooleanValuePropertyConfig(List<org.openspcoop2.core.config.ProtocolProperty> list, String propertyName, boolean throwNotFoundException) throws ProtocolException{
-
- org.openspcoop2.core.config.ProtocolProperty pp = getProtocolPropertyConfig(list, propertyName, throwNotFoundException);
- if(pp!=null){
- return pp.getBooleanValue()!=null ? pp.getBooleanValue() : false;
- }
- if(throwNotFoundException){
- throw new ProtocolException("Property ["+propertyName+"] not found");
- }
- else{
- return false;
- }
-
- }
-
-
- public static Long getRequiredNumberValuePropertyRegistry(List<ProtocolProperty> list, String propertyName, boolean greatherThanZero) throws ProtocolException{
- Long value = getNumberValuePropertyRegistry(list, propertyName, true, greatherThanZero);
- if(value==null){
- throw new ProtocolException("Property ["+propertyName+"] with null value?");
- }
- return value;
- }
- public static Long getOptionalNumberValuePropertyRegistry(List<ProtocolProperty> list, String propertyName, boolean greatherThanZero) throws ProtocolException{
- Long value = getNumberValuePropertyRegistry(list, propertyName, false, greatherThanZero);
- return value;
- }
- private static Long getNumberValuePropertyRegistry(List<ProtocolProperty> list, String propertyName, boolean throwNotFoundException, boolean greatherThanZero) throws ProtocolException{
-
- ProtocolProperty pp = getProtocolPropertyRegistry(list, propertyName, throwNotFoundException);
- if(pp!=null){
- Long value = pp.getNumberValue();
- if(value!=null && greatherThanZero) {
- if(value <=0) {
- throw new ProtocolException("Property ["+propertyName+"] must be greatherThanZero");
- }
- }
- return value;
- }
- if(throwNotFoundException){
- throw new ProtocolException("Property ["+propertyName+"] not found");
- }
- else{
- return null;
- }
-
- }
- public static Long getRequiredNumberValuePropertyConfig(List<org.openspcoop2.core.config.ProtocolProperty> list, String propertyName) throws ProtocolException{
- Long value = getNumberValuePropertyConfig(list, propertyName, true);
- if(value==null){
- throw new ProtocolException("Property ["+propertyName+"] with null value?");
- }
- return value;
- }
- public static Long getOptionalNumberValuePropertyConfig(List<org.openspcoop2.core.config.ProtocolProperty> list, String propertyName) throws ProtocolException{
- Long value = getNumberValuePropertyConfig(list, propertyName, false);
- return value;
- }
- private static Long getNumberValuePropertyConfig(List<org.openspcoop2.core.config.ProtocolProperty> list, String propertyName, boolean throwNotFoundException) throws ProtocolException{
-
- org.openspcoop2.core.config.ProtocolProperty pp = getProtocolPropertyConfig(list, propertyName, throwNotFoundException);
- if(pp!=null){
- return pp.getNumberValue();
- }
- if(throwNotFoundException){
- throw new ProtocolException("Property ["+propertyName+"] not found");
- }
- else{
- return null;
- }
-
- }
-
-
- public static ProtocolProperty getProtocolPropertyRegistry(List<ProtocolProperty> list, String propertyName, boolean throwNotFoundException) throws ProtocolException{
-
- if(list==null || list.size()<=0){
- return null;
- }
- for (ProtocolProperty protocolProperty : list) {
- if(propertyName.equals(protocolProperty.getName())){
- return protocolProperty;
- }
- }
-
- if(throwNotFoundException){
- throw new ProtocolException("Property ["+propertyName+"] not found");
- }
- else{
- return null;
- }
- }
- public static org.openspcoop2.core.config.ProtocolProperty getProtocolPropertyConfig(List<org.openspcoop2.core.config.ProtocolProperty> list, String propertyName, boolean throwNotFoundException) throws ProtocolException{
-
- if(list==null || list.size()<=0){
- return null;
- }
- for (org.openspcoop2.core.config.ProtocolProperty protocolProperty : list) {
- if(propertyName.equals(protocolProperty.getName())){
- return protocolProperty;
- }
- }
-
- if(throwNotFoundException){
- throw new ProtocolException("Property ["+propertyName+"] not found");
- }
- else{
- return null;
- }
- }
- public static Proprieta getProtocolPropertySDK(List<Proprieta> list, String propertyName, boolean throwNotFoundException) throws ProtocolException{
-
- if(list==null || list.size()<=0){
- return null;
- }
- for (Proprieta protocolProperty : list) {
- if(propertyName.equals(protocolProperty.getNome())){
- return protocolProperty;
- }
- }
-
- if(throwNotFoundException){
- throw new ProtocolException("Property ["+propertyName+"] not found");
- }
- else{
- return null;
- }
- }
-
- public static List<ProtocolProperty> getProtocolProperties(boolean fruizione, IDSoggetto soggettoFruitore, AccordoServizioParteSpecifica asps) throws ProtocolException {
- List<ProtocolProperty> listProtocolProperties = null;
- Fruitore fruitore = null;
- if(fruizione) {
- fruitore = getFruitore(soggettoFruitore, asps);
- listProtocolProperties = fruitore.getProtocolPropertyList();
- }
- else {
- listProtocolProperties = asps.getProtocolPropertyList();
- }
- return listProtocolProperties;
- }
-
- public static Fruitore getFruitore(IDSoggetto soggettoFruitore, AccordoServizioParteSpecifica asps) throws ProtocolException {
- if(soggettoFruitore==null) {
- throw new ProtocolException("Fruitore non fornito");
- }
- Fruitore fruitore = null;
- boolean find = false;
- for (Fruitore fruitoreCheck : asps.getFruitoreList()) {
- if(fruitoreCheck.getTipo().equals(soggettoFruitore.getTipo()) && fruitoreCheck.getNome().equals(soggettoFruitore.getNome())) {
- fruitore = fruitoreCheck;
- find = true;
- break;
- }
- }
- if(!find) {
- throw new ProtocolException("Fruitore '"+soggettoFruitore+"' non registrato come fruitore dell'accordo parte specifica");
- }
- return fruitore;
- }
- }