Servizio.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;
- import java.util.Date;
- import org.openspcoop2.core.id.IDAccordo;
- import org.openspcoop2.core.id.IDServizio;
- import org.openspcoop2.core.id.IDSoggetto;
- import org.openspcoop2.message.constants.ServiceBinding;
- import org.openspcoop2.protocol.sdk.constants.Inoltro;
- import org.openspcoop2.protocol.sdk.constants.ProfiloDiCollaborazione;
- /**
- * Classe utilizzata per rappresentare un Servizio presente all'interno
- * del Registro dei Servizi.
- *
- *
- * @author Poli Andrea (apoli@link.it)
- * @author $Author$
- * @version $Rev$, $Date$
- */
- public class Servizio implements java.io.Serializable {
- /**
- * serialVersionUID
- */
- private static final long serialVersionUID = 1L;
- /* ******** F I E L D S P R I V A T I ******** */
- /** Identificatore del Servizio nel registro dei servizi. */
- private IDServizio idServizio;
- /** IDAccordo del servizio */
- private IDAccordo idAccordo;
- private ServiceBinding serviceBinding;
- /** Profilo di Collaborazione. */
- private ProfiloDiCollaborazione profiloDiCollaborazione;
- /** Utilizzo di un ID-Collaborazione. */
- private boolean idCollaborazione;
- /** Utilizzo di per riferimento alla richiesta */
- private boolean idRiferimentoRichiesta;
- /** Consegna in ordine. */
- private boolean ordineConsegna;
- /** Scadenza (null se non presente) */
- private Date scadenza;
- /** Scadenza */
- private long scadenzaMinuti = -1;
- /** attributo 'inoltro' del profilo di trasmissione. */
- private Inoltro inoltro;
- /** attributo 'confermaRicezione' del profilo di trasmissione. */
- private boolean confermaRicezione;
- /** Tipo Servizio Correlato associato al servizio */
- private String tipoServizioCorrelato;
- /** Servizio Correlato associato al servizio */
- private String servizioCorrelato;
- /** Versione Servizio Correlato associato al servizio */
- private Integer versioneServizioCorrelato;
- /** Indicazione se e' un servizio correlato */
- private boolean correlato;
-
-
- public Busta convertToBusta(String protocollo,IDSoggetto fruitore){
- Busta busta = new Busta(protocollo);
- if(fruitore!=null){
- busta.setTipoMittente(fruitore.getTipo());
- busta.setMittente(fruitore.getNome());
- busta.setIdentificativoPortaMittente(fruitore.getCodicePorta());
- }
- if(this.idServizio!=null){
- if(this.idServizio.getSoggettoErogatore()!=null){
- busta.setTipoDestinatario(this.idServizio.getSoggettoErogatore().getTipo());
- busta.setDestinatario(this.idServizio.getSoggettoErogatore().getNome());
- busta.setIdentificativoPortaDestinatario(this.idServizio.getSoggettoErogatore().getCodicePorta());
- }
- busta.setTipoServizio(this.idServizio.getTipo());
- busta.setServizio(this.idServizio.getNome());
- busta.setVersioneServizio(this.idServizio.getVersione());
- busta.setAzione(this.idServizio.getAzione());
- }
- busta.setProfiloDiCollaborazione(this.profiloDiCollaborazione);
- busta.setInoltro(this.inoltro);
- busta.setConfermaRicezione(this.confermaRicezione);
- busta.setTipoServizioCorrelato(this.tipoServizioCorrelato);
- busta.setServizioCorrelato(this.servizioCorrelato);
- busta.setVersioneServizioCorrelato(this.versioneServizioCorrelato);
- return busta;
- }
-
-
-
-
-
- /* ******** C O S T R U T T O R E ******** */
- /**
- * Costruttore.
- *
- *
- */
- public Servizio(){
- }
- /* ******** S E T T E R ******** */
- /**
- * Imposta l'identificatore del Servizio nel registro dei servizi.
- *
- * @param idServizio Identificatore del Servizio.
- *
- */
- public void setIDServizio(IDServizio idServizio){
- this.idServizio = idServizio;
- }
- /**
- * Imposta il profilo di Collaborazione associato al servizio registrato nel Registro dei Servizi.
- *
- * @param p Profili di Collaborazione.
- *
- */
- public void setProfiloDiCollaborazione(ProfiloDiCollaborazione p ){
- this.profiloDiCollaborazione = p;
- }
- /**
- * Imposta la presenza o meno della collaborazione nel servizio registrato nel Registro dei Servizi.
- *
- * @param c true se la collaborazione e' presente, false altrimenti.
- *
- */
- public void setCollaborazione(boolean c ){
- this.idCollaborazione = c;
- }
- public void setIdRiferimentoRichiesta(boolean c ){
- this.idRiferimentoRichiesta = c;
- }
- /**
- * Imposta l'utilizzo della funzionalita' di consegna in ordine nel servizio registrato nel Registro dei Servizi.
- *
- * @param s true se la sequenza e' presente, false altrimenti.
- *
- */
- public void setOrdineConsegna(boolean s){
- this.ordineConsegna = s;
- }
- /**
- * Imposta la scadenza associata al servizio registrato nel Registro dei Servizi.
- *
- * @param s null se non e' presente una scadenza, la data di scadenza altrimenti.
- *
- */
- public void setScadenza(Date s){
- this.scadenza = s;
- }
- /**
- * Imposta il tipo di inoltro del profilo di trasmissione associato al servizio registrato nel Registro dei Servizi.
- *
- * @param i tipo di Inoltro.
- *
- */
- public void setInoltro(Inoltro i ){
- this.inoltro = i;
- }
- /**
- * Imposta la confermaRicezione o meno del profilo di trasmissione associato al servizio registrato nel Registro dei Servizi.
- *
- * @param cr true se si desidera una confermaRicezione, false altrimenti.
- *
- */
- public void setConfermaRicezione(boolean cr){
- this.confermaRicezione = cr;
- }
- /**
- * Imposta il servizio correlato associato al servizio
- *
- * @param nome Servizio Correlato
- *
- */
- public void setServizioCorrelato(String nome){
- this.servizioCorrelato = nome;
- }
- /**
- * Imposta il tipo di servizio correlato associato al servizio
- *
- * @param tipoServizioCorrelato Tipo di Servizio Correlato
- *
- */
- public void setTipoServizioCorrelato(String tipoServizioCorrelato) {
- this.tipoServizioCorrelato = tipoServizioCorrelato;
- }
-
- public void setVersioneServizioCorrelato(Integer versioneServizioCorrelato) {
- this.versioneServizioCorrelato = versioneServizioCorrelato;
- }
-
- public void setCorrelato(boolean correlato) {
- this.correlato = correlato;
- }
-
- public void setScadenzaMinuti(long scadenzaMinuti) {
- this.scadenzaMinuti = scadenzaMinuti;
- }
-
-
- /* ******** G E T T E R ******** */
- /**
- * Ritorna l'identificatore del Servizio nel registro dei servizi.
- *
- * @return Identificatore del Servizio.
- *
- */
- public IDServizio getIDServizio(){
- return this.idServizio;
- }
- /**
- * Ritorna il profilo di Collaborazione associato al servizio registrato nel Registro dei Servizi.
- *
- * @return Profili di Collaborazione.
- *
- */
- public ProfiloDiCollaborazione getProfiloDiCollaborazione(){
- return this.profiloDiCollaborazione;
- }
- /**
- * Ritorna la presenza o meno della collaborazione nel servizio registrato nel Registro dei Servizi.
- *
- * @return true se la collaborazione e' presente, false altrimenti.
- *
- */
- public boolean getCollaborazione(){
- return this.idCollaborazione;
- }
- public boolean getIdRiferimentoRichiesta(){
- return this.idRiferimentoRichiesta;
- }
- /**
- * Ritorna l'indicazione sull'utilizzo o meno della consegna in ordine nel servizio registrato nel Registro dei Servizi.
- *
- * @return true se la sequenza e' presente, false altrimenti.
- *
- */
- public boolean getOrdineConsegna(){
- return this.ordineConsegna;
- }
- /**
- * Ritorna la scadenza associata al servizio registrato nel Registro dei Servizi.
- *
- * @return null se non e' presente una scadenza, la data di scadenza, altrimenti.
- *
- */
- public Date getScadenza(){
- return this.scadenza;
- }
- /**
- * Ritorna il tipo di inoltro del profilo di trasmissione associato al servizio registrato nel Registro dei Servizi.
- *
- * @return tipo di Inoltro.
- *
- */
- public Inoltro getInoltro(){
- return this.inoltro;
- }
- /**
- * Ritorna la confermaRicezione o meno del profilo di trasmissione associato al servizio registrato nel Registro dei Servizi.
- *
- * @return true se si desidera una confermaRicezione, false altrimenti.
- *
- */
- public boolean getConfermaRicezione(){
- return this.confermaRicezione;
- }
- /**
- * Ritorna il servizio correlato associato al servizio
- *
- * @return Servizio Correlato
- *
- */
- public String getServizioCorrelato(){
- return this.servizioCorrelato;
- }
- /**
- * Ritorna il tipo di servizio correlato associato al servizio
- *
- * @return Tipo di Servizio Correlato
- *
- */
- public String getTipoServizioCorrelato() {
- return this.tipoServizioCorrelato;
- }
-
- public Integer getVersioneServizioCorrelato() {
- return this.versioneServizioCorrelato;
- }
- public boolean isCorrelato() {
- return this.correlato;
- }
- public long getScadenzaMinuti() {
- return this.scadenzaMinuti;
- }
- public IDAccordo getIdAccordo() {
- return this.idAccordo;
- }
-
- public void setIdAccordo(IDAccordo idAccordo) {
- this.idAccordo = idAccordo;
- }
-
- public ServiceBinding getServiceBinding() {
- return this.serviceBinding;
- }
- public void setServiceBinding(ServiceBinding serviceBinding) {
- this.serviceBinding = serviceBinding;
- }
- }