Coverage Summary for Class: ImportConfiguration (org.kitodo.data.database.beans)

Class Method, % Line, %
ImportConfiguration 61,3% (46/75) 58,2% (57/98)
ImportConfiguration$HibernateProxy$SxG0gqwU
ImportConfiguration$HibernateProxy$XUYEbMZm
Total 61,3% (46/75) 58,2% (57/98)


 /*
  * (c) Kitodo. Key to digital objects e. V. <contact@kitodo.org>
  *
  * This file is part of the Kitodo project.
  *
  * It is licensed under GNU General Public License version 3 or later.
  *
  * For the full copyright and license information, please read the
  * GPL3-License.txt file that was distributed with this source code.
  */
 
 package org.kitodo.data.database.beans;
 
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Objects;
 
 import javax.persistence.CascadeType;
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.ForeignKey;
 import javax.persistence.JoinColumn;
 import javax.persistence.JoinTable;
 import javax.persistence.ManyToMany;
 import javax.persistence.ManyToOne;
 import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
 import javax.persistence.OrderColumn;
 import javax.persistence.Table;
 
 import org.apache.commons.lang3.StringUtils;
 import org.kitodo.api.externaldatamanagement.ImportConfigurationType;
 import org.kitodo.data.database.persistence.MappingFileDAO;
 import org.kitodo.data.database.persistence.SearchFieldDAO;
 import org.kitodo.data.database.persistence.UrlParameterDAO;
 
 @Entity(name = "ImportConfiguration")
 @Table(name = "importconfiguration")
 public class ImportConfiguration extends BaseBean {
 
     @Column
     private String title;
 
     @Column
     private String description;
 
     @Column(name = "configuration_type")
     private String configurationType;
 
     @Column(name = "prestructured_import")
     private Boolean prestructuredImport = false;
 
     @Column(name = "interface_type")
     private String interfaceType;
 
     @Column(name = "return_format")
     private String returnFormat;
 
     @Column(name = "metadata_format")
     private String metadataFormat;
 
     @Column(name = "default_import_depth")
     private Integer defaultImportDepth;
 
     @Column(name = "parent_element_trim_mode")
     private String parentElementTrimMode;
 
     @Column
     private String host;
 
     @Column
     private String scheme;
 
     @Column
     private String path;
 
     @Column
     private Integer port;
 
     @Column(name = "anonymous_access")
     private boolean anonymousAccess = false;
 
     @Column
     private String username;
 
     @Column
     private String password;
 
     @Column(name = "query_delimiter")
     private String queryDelimiter;
 
     @Column(name = "item_field_xpath")
     private String itemFieldXpath;
 
     @Column(name = "item_field_owner_sub_path")
     private String itemFieldOwnerSubPath;
 
     @Column(name = "item_field_owner_metadata")
     private String itemFieldOwnerMetadata;
 
     @Column(name = "item_field_signature_sub_path")
     private String itemFieldSignatureSubPath;
 
     @Column(name = "item_field_signature_metadata")
     private String itemFieldSignatureMetadata;
 
     @Column(name = "id_prefix")
     private String idPrefix;
 
     @OneToMany(mappedBy = "importConfiguration", cascade = CascadeType.ALL, orphanRemoval = true)
     private List<SearchField> searchFields;
 
     @OneToMany(mappedBy = "importConfiguration", cascade = CascadeType.ALL, orphanRemoval = true)
     private List<UrlParameter> urlParameters;
 
     @OneToOne(cascade = CascadeType.PERSIST)
     @JoinColumn(name = "default_searchfield_id", referencedColumnName = "id")
     private SearchField defaultSearchField;
 
     @OneToOne(cascade = CascadeType.PERSIST)
     @JoinColumn(name = "identifier_searchfield_id", referencedColumnName = "id")
     private SearchField idSearchField;
 
     @OneToOne(cascade = CascadeType.PERSIST)
     @JoinColumn(name = "parent_searchfield_id", referencedColumnName = "id")
     private SearchField parentSearchField;
 
     @ManyToOne
     @JoinColumn(name = "default_templateprocess_id", foreignKey = @ForeignKey(name = "FK_importconfiguration_process_id"))
     private Process defaultTemplateProcess;
 
     @ManyToMany(cascade = CascadeType.PERSIST)
     @OrderColumn(name = "sorting")
     @JoinTable(name = "importconfiguration_x_mappingfile", joinColumns = {
         @JoinColumn(name = "importconfiguration_id",
                 foreignKey = @ForeignKey(name = "FK_importconfiguration_x_mappingfile_importconfiguration_id")) },
             inverseJoinColumns = {
                 @JoinColumn(name = "mappingfile_id",
                     foreignKey = @ForeignKey(name = "FK_importconfiguration_x_mappingfile_mappingfile_id")) })
     private List<MappingFile> mappingFiles;
 
     @ManyToOne
     @JoinColumn(name = "parent_mappingfile_id", foreignKey = @ForeignKey(name = "FK_parent_mappingfile_id"))
     private MappingFile parentMappingFile;
 
     @Column(name = "sru_version")
     private String sruVersion;
 
     @Column(name = "sru_record_schema")
     private String sruRecordSchema;
 
     @Column(name = "oai_metadata_prefix")
     private String oaiMetadataPrefix;
 
     @Column(name = "metadata_record_id_xpath")
     private String metadataRecordIdXPath;
 
     @Column(name = "metadata_record_title_xpath")
     private String metadataRecordTitleXPath;
 
     /**
      * Default constructor.
      */
     public ImportConfiguration() {
         defaultImportDepth = 2;
         searchFields = new ArrayList<>();
     }
 
     /**
      * Get title.
      *
      * @return value of title
      */
     public String getTitle() {
         return title;
     }
 
     /**
      * Set title.
      *
      * @param title as java.lang.String
      */
     public void setTitle(String title) {
         this.title = title;
     }
 
     /**
      * Get description.
      *
      * @return value of description
      */
     public String getDescription() {
         return description;
     }
 
     /**
      * Get configurationType.
      *
      * @return value of configurationType
      */
     public String getConfigurationType() {
         return configurationType;
     }
 
     /**
      * Set configurationType.
      *
      * @param configurationType as java.lang.String
      */
     public void setConfigurationType(String configurationType) {
         this.configurationType = configurationType;
     }
 
     /**
      * Set description.
      *
      * @param description as java.lang.String
      */
     public void setDescription(String description) {
         this.description = description;
     }
 
     /**
      * Get prestructuredImport.
      *
      * @return value of prestructuredImport
      */
     public Boolean getPrestructuredImport() {
         return prestructuredImport;
     }
 
     /**
      * Set prestructuredImport.
      *
      * @param prestructuredImport as java.lang.Boolean
      */
     public void setPrestructuredImport(Boolean prestructuredImport) {
         this.prestructuredImport = prestructuredImport;
     }
 
     /**
      * Get interfaceType.
      *
      * @return value of interfaceType
      */
     public String getInterfaceType() {
         return interfaceType;
     }
 
     /**
      * Set interfaceType.
      *
      * @param interfaceType as java.lang.String
      */
     public void setInterfaceType(String interfaceType) {
         this.interfaceType = interfaceType;
     }
 
     /**
      * Get returnFormat.
      *
      * @return value of returnFormat
      */
     public String getReturnFormat() {
         return returnFormat;
     }
 
     /**
      * Set returnFormat.
      *
      * @param returnFormat as java.lang.String
      */
     public void setReturnFormat(String returnFormat) {
         this.returnFormat = returnFormat;
     }
 
     /**
      * Get metadataFormat.
      *
      * @return value of metadataFormat
      */
     public String getMetadataFormat() {
         return metadataFormat;
     }
 
     /**
      * Set metadataFormat.
      *
      * @param metadataFormat as java.lang.String
      */
     public void setMetadataFormat(String metadataFormat) {
         this.metadataFormat = metadataFormat;
     }
 
     /**
      * Get defaultImportDepth.
      *
      * @return value of defaultImportDepth
      */
     public Integer getDefaultImportDepth() {
         return defaultImportDepth;
     }
 
     /**
      * Set defaultImportDepth.
      *
      * @param defaultImportDepth as java.lang.Integer
      */
     public void setDefaultImportDepth(Integer defaultImportDepth) {
         this.defaultImportDepth = defaultImportDepth;
     }
 
     /**
      * Get host.
      *
      * @return value of host
      */
     public String getHost() {
         return host;
     }
 
     /**
      * Set host.
      *
      * @param host as java.lang.String
      */
     public void setHost(String host) {
         this.host = host;
     }
 
     /**
      * Get scheme.
      *
      * @return value of scheme
      */
     public String getScheme() {
         return scheme;
     }
 
     /**
      * Set scheme.
      *
      * @param scheme as java.lang.String
      */
     public void setScheme(String scheme) {
         this.scheme = scheme;
     }
 
     /**
      * Get path.
      *
      * @return value of path
      */
     public String getPath() {
         return path;
     }
 
     /**
      * Set path.
      *
      * @param path as java.lang.String
      */
     public void setPath(String path) {
         this.path = path;
     }
 
     /**
      * Get port.
      *
      * @return value of port
      */
     public Integer getPort() {
         return port;
     }
 
     /**
      * Set port.
      *
      * @param port as java.lang.Integer
      */
     public void setPort(Integer port) {
         this.port = port;
     }
 
     /**
      * Get anonymousAccess.
      *
      * @return value of anonymousAccess
      */
     public boolean isAnonymousAccess() {
         return anonymousAccess;
     }
 
     /**
      * Set anonymousAccess.
      *
      * @param anonymousAccess as boolean
      */
     public void setAnonymousAccess(boolean anonymousAccess) {
         this.anonymousAccess = anonymousAccess;
     }
 
     /**
      * Get username.
      *
      * @return value of username
      */
     public String getUsername() {
         return username;
     }
 
     /**
      * Set username.
      *
      * @param username as java.lang.String
      */
     public void setUsername(String username) {
         this.username = username;
     }
 
     /**
      * Get password.
      *
      * @return value of password
      */
     public String getPassword() {
         return password;
     }
 
     /**
      * Set password.
      *
      * @param password as java.lang.String
      */
     public void setPassword(String password) {
         this.password = password;
     }
 
     /**
      * Get parentElementTrimMode.
      *
      * @return value of parentElementTrimMode
      */
     public String getParentElementTrimMode() {
         return parentElementTrimMode;
     }
 
     /**
      * Set parentElementTrimMode.
      *
      * @param parentElementTrimMode as java.lang.String
      */
     public void setParentElementTrimMode(String parentElementTrimMode) {
         this.parentElementTrimMode = parentElementTrimMode;
     }
 
     /**
      * Get queryDelimiter.
      *
      * @return value of queryDelimiter
      */
     public String getQueryDelimiter() {
         return queryDelimiter;
     }
 
     /**
      * Set queryDelimiter.
      *
      * @param queryDelimiter as java.lang.String
      */
     public void setQueryDelimiter(String queryDelimiter) {
         this.queryDelimiter = queryDelimiter;
     }
 
     /**
      * Get itemFieldXpath.
      *
      * @return value of itemFieldXpath
      */
     public String getItemFieldXpath() {
         return itemFieldXpath;
     }
 
     /**
      * Set itemFieldXpath.
      *
      * @param itemFieldXpath as java.lang.String
      */
     public void setItemFieldXpath(String itemFieldXpath) {
         this.itemFieldXpath = itemFieldXpath;
     }
 
     /**
      * Get itemFieldOwnerSubPath.
      *
      * @return value of itemFieldOwnerSubPath
      */
     public String getItemFieldOwnerSubPath() {
         return itemFieldOwnerSubPath;
     }
 
     /**
      * Set itemFieldOwnerSubPath.
      *
      * @param itemFieldOwnerSubPath as java.lang.String
      */
     public void setItemFieldOwnerSubPath(String itemFieldOwnerSubPath) {
         this.itemFieldOwnerSubPath = itemFieldOwnerSubPath;
     }
 
     /**
      * Get itemFieldOwnerMetadata.
      *
      * @return value of itemFieldOwnerMetadata
      */
     public String getItemFieldOwnerMetadata() {
         return itemFieldOwnerMetadata;
     }
 
     /**
      * Set itemFieldOwnerMetadata.
      *
      * @param itemFieldOwnerMetadata as java.lang.String
      */
     public void setItemFieldOwnerMetadata(String itemFieldOwnerMetadata) {
         this.itemFieldOwnerMetadata = itemFieldOwnerMetadata;
     }
 
     /**
      * Get itemFieldSignatureSubPath.
      *
      * @return value of itemFieldSignatureSubPath
      */
     public String getItemFieldSignatureSubPath() {
         return itemFieldSignatureSubPath;
     }
 
     /**
      * Set itemFieldSignatureSubPath.
      *
      * @param itemFieldSignatureSubPath as java.lang.String
      */
     public void setItemFieldSignatureSubPath(String itemFieldSignatureSubPath) {
         this.itemFieldSignatureSubPath = itemFieldSignatureSubPath;
     }
 
     /**
      * Get itemFieldSignatureMetadata.
      *
      * @return value of itemFieldSignatureMetadata
      */
     public String getItemFieldSignatureMetadata() {
         return itemFieldSignatureMetadata;
     }
 
     /**
      * Set itemFieldSignatureMetadata.
      *
      * @param itemFieldSignatureMetadata as java.lang.String
      */
     public void setItemFieldSignatureMetadata(String itemFieldSignatureMetadata) {
         this.itemFieldSignatureMetadata = itemFieldSignatureMetadata;
     }
 
     /**
      * Get idPrefix.
      *
      * @return value of idPrefix
      */
     public String getIdPrefix() {
         return idPrefix;
     }
 
     /**
      * Set idPrefix.
      *
      * @param idPrefix as java.lang.String
      */
     public void setIdPrefix(String idPrefix) {
         this.idPrefix = idPrefix;
     }
 
     /**
      * Get searchFields.
      *
      * @return value of searchFields
      */
     public List<SearchField> getSearchFields() {
         initialize(new SearchFieldDAO(), this.searchFields);
         if (Objects.isNull(this.searchFields)) {
             this.searchFields = new ArrayList<>();
         }
         return searchFields;
     }
 
     /**
      * Set searchFields.
      *
      * @param searchFields List of SearchField
      */
     public void setSearchFields(List<SearchField> searchFields) {
         this.searchFields = searchFields;
     }
 
     /**
      * Get urlParameters.
      *
      * @return value of urlParameters
      */
     public List<UrlParameter> getUrlParameters() {
         initialize(new UrlParameterDAO(), this.urlParameters);
         if (Objects.isNull(this.urlParameters)) {
             this.urlParameters = new ArrayList<>();
         }
         return urlParameters;
     }
 
     /**
      * Set urlParameters.
      *
      * @param urlParameters as List of UrlParameter
      */
     public void setUrlParameters(List<UrlParameter> urlParameters) {
         this.urlParameters = urlParameters;
     }
 
     /**
      * Get defaultSearchField.
      *
      * @return value of defaultSearchField
      */
     public SearchField getDefaultSearchField() {
         return defaultSearchField;
     }
 
     /**
      * Set defaultSearchField.
      *
      * @param defaultSearchField default SearchField
      */
     public void setDefaultSearchField(SearchField defaultSearchField) {
         this.defaultSearchField = defaultSearchField;
     }
 
     /**
      * Get idSearchField.
      *
      * @return value of idSearchField
      */
     public SearchField getIdSearchField() {
         return idSearchField;
     }
 
     /**
      * Set idSearchField.
      *
      * @param idSearchField as org.kitodo.data.database.beans.SearchField
      */
     public void setIdSearchField(SearchField idSearchField) {
         this.idSearchField = idSearchField;
     }
 
     /**
      * Get parentSearchField.
      *
      * @return value of parentSearchField
      */
     public SearchField getParentSearchField() {
         return parentSearchField;
     }
 
     /**
      * Set parentSearchField.
      *
      * @param parentSearchField as org.kitodo.data.database.beans.SearchField
      */
     public void setParentSearchField(SearchField parentSearchField) {
         this.parentSearchField = parentSearchField;
     }
 
     /**
      * Get defaultTemplateProcess.
      *
      * @return value of defaultTemplateProcess
      */
     public Process getDefaultTemplateProcess() {
         return defaultTemplateProcess;
     }
 
     /**
      * Set defaultTemplateProcess.
      *
      * @param defaultTemplateProcess as org.kitodo.data.database.beans.Process
      */
     public void setDefaultTemplateProcess(Process defaultTemplateProcess) {
         this.defaultTemplateProcess = defaultTemplateProcess;
     }
 
     /**
      * Get mappingFiles.
      *
      * @return value of mappingFiles
      */
     public List<MappingFile> getMappingFiles() {
         initialize(new MappingFileDAO(), this.mappingFiles);
         if (Objects.isNull(this.mappingFiles)) {
             this.mappingFiles = new ArrayList<>();
         }
         return mappingFiles;
     }
 
     /**
      * Set mappingFiles.
      *
      * @param mappingFiles List of MappingFile
      */
     public void setMappingFiles(List<MappingFile> mappingFiles) {
         this.mappingFiles = mappingFiles;
     }
 
     /**
      * Get parentMappingFile.
      *
      * @return value of parentMappingFile
      */
     public MappingFile getParentMappingFile() {
         return parentMappingFile;
     }
 
     /**
      * Set parentMappingFile.
      *
      * @param parentMappingFile as org.kitodo.data.database.beans.MappingFile
      */
     public void setParentMappingFile(MappingFile parentMappingFile) {
         this.parentMappingFile = parentMappingFile;
     }
 
     /**
      * Get sruVersion.
      *
      * @return value of sruVersion
      */
     public String getSruVersion() {
         return sruVersion;
     }
 
     /**
      * Set sruVersion.
      *
      * @param sruVersion as java.lang.String
      */
     public void setSruVersion(String sruVersion) {
         this.sruVersion = sruVersion;
     }
 
     /**
      * Get sruRecordSchema.
      *
      * @return value of sruRecordSchema
      */
     public String getSruRecordSchema() {
         return sruRecordSchema;
     }
 
     /**
      * Set sruRecordSchema.
      *
      * @param sruRecordSchema as java.lang.String
      */
     public void setSruRecordSchema(String sruRecordSchema) {
         this.sruRecordSchema = sruRecordSchema;
     }
 
     /**
      * Get oaiMetadataPrefix.
      *
      * @return value of oaiMetadataPrefix
      */
     public String getOaiMetadataPrefix() {
         return oaiMetadataPrefix;
     }
 
     /**
      * Set oaiMetadataPrefix.
      *
      * @param oaiMetadataPrefix as java.lang.String
      */
     public void setOaiMetadataPrefix(String oaiMetadataPrefix) {
         this.oaiMetadataPrefix = oaiMetadataPrefix;
     }
 
     /**
      * Get metadataRecordIdXPath.
      *
      * @return value of metadataRecordIdXPath
      */
     public String getMetadataRecordIdXPath() {
         return metadataRecordIdXPath;
     }
 
     /**
      * Set metadataRecordIdXPath.
      *
      * @param metadataRecordIdXPath as java.lang.String
      */
     public void setMetadataRecordIdXPath(String metadataRecordIdXPath) {
         this.metadataRecordIdXPath = metadataRecordIdXPath;
     }
 
     /**
      * Get metadataRecordTitleXPath.
      *
      * @return value of metadataRecordTitleXPath
      */
     public String getMetadataRecordTitleXPath() {
         return metadataRecordTitleXPath;
     }
 
     /**
      * Set metadataRecordTitleXPath.
      *
      * @param metadataRecordTitleXPath as java.lang.String
      */
     public void setMetadataRecordTitleXPath(String metadataRecordTitleXPath) {
         this.metadataRecordTitleXPath = metadataRecordTitleXPath;
     }
 
     /**
      * Get message key of configuration type.
      *
      * @return message key of configuration type
      */
     public String getConfigurationTypeKey() {
         if (StringUtils.isNotBlank(configurationType)) {
             try {
                 return ImportConfigurationType.valueOf(configurationType).getMessageKey();
             } catch (IllegalArgumentException e) {
                 return "";
             }
         }
         return "";
     }
 
     @Override
     public boolean equals(Object object) {
         if (this == object) {
             return true;
         }
         if (object instanceof ImportConfiguration) {
             ImportConfiguration importConfiguration = (ImportConfiguration) object;
             return Objects.equals(this.getId(), importConfiguration.getId());
         }
         return false;
     }
 }