Mercurial > hg > ltpda
view m-toolbox/classes/+utils/@repository/adjustPlist.m @ 24:056f8e1e995e database-connection-manager
Properly record history in fromRepository constructors
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Mon, 05 Dec 2011 16:20:06 +0100 |
parents | |
children |
line wrap: on
line source
function adjustPlist(conn, pl) % ADJUSTPLIST(CONN, PL) Removes CONN, USERNAME, PASSWORD parameters % from plist PL, and adds or or substitutes HOSTNAME and DATABASE % parameters with the ones used to establish connection CONN. % % The resulting plist may be used to set object history. % check parameters if ~isa(conn, 'java.sql.Connection') error('### invalid call'); end if ~isa(pl, 'plist') error('### invalid call'); end % get connection parameters r = '^jdbc:mysql://(?<hostname>.+)/(?<database>.+)$'; c = regexp(char(conn.getMetaData().getURL()), r, 'names'); % remove unwanted parameters prem(pl, 'conn'); prem(pl, 'username'); prem(pl, 'password'); % add essentials connections parameters pset(pl, 'hostname', c.hostname); pset(pl, 'database', c.database); end function prem(pl, key) % PREM Remove parameter KEY if present in plist PL. if isparam(pl, key) remove(pl, key); end end