1 /* 2 * Copyright (c) 2002-2024, City of Paris 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 9 * 1. Redistributions of source code must retain the above copyright notice 10 * and the following disclaimer. 11 * 12 * 2. Redistributions in binary form must reproduce the above copyright notice 13 * and the following disclaimer in the documentation and/or other materials 14 * provided with the distribution. 15 * 16 * 3. Neither the name of 'Mairie de Paris' nor 'Lutece' nor the names of its 17 * contributors may be used to endorse or promote products derived from 18 * this software without specific prior written permission. 19 * 20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE 24 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 25 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 26 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 27 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 28 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 29 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 30 * POSSIBILITY OF SUCH DAMAGE. 31 * 32 * License 1.0 33 */ 34 35 package fr.paris.lutece.plugins.quicklinks.business.insertservice; 36 37 import fr.paris.lutece.util.sql.DAOUtil; 38 39 import java.util.ArrayList; 40 import java.util.Collection; 41 42 /** 43 * This class provides Data Access methods for InternalLinkInsertService objects 44 */ 45 public class InternalLinkInsertServiceDAO 46 { 47 /** 48 * This class implements the Singleton design pattern. 49 */ 50 private static final InternalLinkInsertServiceDAOness/insertservice/InternalLinkInsertServiceDAO.html#InternalLinkInsertServiceDAO">InternalLinkInsertServiceDAO _dao = new InternalLinkInsertServiceDAO( ); 51 52 /** 53 * Creates a new InternalLinkInsertServiceDAO object. 54 */ 55 private InternalLinkInsertServiceDAO( ) 56 { 57 } 58 59 /** 60 * Returns the unique instance of the singleton. 61 * 62 * @return the instance 63 */ 64 static InternalLinkInsertServiceDAO getInstance( ) 65 { 66 return _dao; 67 } 68 69 /** 70 * The collection of page 71 * 72 * @param strPageName 73 * the name of the page 74 * @return The collection of field 75 */ 76 Collection selectPageListbyName( String strPageName ) 77 { 78 Collection<InternalLinkInsertService> list = new ArrayList<>( ); 79 String strSQL; 80 81 if ( "".equals( strPageName ) ) 82 { 83 strSQL = " SELECT id_page , name ,description FROM core_page"; 84 } 85 else 86 { 87 strSQL = " SELECT id_page , name ,description FROM core_page WHERE name LIKE'%" + strPageName + "%'"; 88 } 89 90 try ( DAOUtil daoUtil = new DAOUtil( strSQL ) ) 91 { 92 daoUtil.executeQuery( ); 93 94 while ( daoUtil.next( ) ) 95 { 96 InternalLinkInsertServiceusiness/insertservice/InternalLinkInsertService.html#InternalLinkInsertService">InternalLinkInsertService page = new InternalLinkInsertService( ); 97 page.setIdPage( daoUtil.getInt( 1 ) ); 98 page.setLabelPage( daoUtil.getString( 2 ) ); 99 page.setDescriptionPage( daoUtil.getString( 3 ) ); 100 list.add( page ); 101 } 102 103 daoUtil.free( ); 104 } 105 return list; 106 } 107 }