You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(141) |
Sep
(184) |
Oct
(159) |
Nov
(77) |
Dec
(114) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
(212) |
Feb
(302) |
Mar
(323) |
Apr
(360) |
May
(302) |
Jun
(392) |
Jul
(299) |
Aug
(858) |
Sep
(499) |
Oct
(489) |
Nov
(324) |
Dec
(438) |
2008 |
Jan
(449) |
Feb
(388) |
Mar
(811) |
Apr
(583) |
May
(949) |
Jun
(1431) |
Jul
(943) |
Aug
(527) |
Sep
(576) |
Oct
(440) |
Nov
(1046) |
Dec
(658) |
2009 |
Jan
(259) |
Feb
(192) |
Mar
(495) |
Apr
(2322) |
May
(2023) |
Jun
(1387) |
Jul
(722) |
Aug
(771) |
Sep
(167) |
Oct
(142) |
Nov
(384) |
Dec
(884) |
2010 |
Jan
(344) |
Feb
(82) |
Mar
(248) |
Apr
(341) |
May
(389) |
Jun
(289) |
Jul
(19) |
Aug
(478) |
Sep
(274) |
Oct
(431) |
Nov
(322) |
Dec
(207) |
2011 |
Jan
(125) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Joseph I. <jos...@us...> - 2007-03-28 05:13:23
|
Update of /cvsroot/tolven/tolvenEJB/src/org/tolven/security/key In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv20712/src/org/tolven/security/key Removed Files: Tag: E_JI_MDBKeys AccountPrivateKey.java UserPublicKey.java UserKeyRing.java TolvenEncryptedSecretKey.java TolvenEncryptedPrivateKey.java TolvenPublicKey.java AccountSecretKey.java DocumentSecretKey.java AccountPublicKey.java UserPrivateKey.java Log Message: First stage of having queues encrypted for particular accounts --- TolvenEncryptedSecretKey.java DELETED --- --- AccountSecretKey.java DELETED --- --- AccountPrivateKey.java DELETED --- --- AccountPublicKey.java DELETED --- --- TolvenEncryptedPrivateKey.java DELETED --- --- UserPrivateKey.java DELETED --- --- UserPublicKey.java DELETED --- --- TolvenPublicKey.java DELETED --- --- DocumentSecretKey.java DELETED --- --- UserKeyRing.java DELETED --- |
Update of /cvsroot/tolven/tolvenSecurity/src/org/tolven/security/key In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv20652/src/org/tolven/security/key Added Files: Tag: E_JI_MDBKeys TolvenEncryptedSecretKey.java UserKeyRing.java UserPublicKey.java UserPrivateKey.java AccountProcessingPrivateKey.java TolvenEncryptedPrivateKey.java AccountPrivateKey.java AccountProcessingPublicKey.java AccountPublicKey.java DocumentSecretKey.java TolvenPublicKey.java AccountSecretKey.java Log Message: First stage of having queues encrypted for particular accounts --- NEW FILE: AccountProcessingPrivateKey.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.key; import java.io.IOException; import java.io.Serializable; import java.security.GeneralSecurityException; import java.security.KeyFactory; import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.PrivateKey; import java.security.PublicKey; import java.security.spec.PKCS8EncodedKeySpec; import javax.crypto.Cipher; import javax.crypto.EncryptedPrivateKeyInfo; import javax.crypto.SecretKey; import javax.persistence.*; /** * This class encapsulates a key-based encrypted PrivateKey, which has been * encrypted with a randomly generated SecretKey, which is itself then encrypted * with a PublicKey. The encrypted PrivateKey is encapsulated as an * EncryptedPrivateKeyInfo and the SecretKey is stored in a * TolvenEncryptedSecretKey. * * @author Joseph Isaac * */ @Embeddable public class AccountProcessingPrivateKey extends TolvenEncryptedPrivateKey implements Serializable { private static final long serialVersionUID = 2L; private static final String NOT_INITIALIZED = "AccountProcessingPrivateKey not initialized"; private static final String INITIALIZED = "AccountProcessingPrivateKey already initialized"; public static final String ACCOUNT_PRIVATE_KEY_ALGORITHM_PROP = "tolven.security.account.privateKeyAlgorithm"; public static final String ACCOUNT_PRIVATE_KEY_LENGTH_PROP = "tolven.security.account.keyLength"; @Embedded private AccountSecretKey accountSecretKey; protected AccountProcessingPrivateKey() { } /** * Return an instance of AccountProcessingPrivateKey * * @return */ public static AccountProcessingPrivateKey getInstance() { return new AccountProcessingPrivateKey(); } /** * Create a PrivateKey, encrypt it with a randomly generated SecretKey and * encrypt the SecretKey with a PublicKey. Use the system-specific * privateKeyAlgorithm and kbeKeyAlgorithm * * @param anEncryptionKey * @return * @throws GeneralSecurityException * @throws IOException */ public PublicKey init(PublicKey anEncryptionKey) throws GeneralSecurityException, IOException { String privateKeyAlgorithm = System.getProperty(ACCOUNT_PRIVATE_KEY_ALGORITHM_PROP); return init(privateKeyAlgorithm, anEncryptionKey); } /** * Decrypt the AccountProcessingPrivateKey using aDecryptionKey and re-encrypt it * using anEncryptionKey * * @param anAccountProcessingPrivateKey * @param aDecryptionKey * @param anEncryptionKey * @param anEncryptionKey * @return * @throws GeneralSecurityException */ public void init(AccountProcessingPrivateKey anAccountProcessingPrivateKey, UserPrivateKey aUserPrivateKey, PublicKey anEncryptionKey) throws GeneralSecurityException, IOException { if (accountSecretKey != null) throw new IllegalStateException(INITIALIZED); PrivateKey privateKey = anAccountProcessingPrivateKey.getPrivateKey(aUserPrivateKey.getPrivateKey()); accountSecretKey = AccountSecretKey.getInstance(); SecretKey secretKey = accountSecretKey.init(anEncryptionKey); Cipher cipher = Cipher.getInstance(secretKey.getAlgorithm()); cipher.init(Cipher.ENCRYPT_MODE, secretKey); byte[] encryptedPrivateKey = cipher.doFinal(privateKey.getEncoded()); EncryptedPrivateKeyInfo encryptedPrivateKeyInfo = new EncryptedPrivateKeyInfo(privateKey.getAlgorithm(), encryptedPrivateKey); setEncodedEncryptedPrivateKeyInfo(encryptedPrivateKeyInfo, anAccountProcessingPrivateKey.getKeySize()); } /** * Create a PrivateKey, encrypt it with a randomly generated SecretKey and * encrypt the SecretKey with a PublicKey * * @param aPrivateKeyAlgorithm * @param secretKeyAlgorithm * @param anEncryptionKey * @return * @throws GeneralSecurityException */ private PublicKey init(String aPrivateKeyAlgorithm, PublicKey anEncryptionKey) throws GeneralSecurityException, IOException { if (accountSecretKey != null) throw new IllegalStateException(INITIALIZED); int keySize = Integer.parseInt(System.getProperty(ACCOUNT_PRIVATE_KEY_LENGTH_PROP)); KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance(aPrivateKeyAlgorithm); keyPairGenerator.initialize(keySize); KeyPair keyPair = keyPairGenerator.genKeyPair(); accountSecretKey = AccountSecretKey.getInstance(); SecretKey secretKey = accountSecretKey.init(anEncryptionKey); Cipher cipher = Cipher.getInstance(secretKey.getAlgorithm()); cipher.init(Cipher.ENCRYPT_MODE, secretKey); byte[] encryptedPrivateKey = cipher.doFinal(keyPair.getPrivate().getEncoded()); EncryptedPrivateKeyInfo encryptedPrivateKeyInfo = new EncryptedPrivateKeyInfo(aPrivateKeyAlgorithm, encryptedPrivateKey); setEncodedEncryptedPrivateKeyInfo(encryptedPrivateKeyInfo, keySize); return keyPair.getPublic(); } /** * Decrypt and return the PrivateKey using aDecryptionKey * * @param aDecryptionKey * @return * @throws GeneralSecurityException */ public PrivateKey getPrivateKey(PrivateKey aDecryptionKey) throws GeneralSecurityException, IOException { if (accountSecretKey == null) throw new IllegalStateException(NOT_INITIALIZED); SecretKey secretKey = accountSecretKey.getSecretKey(aDecryptionKey); Cipher cipher = Cipher.getInstance(secretKey.getAlgorithm()); cipher.init(Cipher.DECRYPT_MODE, secretKey); EncryptedPrivateKeyInfo encryptedPrivateKeyInfo = new EncryptedPrivateKeyInfo(getEncodedEncryptedPrivateKeyInfo()); byte[] decryptedPrivateKey = cipher.doFinal(encryptedPrivateKeyInfo.getEncryptedData()); PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(decryptedPrivateKey); return KeyFactory.getInstance(encryptedPrivateKeyInfo.getAlgName()).generatePrivate(keySpec); } } --- NEW FILE: TolvenEncryptedSecretKey.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.key; import java.io.Serializable; import java.security.GeneralSecurityException; import java.security.PrivateKey; import java.security.PublicKey; import javax.crypto.Cipher; import javax.crypto.SecretKey; import javax.persistence.*; /** * This class encapsulates a SecretKey which has been encrypted using a * PublicKey during initialization. To obtain the unencrypted SecretKey, the * PrivateKey companion of the encrypting PublicKey must be supplied. * * @author Joseph Isaac * */ @MappedSuperclass public abstract class TolvenEncryptedSecretKey implements Serializable { @Lob @Basic(fetch = FetchType.LAZY) @Column(name = "encrypted_secret_key") private byte[] encryptedKey; @Column(name = "secret_key_algorithm") private String algorithm; protected TolvenEncryptedSecretKey() { } /** * Return the encrypted SecretKey * * @return */ public byte[] getEncryptedKey() { return encryptedKey; } protected void setEncryptedKey(byte[] array) { encryptedKey = array; } /** * Encrypt a SecretKey using a PublicKey. Subclasses are responsible for ensuring that this key is not initialized more than once i.e. is immutable * * @param aPublicKey * @throws GeneralSecurityException */ public abstract SecretKey init(PublicKey aPublicKey) throws GeneralSecurityException; /** * Return the algorithm of the encrypted SecretKey * * @return */ public String getAlgorithm() { return algorithm; } protected void setAlgorithm(String aString) { algorithm = aString; } /** * Decrypt the SecretKey using a PrivateKey and return it * * @param aDecryptionKey * @return * @throws GeneralSecurityException */ public SecretKey getSecretKey(PrivateKey aDecryptionPrivateKey) throws GeneralSecurityException { if (encryptedKey == null || algorithm == null) throw new IllegalStateException(getClass() + " not initialized"); Cipher cipher = Cipher.getInstance(aDecryptionPrivateKey.getAlgorithm()); cipher.init(Cipher.UNWRAP_MODE, aDecryptionPrivateKey); return (SecretKey) cipher.unwrap(encryptedKey, algorithm, Cipher.SECRET_KEY); } } --- NEW FILE: AccountSecretKey.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.key; import java.io.Serializable; import java.security.GeneralSecurityException; import java.security.PublicKey; import javax.crypto.Cipher; import javax.crypto.KeyGenerator; import javax.crypto.SecretKey; import javax.persistence.*; /** * This class encapsulates a SecretKey which has been encrypted using a * PublicKey during initialization. To obtain the unencrypted SecretKey, the * PrivateKey companion of the encrypting PublicKey must be supplied. * * @author Joseph Isaac * */ @Embeddable public class AccountSecretKey extends TolvenEncryptedSecretKey implements Serializable { public static final String ACCOUNT_USER_KBE_KEY_ALGORITHM_PROP = "tolven.security.accountUser.kbeKeyAlgorithm"; public static final String ACCOUNT_USER_KBE_KEY_LENGTH = "tolven.security.accountUser.kbeKeyLength"; private static final long serialVersionUID = 2L; protected AccountSecretKey() { } /** * Return an instance of AccountSecretKey * * @return */ public static AccountSecretKey getInstance() { return new AccountSecretKey(); } /** * Encrypt a SecretKey using a PublicKey * * @param aPublicKey * @throws GeneralSecurityException */ public SecretKey init(PublicKey aPublicKey) throws GeneralSecurityException { // The initialization check seems to belong in the superclass, but it's abstract? if (getEncryptedKey() != null || getAlgorithm() != null) throw new IllegalStateException(getClass() + " already initialized"); String kbeKeyAlgorithm = System.getProperty(ACCOUNT_USER_KBE_KEY_ALGORITHM_PROP); KeyGenerator keyGenerator = KeyGenerator.getInstance(kbeKeyAlgorithm); keyGenerator.init(Integer.parseInt(System.getProperty(ACCOUNT_USER_KBE_KEY_LENGTH))); SecretKey secretKey = keyGenerator.generateKey(); Cipher cipher = Cipher.getInstance(aPublicKey.getAlgorithm()); cipher.init(Cipher.WRAP_MODE, aPublicKey); setEncryptedKey(cipher.wrap(secretKey)); setAlgorithm(secretKey.getAlgorithm()); return secretKey; } } --- NEW FILE: AccountPrivateKey.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.key; import java.io.IOException; import java.io.Serializable; import java.security.GeneralSecurityException; import java.security.KeyFactory; import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.PrivateKey; import java.security.PublicKey; import java.security.spec.PKCS8EncodedKeySpec; import javax.crypto.Cipher; import javax.crypto.EncryptedPrivateKeyInfo; import javax.crypto.SecretKey; import javax.persistence.*; /** * This class encapsulates a key-based encrypted PrivateKey, which has been * encrypted with a randomly generated SecretKey, which is itself then encrypted * with a PublicKey. The encrypted PrivateKey is encapsulated as an * EncryptedPrivateKeyInfo and the SecretKey is stored in a * TolvenEncryptedSecretKey. * * @author Joseph Isaac * */ @Embeddable public class AccountPrivateKey extends TolvenEncryptedPrivateKey implements Serializable { private static final long serialVersionUID = 2L; private static final String NOT_INITIALIZED = "AccountPrivateKey not initialized"; private static final String INITIALIZED = "AccountPrivateKey already initialized"; public static final String ACCOUNT_PRIVATE_KEY_ALGORITHM_PROP = "tolven.security.account.privateKeyAlgorithm"; public static final String ACCOUNT_PRIVATE_KEY_LENGTH_PROP = "tolven.security.account.keyLength"; @Embedded private AccountSecretKey accountSecretKey; protected AccountPrivateKey() { } /** * Return an instance of AccountPrivateKey * * @return */ public static AccountPrivateKey getInstance() { return new AccountPrivateKey(); } /** * Create a PrivateKey, encrypt it with a randomly generated SecretKey and * encrypt the SecretKey with a PublicKey. Use the system-specific * privateKeyAlgorithm and kbeKeyAlgorithm * * @param anEncryptionKey * @return * @throws GeneralSecurityException * @throws IOException */ public PublicKey init(PublicKey anEncryptionKey) throws GeneralSecurityException, IOException { String privateKeyAlgorithm = System.getProperty(ACCOUNT_PRIVATE_KEY_ALGORITHM_PROP); return init(privateKeyAlgorithm, anEncryptionKey); } /** * Decrypt the AccountPrivateKey using aDecryptionKey and re-encrypt it * using anEncryptionKey * * @param anAccountPrivateKey * @param aDecryptionKey * @param anEncryptionKey * @param anEncryptionKey * @return * @throws GeneralSecurityException */ public void init(AccountPrivateKey anAccountPrivateKey, UserPrivateKey aUserPrivateKey, PublicKey anEncryptionKey) throws GeneralSecurityException, IOException { if (accountSecretKey != null) throw new IllegalStateException(INITIALIZED); PrivateKey privateKey = anAccountPrivateKey.getPrivateKey(aUserPrivateKey.getPrivateKey()); accountSecretKey = AccountSecretKey.getInstance(); SecretKey secretKey = accountSecretKey.init(anEncryptionKey); Cipher cipher = Cipher.getInstance(secretKey.getAlgorithm()); cipher.init(Cipher.ENCRYPT_MODE, secretKey); byte[] encryptedPrivateKey = cipher.doFinal(privateKey.getEncoded()); EncryptedPrivateKeyInfo encryptedPrivateKeyInfo = new EncryptedPrivateKeyInfo(privateKey.getAlgorithm(), encryptedPrivateKey); setEncodedEncryptedPrivateKeyInfo(encryptedPrivateKeyInfo, anAccountPrivateKey.getKeySize()); } /** * Create a PrivateKey, encrypt it with a randomly generated SecretKey and * encrypt the SecretKey with a PublicKey * * @param aPrivateKeyAlgorithm * @param secretKeyAlgorithm * @param anEncryptionKey * @return * @throws GeneralSecurityException */ private PublicKey init(String aPrivateKeyAlgorithm, PublicKey anEncryptionKey) throws GeneralSecurityException, IOException { if (accountSecretKey != null) throw new IllegalStateException(INITIALIZED); int keySize = Integer.parseInt(System.getProperty(ACCOUNT_PRIVATE_KEY_LENGTH_PROP)); KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance(aPrivateKeyAlgorithm); keyPairGenerator.initialize(keySize); KeyPair keyPair = keyPairGenerator.genKeyPair(); accountSecretKey = AccountSecretKey.getInstance(); SecretKey secretKey = accountSecretKey.init(anEncryptionKey); Cipher cipher = Cipher.getInstance(secretKey.getAlgorithm()); cipher.init(Cipher.ENCRYPT_MODE, secretKey); byte[] encryptedPrivateKey = cipher.doFinal(keyPair.getPrivate().getEncoded()); EncryptedPrivateKeyInfo encryptedPrivateKeyInfo = new EncryptedPrivateKeyInfo(aPrivateKeyAlgorithm, encryptedPrivateKey); setEncodedEncryptedPrivateKeyInfo(encryptedPrivateKeyInfo, keySize); return keyPair.getPublic(); } /** * Decrypt and return the PrivateKey using aDecryptionKey * * @param aDecryptionKey * @return * @throws GeneralSecurityException */ public PrivateKey getPrivateKey(PrivateKey aDecryptionKey) throws GeneralSecurityException, IOException { if (accountSecretKey == null) throw new IllegalStateException(NOT_INITIALIZED); SecretKey secretKey = accountSecretKey.getSecretKey(aDecryptionKey); Cipher cipher = Cipher.getInstance(secretKey.getAlgorithm()); cipher.init(Cipher.DECRYPT_MODE, secretKey); EncryptedPrivateKeyInfo encryptedPrivateKeyInfo = new EncryptedPrivateKeyInfo(getEncodedEncryptedPrivateKeyInfo()); byte[] decryptedPrivateKey = cipher.doFinal(encryptedPrivateKeyInfo.getEncryptedData()); PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(decryptedPrivateKey); return KeyFactory.getInstance(encryptedPrivateKeyInfo.getAlgName()).generatePrivate(keySpec); } } --- NEW FILE: AccountPublicKey.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.key; import java.io.Serializable; import javax.persistence.Embeddable; /** * This class encapsulates an x509EncodedKeySpec for a Public Key * * @author Joseph Isaac * */ @Embeddable public class AccountPublicKey extends TolvenPublicKey implements Serializable { private static final long serialVersionUID = 2L; protected static final String NOT_INITIALIZED = "AccountPublicKey not initialized"; /** * Return an instance of UserPublicKey * * @return */ public static AccountPublicKey getInstance() { return new AccountPublicKey(); } } --- NEW FILE: TolvenEncryptedPrivateKey.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.key; import javax.crypto.EncryptedPrivateKeyInfo; import java.io.IOException; import java.io.Serializable; import javax.persistence.*; /** * An abstract class which encapsulates an EncryptedPrivateKeyInfo. * * @author Joseph Isaac * */ @MappedSuperclass public abstract class TolvenEncryptedPrivateKey implements Serializable { @Lob @Basic(fetch = FetchType.LAZY) @Column(name = "encoded_encrypted_private_key_info") private byte[] encodedEncryptedPrivateKeyInfo; @Column(name = "private_key_size") private int keySize; @Column(name = "private_key_algorithm") private String algorithm; /** * Return the EncryptedPrivateKeyInfo * * @return */ protected byte[] getEncodedEncryptedPrivateKeyInfo() { return encodedEncryptedPrivateKeyInfo; } /** * Set the EncryptedPrivateKeyInfo * * @param privateKeyAlgorithm * @param anEncryptedPrivateKeyInfo */ protected void setEncodedEncryptedPrivateKeyInfo(EncryptedPrivateKeyInfo anEncryptedPrivateKeyInfo, int aKeySize) throws IOException { algorithm = anEncryptedPrivateKeyInfo.getAlgName(); keySize = aKeySize; encodedEncryptedPrivateKeyInfo = anEncryptedPrivateKeyInfo.getEncoded(); } /** * return the PrivateKey size * * @return */ protected int getKeySize() { return keySize; } /** * return the PrivateKey algorithm * * @return */ protected String getAlgorithm() { return algorithm; } /** * Keep the PrivateKey algorithm. It it is part of an EncryptedPrivateKeyInfo but one has to decrypt to find out what it is * * @param aString */ protected void setAlgorithm(String aString) { algorithm = aString; } } --- NEW FILE: UserPrivateKey.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.key; import java.io.IOException; import java.io.Serializable; import java.security.GeneralSecurityException; import java.security.KeyFactory; import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.PrivateKey; import java.security.PublicKey; import java.security.SecureRandom; import java.security.spec.PKCS8EncodedKeySpec; import javax.crypto.Cipher; import javax.crypto.EncryptedPrivateKeyInfo; import javax.crypto.SecretKey; import javax.crypto.SecretKeyFactory; import javax.crypto.spec.PBEKeySpec; import javax.crypto.spec.PBEParameterSpec; import javax.persistence.*; /** * This class encapsulates a password-based encrypted PrivateKey, which has been * encrypted with a password-based encryption algorithm. The SecretKey used to * encrypt the PrivateKey is not saved, since it can be regenerated given the * pbeKeyAlgorithm, salt, iterationCount (which are stored) and the original * password. * * @author Joseph Isaac * */ @Embeddable public class UserPrivateKey extends TolvenEncryptedPrivateKey implements Serializable { private static final long serialVersionUID = 2L; private static final String NOT_INITIALIZED = "UserPrivateKey not initialized"; private static final String INITIALIZED = "UserPrivateKey already initialized"; private static final String KEY_LOCKED = "UserPrivateKey is locked"; public static final String USER_PRIVATE_KEY_ALGORITHM_PROP = "tolven.security.user.privateKeyAlgorithm"; public static final String USER_PRIVATE_KEY_LENGTH_PROP = "tolven.security.user.privateKeyLength"; public static final String PBE_KEY_ALGORITHM_PROP = "tolven.security.user.pbeKeyAlgorithm"; public static final String USER_PASSWORD_SALT_LENGTH_PROP = "tolven.security.user.passwordSaltLength"; public static final String USER_PASSWORD_ITERATION_COUNT_PROP = "tolven.security.user.passwordIterationCount"; @Column(name = "pbe_key_algorithm", length = 100) private String pbeKeyAlgorithm; @Lob @Basic(fetch = FetchType.LAZY) @Column(name = "pbe_key_salt") private byte[] salt; @Column(name = "pbe_key_iteration_count") private int iterationCount; private transient PrivateKey privateKey; protected UserPrivateKey() { } /** * Return an instance of UserPrivateKey * * @return */ public static UserPrivateKey getInstance() { return new UserPrivateKey(); } // TODO: This could be in the wrong place. Maybe shouldn't be static either. public static SecureRandom rng = new SecureRandom(); /** * Create and protect a PrivateKey using password based encryption. Use the * system-specific privateKeyAlgorithm, pbeKeyAlgorithm, random salt and * iterationCount * * @param aPassword * @return * @throws GeneralSecurityException */ public PublicKey init(char[] aPassword) throws GeneralSecurityException, IOException { if (getEncodedEncryptedPrivateKeyInfo() != null || pbeKeyAlgorithm != null || salt != null) throw new IllegalStateException(INITIALIZED); String privateKeyAlgorithm = System.getProperty(USER_PRIVATE_KEY_ALGORITHM_PROP); int keySize = Integer.parseInt(System.getProperty(USER_PRIVATE_KEY_LENGTH_PROP)); KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance(privateKeyAlgorithm); keyPairGenerator.initialize(keySize); KeyPair keyPair = keyPairGenerator.genKeyPair(); init(keyPair.getPrivate(), keySize, aPassword); return keyPair.getPublic(); } public void initNewPassword(UserPrivateKey aUserPrivateKey, char[] userPrivateKeyPassword, char[] newPassword) throws GeneralSecurityException, IOException { if (getEncodedEncryptedPrivateKeyInfo() != null || pbeKeyAlgorithm != null || salt != null) throw new IllegalStateException(INITIALIZED); init(aUserPrivateKey.getPrivateKey(userPrivateKeyPassword), aUserPrivateKey.getKeySize(), newPassword); } /** * Return a randome salt byte[] * * @return */ private byte[] getRandomSalt() { byte[] salt = new byte[Integer.parseInt(System.getProperty(USER_PASSWORD_SALT_LENGTH_PROP))]; rng.nextBytes(salt); return salt; } /** * Create and protect a PrivateKey using password based encryption * * @param aPrivateKeyAlgorithm * @param aSecretKeyAlgorithm * @param aPassword * @param salt * @param iterationCount * @return * @throws GeneralSecurityException */ private void init(PrivateKey aPrivateKey, int aKeySize, char[] aPassword) throws GeneralSecurityException, IOException { if (getEncodedEncryptedPrivateKeyInfo() != null || pbeKeyAlgorithm != null || salt != null) throw new IllegalStateException(INITIALIZED); String pbeKeyAlgorithm = System.getProperty(PBE_KEY_ALGORITHM_PROP); byte[] salt = getRandomSalt(); int iterationCount = Integer.parseInt(System.getProperty(USER_PASSWORD_ITERATION_COUNT_PROP)); PBEKeySpec pbeKeySpec = new PBEKeySpec(aPassword); SecretKey secretKey = SecretKeyFactory.getInstance(pbeKeyAlgorithm).generateSecret(pbeKeySpec); PBEParameterSpec pbeParamSpec = new PBEParameterSpec(salt, iterationCount); Cipher cipher = Cipher.getInstance(secretKey.getAlgorithm()); cipher.init(Cipher.ENCRYPT_MODE, secretKey, pbeParamSpec); byte[] encryptedPrivateKey = cipher.doFinal(aPrivateKey.getEncoded()); EncryptedPrivateKeyInfo encryptedPrivateKeyInfo = new EncryptedPrivateKeyInfo(aPrivateKey.getAlgorithm(), encryptedPrivateKey); setEncodedEncryptedPrivateKeyInfo(encryptedPrivateKeyInfo, aKeySize); this.pbeKeyAlgorithm = pbeKeyAlgorithm; this.salt = salt; this.iterationCount = iterationCount; } /** * Decrypt and return the PrivateKey using aPassword * * @param aPassword * @return * @throws GeneralSecurityException */ public PrivateKey getPrivateKey(char[] aPassword) throws GeneralSecurityException, IOException { if (getEncodedEncryptedPrivateKeyInfo() == null || pbeKeyAlgorithm == null || salt == null) throw new IllegalStateException(NOT_INITIALIZED); EncryptedPrivateKeyInfo encryptedPrivateKeyInfo = new EncryptedPrivateKeyInfo(getEncodedEncryptedPrivateKeyInfo()); PKCS8EncodedKeySpec privateKeySpec = getPrivateKeySpec(aPassword); return KeyFactory.getInstance(encryptedPrivateKeyInfo.getAlgName()).generatePrivate(privateKeySpec); } /** * Decrypt the encrypted Private and unlock it for future access using * getPrivateKey() * * @param aPassword * @throws GeneralSecurityException * @throws IOException */ public void unlockPrivateKey(char[] aPassword) throws GeneralSecurityException, IOException { if (getEncodedEncryptedPrivateKeyInfo() == null || pbeKeyAlgorithm == null || salt == null) throw new IllegalStateException(NOT_INITIALIZED); EncryptedPrivateKeyInfo encryptedPrivateKeyInfo = new EncryptedPrivateKeyInfo(getEncodedEncryptedPrivateKeyInfo()); PKCS8EncodedKeySpec privateKeySpec = getPrivateKeySpec(aPassword); KeyFactory keyFactory = KeyFactory.getInstance(encryptedPrivateKeyInfo.getAlgName()); privateKey = keyFactory.generatePrivate(privateKeySpec); } /** * Lock UserPrivateKey by removing the decrypted privateKey * */ public void lockPrivateKey() { privateKey = null; } /** * Return true if the PrivateKey has been locked and requires a password to unlock it * @return */ public boolean isLocked() { return privateKey == null; } /** * Return the privateKey if it is not locked, otherwise return null * * @return */ public PrivateKey getPrivateKey() { if (privateKey == null) throw new IllegalStateException(KEY_LOCKED); return privateKey; } /** * Return a PKCS8EncodedKeySpec which can be used to regenerate the * PrivateKey * * @param aPassword * @return * @throws GeneralSecurityException * @throws IOException */ private PKCS8EncodedKeySpec getPrivateKeySpec(char[] aPassword) throws GeneralSecurityException, IOException { if (getEncodedEncryptedPrivateKeyInfo() == null || pbeKeyAlgorithm == null || salt == null) throw new IllegalStateException(NOT_INITIALIZED); EncryptedPrivateKeyInfo encryptedPrivateKeyInfo = new EncryptedPrivateKeyInfo(getEncodedEncryptedPrivateKeyInfo()); PBEKeySpec pbeKeySpec = new PBEKeySpec(aPassword); SecretKey secretKey = SecretKeyFactory.getInstance(pbeKeyAlgorithm).generateSecret(pbeKeySpec); PBEParameterSpec pbeParamSpec = new PBEParameterSpec(salt, iterationCount); Cipher cipher = Cipher.getInstance(pbeKeyAlgorithm); cipher.init(Cipher.DECRYPT_MODE, secretKey, pbeParamSpec); return encryptedPrivateKeyInfo.getKeySpec(cipher); } } --- NEW FILE: UserPublicKey.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.key; import java.io.Serializable; import javax.persistence.Embeddable; /** * This class encapsulates an x509EncodedKeySpec for a Public Key * * @author Joseph Isaac * */ @Embeddable public class UserPublicKey extends TolvenPublicKey implements Serializable{ private static final long serialVersionUID = 2L; protected static final String NOT_INITIALIZED = "UserPublicKey not initialized"; /** * Return an instance of UserPublicKey * * @return */ public static UserPublicKey getInstance() { return new UserPublicKey(); } } --- NEW FILE: TolvenPublicKey.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.key; import java.io.Serializable; import java.security.GeneralSecurityException; import java.security.KeyFactory; import java.security.PublicKey; import java.security.spec.X509EncodedKeySpec; import javax.persistence.*; /** * This class encapsulates an x509EncodedKeySpec for a Public Key * * @author Joseph Isaac * */ @MappedSuperclass public abstract class TolvenPublicKey implements Serializable { protected static final String NOT_INITIALIZED = "TolvenPublicKey not initialized"; protected static final String INITIALIZED = "TolvenPublicKey already initialized"; @Lob @Basic(fetch = FetchType.LAZY) @Column(name = "x509_encoded__key_spec") private byte[] x509EncodedKeySpec; @Column(name = "public_key_algorithm") private String algorithm; protected TolvenPublicKey() { } /** * Initialize TolvenPublicKey with aPublicKey * @param aPublicKey */ public void init(PublicKey aPublicKey) { if (x509EncodedKeySpec != null || algorithm != null) throw new IllegalStateException(INITIALIZED); X509EncodedKeySpec keySpec = new X509EncodedKeySpec(aPublicKey.getEncoded()); x509EncodedKeySpec = keySpec.getEncoded(); algorithm = aPublicKey.getAlgorithm(); } /** * Decode and return the encapsulated PublicKey * @return * @throws GeneralSecurityException */ public PublicKey getPublicKey() throws GeneralSecurityException { if (x509EncodedKeySpec == null || algorithm == null) throw new IllegalStateException(NOT_INITIALIZED); X509EncodedKeySpec keySpec = new X509EncodedKeySpec(x509EncodedKeySpec); return KeyFactory.getInstance(algorithm).generatePublic(keySpec); } } --- NEW FILE: DocumentSecretKey.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.key; import java.io.Serializable; import java.security.GeneralSecurityException; import java.security.PublicKey; import javax.crypto.Cipher; import javax.crypto.KeyGenerator; import javax.crypto.SecretKey; import javax.persistence.*; /** * This class encapsulates a SecretKey which has been encrypted using a * PublicKey during initialization. To obtain the unencrypted SecretKey, the * PrivateKey companion of the encrypting PublicKey must be supplied. * * @author Joseph Isaac * */ @Embeddable public class DocumentSecretKey extends TolvenEncryptedSecretKey implements Serializable { public static final String DOC_KBE_KEY_ALGORITHM_PROP = "tolven.security.doc.kbeKeyAlgorithm"; public static final String DOC_KBE_KEY_LENGTH = "tolven.security.doc.kbeKeyLength"; private static final long serialVersionUID = 2L; protected DocumentSecretKey() { } /** * Return an instance of DocumentSecretKey * * @return */ public static DocumentSecretKey getInstance() { return new DocumentSecretKey(); } /** * Encrypt a SecretKey using a PublicKey * * @param aPublicKey * @throws GeneralSecurityException */ public void init(byte[] encryptedKey, String algorithm) throws GeneralSecurityException { if (getEncryptedKey() != null || getAlgorithm() != null) throw new IllegalStateException(getClass() + " already initialized"); setEncryptedKey(encryptedKey); setAlgorithm(algorithm); } /** * Encrypt a SecretKey using a PublicKey * * @param aPublicKey * @throws GeneralSecurityException */ public SecretKey init(PublicKey aPublicKey) throws GeneralSecurityException { // The initialization check seems to belong in the superclass, but it's abstract? if (getEncryptedKey() != null || getAlgorithm() != null) throw new IllegalStateException(getClass() + " already initialized"); String kbeKeyAlgorithm = System.getProperty(DOC_KBE_KEY_ALGORITHM_PROP); KeyGenerator keyGenerator = KeyGenerator.getInstance(kbeKeyAlgorithm); keyGenerator.init(Integer.parseInt(System.getProperty(DOC_KBE_KEY_LENGTH))); SecretKey secretKey = keyGenerator.generateKey(); Cipher cipher = Cipher.getInstance(aPublicKey.getAlgorithm()); cipher.init(Cipher.WRAP_MODE, aPublicKey); setEncryptedKey(cipher.wrap(secretKey)); setAlgorithm(secretKey.getAlgorithm()); return secretKey; } } --- NEW FILE: AccountProcessingPublicKey.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.key; import java.io.Serializable; import javax.persistence.Embeddable; /** * This class encapsulates an x509EncodedKeySpec for a Public Key * * @author Joseph Isaac * */ @Embeddable public class AccountProcessingPublicKey extends TolvenPublicKey implements Serializable { private static final long serialVersionUID = 2L; protected static final String NOT_INITIALIZED = "AccountProcessingPublicKey not initialized"; /** * Return an instance of UserPublicKey * * @return */ public static AccountProcessingPublicKey getInstance() { return new AccountProcessingPublicKey(); } } --- NEW FILE: UserKeyRing.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.key; import java.io.IOException; import java.security.GeneralSecurityException; import java.security.PublicKey; /** * An interface to define PublicKey/PrivateKey functionality for a user * * @author Joseph Isaac */ public interface UserKeyRing { public UserPrivateKey getUserPrivateKey(); public void setUserPrivateKey(UserPrivateKey privateKey); public boolean hasUserPrivateKey(); public UserPublicKey getUserPublicKey(); public PublicKey getPublicKey() throws GeneralSecurityException; public void setPublicKey(PublicKey aPublicKey); public void initUserPrivateKey(char[] password) throws GeneralSecurityException, IOException; } |
From: Joseph I. <jos...@us...> - 2007-03-28 05:13:18
|
Update of /cvsroot/tolven/tolvenSecurity/src/org/tolven/security In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv20652/src/org/tolven/security Added Files: Tag: E_JI_MDBKeys TolvenPrincipal.java Log Message: First stage of having queues encrypted for particular accounts --- NEW FILE: TolvenPrincipal.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security; import java.io.Serializable; import java.security.Principal; /** * A Tolven specific principal * * @author Joseph Isaac * */ public class TolvenPrincipal implements Principal, Serializable { private static final long serialVersionUID = 2L; private String name; public TolvenPrincipal(String name) { this.name = name; } public String getName() { return name; } public boolean equals(Object anObject) { return anObject instanceof TolvenPrincipal && name.equals(((TolvenPrincipal) anObject).getName()); } public int hashCode() { return name.hashCode(); } public String toString() { return getName(); } } |
Update of /cvsroot/tolven/tolvenSecurity/src/org/tolven/security/auth In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv20652/src/org/tolven/security/auth Added Files: Tag: E_JI_MDBKeys AccountIdCallback.java MDBKeyLoginModule.java AccountIdCallbackHandler.java TestKeyLoginModule.java Log Message: First stage of having queues encrypted for particular accounts --- NEW FILE: AccountIdCallbackHandler.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.auth; import java.io.IOException; import javax.security.auth.callback.Callback; import javax.security.auth.callback.CallbackHandler; import javax.security.auth.callback.NameCallback; import javax.security.auth.callback.PasswordCallback; import javax.security.auth.callback.UnsupportedCallbackException; /** * This class provides a way to supply the username, password and optionally the accountId to LoginModules via the CallbackHandler interface * @author Joseph Isaac * */ public class AccountIdCallbackHandler implements CallbackHandler { String username; char[] password; long accountId; public AccountIdCallbackHandler(String username, char[] password) { this(username, password, 0); } public AccountIdCallbackHandler(String username, char[] password, long accountId) { this.username = username; this.password = password; this.accountId = accountId; } public void setAccountId(long accountId) { this.accountId = accountId; } public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException { int len = callbacks.length; Callback cb; for (int i = 0; i < len; i++) { cb = callbacks[i]; if (cb instanceof NameCallback) { NameCallback ncb = (NameCallback) cb; ncb.setName(username); } else if (cb instanceof PasswordCallback) { PasswordCallback pcb = (PasswordCallback) cb; pcb.setPassword(password); } else if (cb instanceof AccountIdCallback) { AccountIdCallback pcb = (AccountIdCallback) cb; pcb.setAccountId(accountId); } else { throw new UnsupportedCallbackException(cb, "Unsupported Callback Exception"); } } } } --- NEW FILE: TestKeyLoginModule.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.auth; import java.io.IOException; import java.security.Principal; import java.security.acl.Group; import java.util.Arrays; import java.util.Enumeration; import java.util.Iterator; import java.util.Map; import javax.security.auth.Subject; import javax.security.auth.callback.Callback; import javax.security.auth.callback.CallbackHandler; import javax.security.auth.callback.NameCallback; import javax.security.auth.callback.PasswordCallback; import javax.security.auth.callback.UnsupportedCallbackException; import javax.security.auth.login.LoginException; import javax.security.auth.spi.LoginModule; import org.tolven.security.TolvenPrincipal; import org.tolven.security.acl.TolvenGroup; /** * This LoginModule does not verify username/password directly and MUST be proceeded by a LoginModule which does. * However, it is responsible for adding credentials to a Subject, and while adding a UserPrivateKey, it will attempt * unlock the UserPrivateKey with the provided password. If the password is not correct, then the login will fail. * * @author Joseph Isaac * */ public class TestKeyLoginModule implements LoginModule { private Subject subject = null; private CallbackHandler callbackHandler; private String principalName; private char[] password; private long accountUserId; public void initialize(Subject subject, CallbackHandler callbackHandler, Map<String, ?> arg2, Map<String, ?> arg3) { System.out.println(getClass() + " initialize()"); this.subject = subject; this.callbackHandler = callbackHandler; } public boolean login() throws LoginException { System.out.println(getClass() + " begin login"); if (callbackHandler == null) throw new LoginException("No CallbackHandler"); NameCallback nc = new NameCallback("User name: "); PasswordCallback pc = new PasswordCallback("Password: ", false); AccountUserIdCallback auc = new AccountUserIdCallback("AccountUserId: "); Callback[] callbacks = { nc, pc, auc }; Callback[] stdCallbacks = { nc, pc }; try { //TODO: We currently use a custom callback handler, but have not changed the default callback handler // So both can come through here and being interfaces, there is no way to distinguish between them // Here we try the default first, and recognize it because if it does not support the AccountUseridCallback try { callbackHandler.handle(callbacks); } catch (UnsupportedCallbackException ex) { callbackHandler.handle(stdCallbacks); } principalName = nc.getName(); if (principalName == null) principalName = "tolvenTestNull"; char[] tmpPassword = pc.getPassword(); if (tmpPassword == null) tmpPassword = "tolvenTestNull".toCharArray(); password = new char[tmpPassword.length]; if (tmpPassword != null) { System.arraycopy(tmpPassword, 0, password, 0, tmpPassword.length); } pc.clearPassword(); accountUserId = auc.getAccountUserId(); if (accountUserId == 0) { System.out.println(getClass() + " Login not linked to an account"); } else { System.out.println(getClass() + " Login linking to account id=" + accountUserId); } } catch (IOException e) { LoginException le = new LoginException("Failed to get principalName/password"); le.initCause(e); throw le; } catch (UnsupportedCallbackException e) { LoginException le = new LoginException("CallbackHandler does not support: " + e.getCallback()); le.initCause(e); throw le; } return true; } public boolean commit() throws LoginException { System.out.println(getClass() + ": begin commit"); try { Principal principal = new TolvenPrincipal(principalName); subject.getPrincipals().add(principal); // TolvenPrncipal: Ensure there is only one Group called Roles Group rolesGroup = null; for (Iterator iter = subject.getPrincipals(Group.class).iterator(); iter.hasNext();) { rolesGroup = (Group) iter.next(); if ("Roles".equalsIgnoreCase(rolesGroup.getName())) break; rolesGroup = null; } if (rolesGroup == null) { rolesGroup = new TolvenGroup("Roles"); subject.getPrincipals().add(rolesGroup); } // TODO: Currently we do not distinguish by role. When roles are supported in LDAP this code can be removed boolean mdbRoleExists = false; Principal groupName = null; for (Enumeration e = rolesGroup.members(); e.hasMoreElements();) { groupName = (Principal) e.nextElement(); if ("mdb".equalsIgnoreCase(groupName.getName())) { mdbRoleExists = true; break; } } if (!mdbRoleExists) { rolesGroup.addMember(new TolvenPrincipal("mdb")); } System.out.println(getClass() + ": completing login for " + principalName); } catch (Exception ex) { ex.printStackTrace(); throw new LoginException(ex.getMessage()); } return true; } public boolean abort() throws LoginException { removeAllCredentials(); return true; } public boolean logout() throws LoginException { removeAllCredentials(); return true; } private void removeAllCredentials() throws LoginException { callbackHandler = null; principalName = null; accountUserId = 0; if (password != null) Arrays.fill(password, '0'); password = null; subject = null; } } --- NEW FILE: MDBKeyLoginModule.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.auth; import java.io.IOException; import java.security.Principal; import java.security.acl.Group; import java.util.Arrays; import java.util.Enumeration; import java.util.Iterator; import java.util.Map; import javax.security.auth.Subject; import javax.security.auth.callback.Callback; import javax.security.auth.callback.CallbackHandler; import javax.security.auth.callback.NameCallback; import javax.security.auth.callback.PasswordCallback; import javax.security.auth.callback.UnsupportedCallbackException; import javax.security.auth.login.LoginException; import javax.security.auth.spi.LoginModule; import org.tolven.security.TolvenPrincipal; import org.tolven.security.acl.TolvenGroup; /** * This LoginModule does not verify username/password directly and MUST be proceeded by a LoginModule which does. * However, it is responsible for adding credentials to a Subject, and while adding a UserPrivateKey, it will attempt * unlock the UserPrivateKey with the provided password. If the password is not correct, then the login will fail. * * @author Joseph Isaac * */ public class MDBKeyLoginModule implements LoginModule { private Subject subject = null; private CallbackHandler callbackHandler; private String principalName; private char[] password; private long accountUserId; public void initialize(Subject subject, CallbackHandler callbackHandler, Map<String, ?> arg2, Map<String, ?> arg3) { System.out.println(getClass() + " initialize()"); this.subject = subject; this.callbackHandler = callbackHandler; } public boolean login() throws LoginException { System.out.println(getClass() + " begin login"); if (callbackHandler == null) throw new LoginException("No CallbackHandler"); NameCallback nc = new NameCallback("User name: "); PasswordCallback pc = new PasswordCallback("Password: ", false); AccountUserIdCallback auc = new AccountUserIdCallback("AccountUserId: "); Callback[] callbacks = { nc, pc, auc }; Callback[] stdCallbacks = { nc, pc }; try { //TODO: We currently use a custom callback handler, but have not changed the default callback handler // So both can come through here and being interfaces, there is no way to distinguish between them // Here we try the default first, and recognize it because if it does not support the AccountUseridCallback try { callbackHandler.handle(callbacks); } catch (UnsupportedCallbackException ex) { callbackHandler.handle(stdCallbacks); } principalName = nc.getName(); if (principalName == null) principalName = "tolvenMDBNull"; char[] tmpPassword = pc.getPassword(); if (tmpPassword == null) tmpPassword = "tolvenMDBNull".toCharArray(); password = new char[tmpPassword.length]; if (tmpPassword != null) { System.arraycopy(tmpPassword, 0, password, 0, tmpPassword.length); } pc.clearPassword(); accountUserId = auc.getAccountUserId(); if (accountUserId == 0) { System.out.println(getClass() + " Login not linked to an account"); } else { System.out.println(getClass() + " Login linking to account id=" + accountUserId); } } catch (IOException e) { LoginException le = new LoginException("Failed to get principalName/password"); le.initCause(e); throw le; } catch (UnsupportedCallbackException e) { LoginException le = new LoginException("CallbackHandler does not support: " + e.getCallback()); le.initCause(e); throw le; } return true; } public boolean commit() throws LoginException { System.out.println(getClass() + ": begin commit"); try { Principal principal = new TolvenPrincipal(principalName); subject.getPrincipals().add(principal); // TolvenPrncipal: Ensure there is only one Group called Roles Group rolesGroup = null; for (Iterator iter = subject.getPrincipals(Group.class).iterator(); iter.hasNext();) { rolesGroup = (Group) iter.next(); if ("Roles".equalsIgnoreCase(rolesGroup.getName())) break; rolesGroup = null; } if (rolesGroup == null) { rolesGroup = new TolvenGroup("Roles"); subject.getPrincipals().add(rolesGroup); } // TODO: Currently we do not distinguish by role. When roles are supported in LDAP this code can be removed boolean mdbRoleExists = false; Principal groupName = null; for (Enumeration e = rolesGroup.members(); e.hasMoreElements();) { groupName = (Principal) e.nextElement(); if ("mdb".equalsIgnoreCase(groupName.getName())) { mdbRoleExists = true; break; } } if (!mdbRoleExists) { rolesGroup.addMember(new TolvenPrincipal("mdb")); } System.out.println(getClass() + ": completing login for " + principalName); } catch (Exception ex) { ex.printStackTrace(); throw new LoginException(ex.getMessage()); } return true; } public boolean abort() throws LoginException { removeAllCredentials(); return true; } public boolean logout() throws LoginException { removeAllCredentials(); return true; } private void removeAllCredentials() throws LoginException { callbackHandler = null; principalName = null; accountUserId = 0; if (password != null) Arrays.fill(password, '0'); password = null; subject = null; } } --- NEW FILE: AccountIdCallback.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.auth; import java.io.Serializable; import javax.security.auth.callback.Callback; /** * This class provides a way to supply the AccountId to a LoginModule * @author Joseph Isaac * */ public class AccountIdCallback implements Callback, Serializable { private String prompt; private long accountId; public AccountIdCallback(String prompt) { this.prompt = prompt; } /** * Return a prompt * @return */ public String getPrompt() { return prompt; } /** * Return the accountId * @return */ public long getAccountId() { return accountId; } /** * Set the accountId * @param accountId */ public void setAccountId(long accountId) { this.accountId = accountId; } } |
From: Joseph I. <jos...@us...> - 2007-03-28 05:13:17
|
Update of /cvsroot/tolven/tolvenSecurity/src/org/tolven/security/acl In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv20652/src/org/tolven/security/acl Added Files: Tag: E_JI_MDBKeys TolvenGroup.java Log Message: First stage of having queues encrypted for particular accounts --- NEW FILE: TolvenGroup.java --- /* * Copyright (C) 2006 Tolven Inc * * This library is free software; you can redistribute it and/or modify it under the terms of * the GNU Lesser General Public License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * Contact: in...@to... */ package org.tolven.security.acl; import java.io.Serializable; import java.security.Principal; import java.security.acl.Group; import java.util.Collections; import java.util.Enumeration; import java.util.HashSet; import java.util.Iterator; /** * A Tolven specific Group * * @author Joseph Isaac * */ public class TolvenGroup implements Group, Serializable { private static final long serialVersionUID = 2L; private String name; private HashSet members; public TolvenGroup(String name) { this.name = name; members = new HashSet(); } public boolean addMember(Principal user) { return members.add(user); } public boolean removeMember(Principal user) { return members.remove(user); } public boolean isMember(Principal member) { Principal myPrincipal = null; Object obj = null; for (Enumeration e = Collections.enumeration(members); e.hasMoreElements();) { obj = e.nextElement(); if (obj instanceof Group) { return ((Group) obj).isMember(member); } else if (obj instanceof Principal) { myPrincipal = (Principal) obj; return myPrincipal.getName() != null && myPrincipal.getName().equals(member.getName()); } } return false; } public Enumeration<? extends Principal> members() { return Collections.enumeration(members); } public String getName() { return name; } public String toString() { StringBuffer buff = new StringBuffer(getName()); buff.append("(members:"); Iterator iter = members.iterator(); while(iter.hasNext()) { buff.append(iter.next().toString()); if(iter.hasNext()) buff.append(','); } buff.append(")"); return buff.toString(); } } |
From: Joseph I. <jos...@us...> - 2007-03-28 05:13:17
|
Update of /cvsroot/tolven/tolvenSecurity In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv20652 Modified Files: Tag: E_JI_MDBKeys build.xml Log Message: First stage of having queues encrypted for particular accounts Index: build.xml =================================================================== RCS file: /cvsroot/tolven/tolvenSecurity/build.xml,v retrieving revision 1.2 retrieving revision 1.2.2.1 diff -C2 -d -r1.2 -r1.2.2.1 *** build.xml 20 Mar 2007 09:14:08 -0000 1.2 --- build.xml 28 Mar 2007 05:13:14 -0000 1.2.2.1 *************** *** 28,33 **** <target name="packaging" depends="compile" description="tolvenSecurity.jar"> <jar destfile="${tolvenSecurity.location}/build/tolvenSecurity.jar"> ! <zipfileset dir="${tolvenSecurity.location}/build/bin" includes="org/tolven/web/security/auth/UsernamePasswordAccountUserIdCallbackHandler.class"/> ! <zipfileset dir="${tolvenSecurity.location}/build/bin" includes="org/tolven/security/auth/AccountUserIdCallback.class"/> </jar> </target> --- 28,32 ---- <target name="packaging" depends="compile" description="tolvenSecurity.jar"> <jar destfile="${tolvenSecurity.location}/build/tolvenSecurity.jar"> ! <zipfileset dir="${tolvenSecurity.location}/build/bin" includes="**/*.class"/> </jar> </target> |
From: Joseph I. <jos...@us...> - 2007-03-28 05:13:10
|
Update of /cvsroot/tolven/tolven In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv20620 Modified Files: Tag: E_JI_MDBKeys build.xml Log Message: First stage of having queues encrypted for particular accounts Index: build.xml =================================================================== RCS file: /cvsroot/tolven/tolven/build.xml,v retrieving revision 1.77.2.1 retrieving revision 1.77.2.2 diff -C2 -d -r1.77.2.1 -r1.77.2.2 *** build.xml 25 Mar 2007 02:19:55 -0000 1.77.2.1 --- build.xml 28 Mar 2007 05:13:09 -0000 1.77.2.2 *************** *** 42,47 **** <copy file="${tolven.home}/tolven/jboss-config/tomcat-root-index.jsp" tofile="${tolven.home}/tolven-jboss-4.0.4.GA/server/tolven/deploy/jbossweb-tomcat55.sar/ROOT.war/index.jsp" overwrite="true" preservelastmodified="true" /> <copy file="${tolven.home}/tolven/jboss-config/tomcat-root-web.xml" tofile="${tolven.home}/tolven-jboss-4.0.4.GA/server/tolven/deploy/jbossweb-tomcat55.sar/ROOT.war/WEB-INF/web.xml" overwrite="true" preservelastmodified="true" /> <copy file="${tolven.home}/tolven/jboss-config/destinations-service.xml" todir="${tolven.home}/tolven-jboss-4.0.4.GA/server/tolven/deploy/jboss-messaging.sar" overwrite="true" preservelastmodified="true" /> ! <copy toDir="${deploy.location}/deploy/jmx-console.war/WEB-INF" overwrite="true" preservelastmodified="true" verbose="${message.show.copy}"> <fileset dir="${tolven.home}/tolven/jboss-config/jmx-console"> <include name="web.xml"/> --- 42,49 ---- <copy file="${tolven.home}/tolven/jboss-config/tomcat-root-index.jsp" tofile="${tolven.home}/tolven-jboss-4.0.4.GA/server/tolven/deploy/jbossweb-tomcat55.sar/ROOT.war/index.jsp" overwrite="true" preservelastmodified="true" /> <copy file="${tolven.home}/tolven/jboss-config/tomcat-root-web.xml" tofile="${tolven.home}/tolven-jboss-4.0.4.GA/server/tolven/deploy/jbossweb-tomcat55.sar/ROOT.war/WEB-INF/web.xml" overwrite="true" preservelastmodified="true" /> + <!--copy file="${tolven.home}/tolven/jboss-config/jms-ds.xml" todir="${tolven.home}/tolven-jboss-4.0.4.GA/server/tolven/deploy/jboss-messaging.sar" overwrite="true" preservelastmodified="true" /--> <copy file="${tolven.home}/tolven/jboss-config/destinations-service.xml" todir="${tolven.home}/tolven-jboss-4.0.4.GA/server/tolven/deploy/jboss-messaging.sar" overwrite="true" preservelastmodified="true" /> ! <copy file="${tolven.home}/tolven/jboss-config/messaging-service.xml" todir="${tolven.home}/tolven-jboss-4.0.4.GA/server/tolven/deploy/jboss-messaging.sar" overwrite="true" preservelastmodified="true" /> ! <copy toDir="${deploy.location}/deploy/jmx-console.war/WEB-INF" overwrite="true" preservelastmodified="true" verbose="${message.show.copy}"> <fileset dir="${tolven.home}/tolven/jboss-config/jmx-console"> <include name="web.xml"/> |
From: Joseph I. <jos...@us...> - 2007-03-28 05:13:10
|
Update of /cvsroot/tolven/tolven/jboss-config In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv20620/jboss-config Modified Files: Tag: E_JI_MDBKeys login-config.xml Added Files: Tag: E_JI_MDBKeys jms-ds.xml messaging-service.xml Log Message: First stage of having queues encrypted for particular accounts --- NEW FILE: messaging-service.xml --- <?xml version="1.0" encoding="UTF-8"?> <!-- The JBoss Messaging service deployment descriptor. $Id$ --> <server> <mbean code="org.jboss.jms.server.ServerPeer" name="jboss.messaging:service=ServerPeer" xmbean-dd="xmdesc/ServerPeer-xmbean.xml"> <constructor> <!-- ServerPeerID --> <arg type="java.lang.String" value="server.0" /> <!-- DefaultQueueJNDIContext --> <arg type="java.lang.String" value="/queue" /> <!-- DefaultTopicJNDIContext --> <arg type="java.lang.String" value="/topic" /> </constructor> <depends optional-attribute-name="ThreadPool">jboss.messaging:service=ThreadPool</depends> <depends optional-attribute-name="PersistenceManager">jboss.messaging:service=PersistenceManager</depends> <depends optional-attribute-name="MessageStore">jboss.messaging:service=MessageStore</depends> <depends optional-attribute-name="ChannelMapper">jboss.messaging:service=ChannelMapper</depends> <!-- Set to -1 to completely disable client leasing --> <attribute name="SecurityDomain">java:/jaas/tolvenTest</attribute> <attribute name="DefaultSecurityConfig"> <security> <role name="mdb" read="true" write="true" create="true"/> </security> </attribute> </mbean> <!-- Plug-ins --> <mbean code="org.jboss.jms.server.plugin.DefaultThreadPool" name="jboss.messaging:service=ThreadPool" xmbean-dd="xmdesc/DefaultThreadPool-xmbean.xml"> <constructor> <!-- the default pool size --> <arg type="int" value="40" /> </constructor> </mbean> <mbean code="org.jboss.messaging.core.plugin.SimpleMessageStore" name="jboss.messaging:service=MessageStore" xmbean-dd="xmdesc/SimpleMessageStore-xmbean.xml"> <constructor> <!-- StoreID --> <arg type="java.lang.String" value="store.0" /> </constructor> </mbean> </server> Index: login-config.xml =================================================================== RCS file: /cvsroot/tolven/tolven/jboss-config/login-config.xml,v retrieving revision 1.18 retrieving revision 1.18.6.1 diff -C2 -d -r1.18 -r1.18.6.1 *** login-config.xml 18 Feb 2007 07:20:42 -0000 1.18 --- login-config.xml 28 Mar 2007 05:13:09 -0000 1.18.6.1 *************** *** 27,48 **** <policy> ! <application-policy name = "messaging"> <authentication> ! <!-- ! <login-module code = "org.jboss.security.auth.spi.UsersRolesLoginModule" ! flag = "required" > ! <module-option name = "unauthenticatedIdentity">guest</module-option> ! <module-option name = "usersProperties">messaging-users.properties</module-option> ! <module-option name = "rolesProperties">messaging-roles.properties</module-option> ! </login-module> ! --> ! <!-- This module is temporarily being used for messaging, and will be replaced with a stronger authentication module in the future --> ! <login-module code="org.jboss.security.auth.spi.SimpleServerLoginModule" ! flag="required" /> </authentication> </application-policy> - <!-- Used by clients within the application server VM such as - mbeans and servlets that access EJBs. - --> <application-policy name="tolvenDB"> --- 27,45 ---- <policy> ! <application-policy name="tolvenTest"> <authentication> ! <login-module code="org.tolven.security.auth.TestKeyLoginModule" ! flag="required"> ! </login-module> ! </authentication> ! </application-policy> ! ! <application-policy name="tolvenMDB"> ! <authentication> ! <login-module code="org.tolven.security.auth.MDBKeyLoginModule" ! flag="required"> ! </login-module> </authentication> </application-policy> <application-policy name="tolvenDB"> *************** *** 132,138 **** <login-module code = "org.jboss.resource.security.ConfiguredIdentityLoginModule" flag = "required"> ! <module-option name = "principal">guest</module-option> ! <module-option name = "userName">guest</module-option> ! <module-option name = "password">guest</module-option> <module-option name = "managedConnectionFactoryName">jboss.jca:service=TxCM,name=JmsXA</module-option> </login-module> --- 129,135 ---- <login-module code = "org.jboss.resource.security.ConfiguredIdentityLoginModule" flag = "required"> ! <module-option name = "principal">GUEST</module-option> ! <module-option name = "userName">GUEST</module-option> ! <module-option name = "password">GUEST</module-option> <module-option name = "managedConnectionFactoryName">jboss.jca:service=TxCM,name=JmsXA</module-option> </login-module> --- NEW FILE: jms-ds.xml --- <?xml version="1.0" encoding="UTF-8"?> <connection-factories> <!-- ==================================================================== --> <!-- JMS Stuff --> <!-- ==================================================================== --> <!-- The JMS provider loader --> <mbean code="org.jboss.jms.jndi.JMSProviderLoader" name="jboss.mq:service=JMSProviderLoader,name=JMSProvider"> <attribute name="ProviderName">DefaultJMSProvider</attribute> <attribute name="ProviderAdapterClass">org.jboss.jms.jndi.JNDIProviderAdapter</attribute> <attribute name="FactoryRef">java:/XAConnectionFactory</attribute> <attribute name="QueueFactoryRef">java:/XAConnectionFactory</attribute> <attribute name="TopicFactoryRef">java:/XAConnectionFactory</attribute> </mbean> <mbean code="org.jboss.jms.asf.ServerSessionPoolLoader" name="jboss.messaging:service=ServerSessionPoolMBean,name=StdJMSPool"> <depends optional-attribute-name="XidFactory">jboss:service=XidFactory</depends> <attribute name="PoolName">StdJMSPool</attribute> <attribute name="PoolFactoryClass">org.jboss.jms.asf.StdServerSessionPoolFactory</attribute> </mbean> <!-- JMS XA Resource adapter, use this to get transacted JMS in beans --> <tx-connection-factory> <jndi-name>JmsXA</jndi-name> <xa-transaction/> <rar-name>jms-ra.rar</rar-name> <connection-definition>org.jboss.resource.adapter.jms.JmsConnectionFactory</connection-definition> <config-property name="SessionDefaultType" type="java.lang.String">javax.jms.Topic</config-property> <config-property name="JmsProviderAdapterJNDI" type="java.lang.String">java:/DefaultJMSProvider</config-property> <max-pool-size>20</max-pool-size> <security-domain-and-application>tolvenDB</security-domain-and-application> <depends>jboss.messaging:service=ServerPeer</depends> </tx-connection-factory> </connection-factories> |
From: Joseph I. <jos...@us...> - 2007-03-28 05:13:05
|
Update of /cvsroot/tolven/tolvenSecurity/src/org/tolven/security/key In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv20447/src/org/tolven/security/key Log Message: Directory /cvsroot/tolven/tolvenSecurity/src/org/tolven/security/key added to the repository --> Using per-directory sticky tag `E_JI_MDBKeys' |
From: Joseph I. <jos...@us...> - 2007-03-28 05:13:05
|
Update of /cvsroot/tolven/tolvenSecurity/src/org/tolven/security/acl In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv20447/src/org/tolven/security/acl Log Message: Directory /cvsroot/tolven/tolvenSecurity/src/org/tolven/security/acl added to the repository --> Using per-directory sticky tag `E_JI_MDBKeys' |
From: Joseph I. <jos...@us...> - 2007-03-28 03:19:31
|
Update of /cvsroot/tolven/tolvenEJB/src/org/tolven/doc/bean In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv6333/src/org/tolven/doc/bean Modified Files: Tag: E_JI_MDBKeys TolvenMessage.java Log Message: The payload is encrypted by the encryptedKey which has an encryptionAlgorithm. Index: TolvenMessage.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/doc/bean/TolvenMessage.java,v retrieving revision 1.3.10.1 retrieving revision 1.3.10.2 diff -C2 -d -r1.3.10.1 -r1.3.10.2 *** TolvenMessage.java 28 Mar 2007 03:18:51 -0000 1.3.10.1 --- TolvenMessage.java 28 Mar 2007 03:19:29 -0000 1.3.10.2 *************** *** 2,8 **** import java.io.ByteArrayInputStream; - import java.io.ByteArrayOutputStream; import java.io.InputStream; - import java.io.OutputStream; import java.io.Serializable; --- 2,6 ---- |
From: Joseph I. <jos...@us...> - 2007-03-28 03:18:52
|
Update of /cvsroot/tolven/tolvenEJB/src/org/tolven/doc/bean In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv5939/src/org/tolven/doc/bean Modified Files: Tag: E_JI_MDBKeys TolvenMessage.java Log Message: The payload is encrypted by the encryptedKey which has an encryptionAlgorithm. Index: TolvenMessage.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/doc/bean/TolvenMessage.java,v retrieving revision 1.3 retrieving revision 1.3.10.1 diff -C2 -d -r1.3 -r1.3.10.1 *** TolvenMessage.java 7 Feb 2007 01:37:50 -0000 1.3 --- TolvenMessage.java 28 Mar 2007 03:18:51 -0000 1.3.10.1 *************** *** 19,22 **** --- 19,25 ---- private long documentId; + + private byte[] encryptedKey; + private String encryptedKeyAlgorithm; public long getAccountId() { *************** *** 87,90 **** --- 90,109 ---- this.documentId = documentId; } + + public byte[] getEncryptedKey() { + return encryptedKey; + } + + public void setEncryptedKey(byte[] encryptedKey) { + this.encryptedKey = encryptedKey; + } + + public String getEncryptionKeyAlgorithm() { + return encryptedKeyAlgorithm; + } + + public void setEncryptedKeyAlgorithm(String encryptedKeyAlgorithm) { + this.encryptedKeyAlgorithm = encryptedKeyAlgorithm; + } } |
Update of /cvsroot/tolven/tolvenEJB/src/org/tolven/trim In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8042/src/org/tolven/trim Modified Files: NewFacetLabel.java RoleSlot.java Participation.java BinaryDataEncoding.java EntityNamePartQualifier.java EntityClass.java ActParticipation.java ED.java CV.java EntityStatus.java RoleBind.java GTS.java EntityNamePartType.java Observation.java ObjectFactory.java ParticipationSubset.java CDSlot.java RoleInternal.java IVLINT.java PostalAddressUse.java TsBoundary.java NullFlavor.java ActMood.java IntegrityCheckType.java EntityNameUse.java RoleReference.java CD.java NewFacetValidate.java ActSlot.java ActReference.java DataType.java ActInternal.java ActRelationshipJoin.java RoleLinkType.java RealmCode.java SetOperator.java ParticipationSignature.java GTSSlot.java ActBind.java OutboundActRelationship.java IntegrityCheck.java CESlot.java AddressPartType.java BL.java InboundActRelationship.java TELFieldType.java ActRelationship.java ConcreteDatatype.java SETCESlot.java RoleNull.java ActStatus.java ActRelationshipSubset.java Slot.java ActRelationshipCheckpoint.java TimingEvent.java CR.java STSlot.java package-info.java Role.java TSSlot.java ActClass.java PQ.java NewFacetInput.java CompressionAlgorithm.java Act.java IntegrityCheckAlgorithm.java CE.java ContextControl.java ActRelationshipType.java ST.java ParticipationType.java ActNull.java NewFacet.java RoleStatus.java UpdateCode.java EDSlot.java II.java URL.java IVLTS.java EntityDeterminer.java RoleClass.java BLSlot.java ActStatusSlot.java RelationshipConjunction.java ObservationValueSlot.java IVLINTSlot.java RoleParticipation.java SETIISlot.java Trim.java AddressUse.java TelecommunicationAddressUse.java ActRelationshipSplit.java Added Files: NewFacetSet.java Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. --- NEW FILE: NewFacetSet.java --- // // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.2-b01-fcs // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. // Generated on: 2007.03.24 at 06:32:20 PM PDT // package org.tolven.trim; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlType; import javax.xml.bind.annotation.XmlValue; import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; /** * <p>Java class for NewFacetSet complex type. * * <p>The following schema fragment specifies the expected content contained within this class. * * <pre> * <complexType name="NewFacetSet"> * <simpleContent> * <extension base="<urn:tolven-org:trim:4.0>st"> * <attribute name="property" type="{http://www.w3.org/2001/XMLSchema}string" /> * <attribute name="language" type="{urn:tolven-org:trim:4.0}cs" /> * <attribute name="special" type="{http://www.w3.org/2001/XMLSchema}string" /> * </extension> * </simpleContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "NewFacetSet", propOrder = { "value" }) public class NewFacetSet { @XmlValue protected String value; @XmlAttribute protected String property; @XmlAttribute @XmlJavaTypeAdapter(CollapsedStringAdapter.class) protected String language; @XmlAttribute protected String special; /** * Gets the value of the value property. * * @return * possible object is * {@link String } * */ public String getValue() { return value; } /** * Sets the value of the value property. * * @param value * allowed object is * {@link String } * */ public void setValue(String value) { this.value = value; } /** * Gets the value of the property property. * * @return * possible object is * {@link String } * */ public String getProperty() { return property; } /** * Sets the value of the property property. * * @param value * allowed object is * {@link String } * */ public void setProperty(String value) { this.property = value; } /** * Gets the value of the language property. * * @return * possible object is * {@link String } * */ public String getLanguage() { return language; } /** * Sets the value of the language property. * * @param value * allowed object is * {@link String } * */ public void setLanguage(String value) { this.language = value; } /** * Gets the value of the special property. * * @return * possible object is * {@link String } * */ public String getSpecial() { return special; } /** * Sets the value of the special property. * * @param value * allowed object is * {@link String } * */ public void setSpecial(String value) { this.special = value; } } Index: EntityStatus.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/EntityStatus.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** EntityStatus.java 12 Mar 2007 08:47:11 -0000 1.3 --- EntityStatus.java 27 Mar 2007 23:23:56 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: BLSlot.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/BLSlot.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** BLSlot.java 12 Mar 2007 08:47:11 -0000 1.3 --- BLSlot.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ActMood.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ActMood.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ActMood.java 12 Mar 2007 08:47:09 -0000 1.3 --- ActMood.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: SetOperator.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/SetOperator.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** SetOperator.java 12 Mar 2007 08:47:12 -0000 1.3 --- SetOperator.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: EDSlot.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/EDSlot.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** EDSlot.java 12 Mar 2007 08:47:12 -0000 1.3 --- EDSlot.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: InboundActRelationship.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/InboundActRelationship.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** InboundActRelationship.java 12 Mar 2007 08:47:11 -0000 1.3 --- InboundActRelationship.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: RelationshipConjunction.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/RelationshipConjunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** RelationshipConjunction.java 12 Mar 2007 08:47:12 -0000 1.3 --- RelationshipConjunction.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: OutboundActRelationship.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/OutboundActRelationship.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** OutboundActRelationship.java 12 Mar 2007 08:47:11 -0000 1.3 --- OutboundActRelationship.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ActBind.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ActBind.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ActBind.java 12 Mar 2007 08:47:09 -0000 1.3 --- ActBind.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: EntityDeterminer.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/EntityDeterminer.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** EntityDeterminer.java 12 Mar 2007 08:47:09 -0000 1.3 --- EntityDeterminer.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: IVLINT.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/IVLINT.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** IVLINT.java 12 Mar 2007 08:47:09 -0000 1.3 --- IVLINT.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: RoleParticipation.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/RoleParticipation.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** RoleParticipation.java 12 Mar 2007 08:47:11 -0000 1.3 --- RoleParticipation.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: DataType.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/DataType.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** DataType.java 12 Mar 2007 08:47:11 -0000 1.3 --- DataType.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: EntityNamePartQualifier.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/EntityNamePartQualifier.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** EntityNamePartQualifier.java 12 Mar 2007 08:47:11 -0000 1.3 --- EntityNamePartQualifier.java 27 Mar 2007 23:23:56 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: GTSSlot.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/GTSSlot.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** GTSSlot.java 12 Mar 2007 08:47:11 -0000 1.3 --- GTSSlot.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: BinaryDataEncoding.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/BinaryDataEncoding.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** BinaryDataEncoding.java 12 Mar 2007 08:47:12 -0000 1.3 --- BinaryDataEncoding.java 27 Mar 2007 23:23:56 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: AddressPartType.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/AddressPartType.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** AddressPartType.java 12 Mar 2007 08:47:11 -0000 1.3 --- AddressPartType.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ActClass.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ActClass.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ActClass.java 12 Mar 2007 08:47:09 -0000 1.3 --- ActClass.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ConcreteDatatype.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ConcreteDatatype.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** ConcreteDatatype.java 12 Mar 2007 08:47:11 -0000 1.2 --- ConcreteDatatype.java 27 Mar 2007 23:23:57 -0000 1.3 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ActRelationshipJoin.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ActRelationshipJoin.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ActRelationshipJoin.java 12 Mar 2007 08:47:11 -0000 1.3 --- ActRelationshipJoin.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: NewFacet.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/NewFacet.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** NewFacet.java 12 Mar 2007 08:47:09 -0000 1.2 --- NewFacet.java 27 Mar 2007 23:23:57 -0000 1.3 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // *************** *** 12,16 **** import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; - import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; --- 12,15 ---- *************** *** 28,32 **** * <element name="label" type="{urn:tolven-org:trim:4.0}NewFacetLabel" minOccurs="0"/> * <element name="input" type="{urn:tolven-org:trim:4.0}NewFacetInput" minOccurs="0"/> ! * <element name="default" type="{urn:tolven-org:trim:4.0}NewFacetDefault" minOccurs="0"/> * <element name="validate" type="{urn:tolven-org:trim:4.0}NewFacetValidate" minOccurs="0"/> * </sequence> --- 27,31 ---- * <element name="label" type="{urn:tolven-org:trim:4.0}NewFacetLabel" minOccurs="0"/> * <element name="input" type="{urn:tolven-org:trim:4.0}NewFacetInput" minOccurs="0"/> ! * <element name="set" type="{urn:tolven-org:trim:4.0}NewFacetSet" minOccurs="0"/> * <element name="validate" type="{urn:tolven-org:trim:4.0}NewFacetValidate" minOccurs="0"/> * </sequence> *************** *** 43,47 **** "label", "input", ! "_default", "validate" }) --- 42,46 ---- "label", "input", ! "set", "validate" }) *************** *** 50,55 **** protected NewFacetLabel label; protected NewFacetInput input; ! @XmlElement(name = "default") ! protected NewFacetDefault _default; protected NewFacetValidate validate; @XmlAttribute --- 49,53 ---- protected NewFacetLabel label; protected NewFacetInput input; ! protected NewFacetSet set; protected NewFacetValidate validate; @XmlAttribute *************** *** 105,129 **** /** ! * Gets the value of the default property. * * @return * possible object is ! * {@link NewFacetDefault } * */ ! public NewFacetDefault getDefault() { ! return _default; } /** ! * Sets the value of the default property. * * @param value * allowed object is ! * {@link NewFacetDefault } * */ ! public void setDefault(NewFacetDefault value) { ! this._default = value; } --- 103,127 ---- /** ! * Gets the value of the set property. * * @return * possible object is ! * {@link NewFacetSet } * */ ! public NewFacetSet getSet() { ! return set; } /** ! * Sets the value of the set property. * * @param value * allowed object is ! * {@link NewFacetSet } * */ ! public void setSet(NewFacetSet value) { ! this.set = value; } Index: STSlot.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/STSlot.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** STSlot.java 12 Mar 2007 08:47:11 -0000 1.3 --- STSlot.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ActRelationshipSubset.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ActRelationshipSubset.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ActRelationshipSubset.java 12 Mar 2007 08:47:11 -0000 1.3 --- ActRelationshipSubset.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ActSlot.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ActSlot.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ActSlot.java 12 Mar 2007 08:47:11 -0000 1.3 --- ActSlot.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ActStatus.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ActStatus.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ActStatus.java 12 Mar 2007 08:47:11 -0000 1.3 --- ActStatus.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ActNull.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ActNull.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ActNull.java 12 Mar 2007 08:47:11 -0000 1.3 --- ActNull.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ActRelationshipType.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ActRelationshipType.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ActRelationshipType.java 12 Mar 2007 08:47:11 -0000 1.3 --- ActRelationshipType.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: NullFlavor.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/NullFlavor.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** NullFlavor.java 12 Mar 2007 08:47:11 -0000 1.3 --- NullFlavor.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: TelecommunicationAddressUse.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/TelecommunicationAddressUse.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** TelecommunicationAddressUse.java 12 Mar 2007 08:47:09 -0000 1.3 --- TelecommunicationAddressUse.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: RoleSlot.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/RoleSlot.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** RoleSlot.java 12 Mar 2007 08:47:11 -0000 1.3 --- RoleSlot.java 27 Mar 2007 23:23:56 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ParticipationType.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ParticipationType.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ParticipationType.java 12 Mar 2007 08:47:11 -0000 1.3 --- ParticipationType.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: NewFacetInput.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/NewFacetInput.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** NewFacetInput.java 12 Mar 2007 08:47:11 -0000 1.2 --- NewFacetInput.java 27 Mar 2007 23:23:57 -0000 1.3 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: Observation.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/Observation.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Observation.java 12 Mar 2007 08:47:09 -0000 1.3 --- Observation.java 27 Mar 2007 23:23:56 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: IntegrityCheckType.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/IntegrityCheckType.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** IntegrityCheckType.java 12 Mar 2007 08:47:11 -0000 1.3 --- IntegrityCheckType.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ParticipationSubset.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ParticipationSubset.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ParticipationSubset.java 12 Mar 2007 08:47:11 -0000 1.3 --- ParticipationSubset.java 27 Mar 2007 23:23:56 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: CD.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/CD.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** CD.java 12 Mar 2007 08:47:11 -0000 1.3 --- CD.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ActStatusSlot.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ActStatusSlot.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ActStatusSlot.java 12 Mar 2007 08:47:09 -0000 1.3 --- ActStatusSlot.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ActRelationshipCheckpoint.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ActRelationshipCheckpoint.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ActRelationshipCheckpoint.java 12 Mar 2007 08:47:11 -0000 1.3 --- ActRelationshipCheckpoint.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ActParticipation.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ActParticipation.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ActParticipation.java 12 Mar 2007 08:47:11 -0000 1.3 --- ActParticipation.java 27 Mar 2007 23:23:56 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: SETCESlot.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/SETCESlot.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** SETCESlot.java 12 Mar 2007 08:47:11 -0000 1.3 --- SETCESlot.java 27 Mar 2007 23:23:57 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: ObjectFactory.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/ObjectFactory.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ObjectFactory.java 12 Mar 2007 08:47:09 -0000 1.3 --- ObjectFactory.java 27 Mar 2007 23:23:56 -0000 1.4 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // *************** *** 46,118 **** /** ! * Create an instance of {@link Role } * */ ! public Role createRole() { ! return new Role(); } /** ! * Create an instance of {@link CDSlot } * */ ! public CDSlot createCDSlot() { ! return new CDSlot(); } /** ! * Create an instance of {@link EDSlot } * */ ! public EDSlot createEDSlot() { ! return new EDSlot(); } /** ! * Create an instance of {@link STSlot } * */ ! public STSlot createSTSlot() { ! return new STSlot(); } /** ! * Create an instance of {@link ObservationValueSlot } * */ ! public ObservationValueSlot createObservationValueSlot() { ! return new ObservationValueSlot(); } /** ! * Create an instance of {@link TSSlot } * */ ! public TSSlot createTSSlot() { ! return new TSSlot(); } /** ! * Create an instance of {@link ActNull } * */ ! public ActNull createActNull() { ! return new ActNull(); } /** ! * Create an instance of {@link OutboundActRelationship } * */ ! public OutboundActRelationship createOutboundActRelationship() { ! return new OutboundActRelationship(); } /** ! * Create an instance of {@link NewFacetInput } * */ ! public NewFacetInput createNewFacetInput() { ! return new NewFacetInput(); } --- 46,118 ---- /** ! * Create an instance of {@link IntegrityCheck } * */ ! public IntegrityCheck createIntegrityCheck() { ! return new IntegrityCheck(); } /** ! * Create an instance of {@link ST } * */ ! public ST createST() { ! return new ST(); } /** ! * Create an instance of {@link NewFacetLabel } * */ ! public NewFacetLabel createNewFacetLabel() { ! return new NewFacetLabel(); } /** ! * Create an instance of {@link ActRelationship } * */ ! public ActRelationship createActRelationship() { ! return new ActRelationship(); } /** ! * Create an instance of {@link ED } * */ ! public ED createED() { ! return new ED(); } /** ! * Create an instance of {@link Act } * */ ! public Act createAct() { ! return new Act(); } /** ! * Create an instance of {@link SETIISlot } * */ ! public SETIISlot createSETIISlot() { ! return new SETIISlot(); } /** ! * Create an instance of {@link InboundActRelationship } * */ ! public InboundActRelationship createInboundActRelationship() { ! return new InboundActRelationship(); } /** ! * Create an instance of {@link ActParticipation } * */ ! public ActParticipation createActParticipation() { ! return new ActParticipation(); } *************** *** 126,190 **** /** ! * Create an instance of {@link IntegrityCheck } * */ ! public IntegrityCheck createIntegrityCheck() { ! return new IntegrityCheck(); } /** ! * Create an instance of {@link ED } * */ ! public ED createED() { ! return new ED(); } /** ! * Create an instance of {@link Act } * */ ! public Act createAct() { ! return new Act(); } /** ! * Create an instance of {@link IVLTS } * */ ! public IVLTS createIVLTS() { ! return new IVLTS(); } /** ! * Create an instance of {@link NewFacetValidate } * */ ! public NewFacetValidate createNewFacetValidate() { ! return new NewFacetValidate(); } /** ! * Create an instance of {@link BL } * */ ! public BL createBL() { ! return new BL(); } /** ! * Create an instance of {@link II } * */ ! public II createII() { ! return new II(); } /** ! * Create an instance of {@link SETCESlot } * */ ! public SETCESlot createSETCESlot() { ! return new SETCESlot(); } --- 126,190 ---- /** ! * Create an instance of {@link TsBoundary } * */ ! public TsBoundary createTsBoundary() { ! return new TsBoundary(); } /** ! * Create an instance of {@link RoleBind } * */ ! public RoleBind createRoleBind() { ! return new RoleBind(); } /** ! * Create an instance of {@link CESlot } * */ ! public CESlot createCESlot() { ! return new CESlot(); } /** ! * Create an instance of {@link IVLINT } * */ ! public IVLINT createIVLINT() { ! return new IVLINT(); } /** ! * Create an instance of {@link PQ } * */ ! public PQ createPQ() { ! return new PQ(); } /** ! * Create an instance of {@link CD } * */ ! public CD createCD() { ! return new CD(); } /** ! * Create an instance of {@link CR } * */ ! public CR createCR() { ! return new CR(); } /** ! * Create an instance of {@link IntegrityCheckType } * */ ! public IntegrityCheckType createIntegrityCheckType() { ! return new IntegrityCheckType(); } *************** *** 198,438 **** /** ! * Create an instance of {@link ActInternal } * */ ! public ActInternal createActInternal() { ! return new ActInternal(); } /** ! * Create an instance of {@link NewFacetLabel } * */ ! public NewFacetLabel createNewFacetLabel() { ! return new NewFacetLabel(); } /** ! * Create an instance of {@link GTS } * */ ! public GTS createGTS() { ! return new GTS(); } /** ! * Create an instance of {@link RoleInternal } * */ ! public RoleInternal createRoleInternal() { ! return new RoleInternal(); } /** ! * Create an instance of {@link NewFacetDefault } * */ ! public NewFacetDefault createNewFacetDefault() { ! return new NewFacetDefault(); } /** ! * Create an instance of {@link IntegrityCheckType } * */ ! public IntegrityCheckType createIntegrityCheckType() { ! return new IntegrityCheckType(); } /** ! * Create an instance of {@link ActRelationship } * */ ! public ActRelationship createActRelationship() { ! return new ActRelationship(); } /** ! * Create an instance of {@link DataType } * */ ! public DataType createDataType() { ! return new DataType(); } /** ! * Create an instance of {@link TELFieldType } * */ ! public TELFieldType createTELFieldType() { ! return new TELFieldType(); } /** ! * Create an instance of {@link ActBind } * */ ! public ActBind createActBind() { ! return new ActBind(); } /** ! * Create an instance of {@link ST } * */ ! public ST createST() { ! return new ST(); } /** ! * Create an instance of {@link CV } * */ ! public CV createCV() { ! return new CV(); } /** ! * Create an instance of {@link CESlot } * */ ! public CESlot createCESlot() { ! return new CESlot(); } /** ! * Create an instance of {@link GTSSlot } * */ ! public GTSSlot createGTSSlot() { ! return new GTSSlot(); } /** ! * Create an instance of {@link ActParticipation } * */ ! public ActParticipation createActParticipation() { ! return new ActParticipation(); } /** ! * Create an instance of {@link BLSlot } * */ ! public BLSlot createBLSlot() { ! return new BLSlot(); } /** ! * Create an instance of {@link RoleBind } * */ ! public RoleBind createRoleBind() { ! return new RoleBind(); } /** ! * Create an instance of {@link PQ } * */ ! public PQ createPQ() { ! return new PQ(); } /** ! * Create an instance of {@link ActStatusSlot } * */ ! public ActStatusSlot createActStatusSlot() { ! return new ActStatusSlot(); } /** ! * Create an instance of {@link ActReference } * */ ! public ActReference createActReference() { ! return new ActReference(); } /** ! * Create an instance of {@link RoleNull } * */ ! public RoleNull createRoleNull() { ! return new RoleNull(); } /** ! * Create an instance of {@link CE } * */ ! public CE createCE() { ! return new CE(); } /** ! * Create an instance of {@link CD } * */ ! public CD createCD() { ! return new CD(); } /** ! * Create an instance of {@link Observation } * */ ! public Observation createObservation() { ! return new Observation(); } /** ! * Create an instance of {@link IVLINT } * */ ! public IVLINT createIVLINT() { ! return new IVLINT(); } /** ! * Create an instance of {@link RoleParticipation } * */ ! public RoleParticipation createRoleParticipation() { ! return new RoleParticipation(); } /** ! * Create an instance of {@link TsBoundary } * */ ! public TsBoundary createTsBoundary() { ! return new TsBoundary(); } /** ! * Create an instance of {@link CR } * */ ! public CR createCR() { ! return new CR(); } /** ! * Create an instance of {@link SETIISlot } * */ ! public SETIISlot createSETIISlot() { ! return new SETIISlot(); } /** ! * Create an instance of {@link InboundActRelationship } * */ ! public InboundActRelationship createInboundActRelationship() { ! return new InboundActRelationship(); } --- 198,438 ---- /** ! * Create an instance of {@link NewFacetInput } * */ ! public NewFacetInput createNewFacetInput() { ! return new NewFacetInput(); } /** ! * Create an instance of {@link IVLTS } * */ ! public IVLTS createIVLTS() { ! return new IVLTS(); } /** ! * Create an instance of {@link II } * */ ! public II createII() { ! return new II(); } /** ! * Create an instance of {@link OutboundActRelationship } * */ ! public OutboundActRelationship createOutboundActRelationship() { ! return new OutboundActRelationship(); } /** ! * Create an instance of {@link EDSlot } * */ ! public EDSlot createEDSlot() { ! return new EDSlot(); } /** ! * Create an instance of {@link ActNull } * */ ! public ActNull createActNull() { ! return new ActNull(); } /** ! * Create an instance of {@link DataType } * */ ! public DataType createDataType() { ! return new DataType(); } /** ! * Create an instance of {@link GTS } * */ ! public GTS createGTS() { ! return new GTS(); } /** ! * Create an instance of {@link BL } * */ ! public BL createBL() { ! return new BL(); } /** ! * Create an instance of {@link CV } * */ ! public CV createCV() { ! return new CV(); } /** ! * Create an instance of {@link BLSlot } * */ ! public BLSlot createBLSlot() { ! return new BLSlot(); } /** ! * Create an instance of {@link STSlot } * */ ! public STSlot createSTSlot() { ! return new STSlot(); } /** ! * Create an instance of {@link CE } * */ ! public CE createCE() { ! return new CE(); } /** ! * Create an instance of {@link NewFacetValidate } * */ ! public NewFacetValidate createNewFacetValidate() { ! return new NewFacetValidate(); } /** ! * Create an instance of {@link ActBind } * */ ! public ActBind createActBind() { ! return new ActBind(); } /** ! * Create an instance of {@link CDSlot } * */ ! public CDSlot createCDSlot() { ! return new CDSlot(); } /** ! * Create an instance of {@link ActInternal } * */ ! public ActInternal createActInternal() { ! return new ActInternal(); } /** ! * Create an instance of {@link RoleNull } * */ ! public RoleNull createRoleNull() { ! return new RoleNull(); } /** ! * Create an instance of {@link Role } * */ ! public Role createRole() { ! return new Role(); } /** ! * Create an instance of {@link ActStatusSlot } * */ ! public ActStatusSlot createActStatusSlot() { ! return new ActStatusSlot(); } /** ! * Create an instance of {@link RoleInternal } * */ ! public RoleInternal createRoleInternal() { ! return new RoleInternal(); } /** ! * Create an instance of {@link SETCESlot } * */ ! public SETCESlot createSETCESlot() { ! return new SETCESlot(); } /** ! * Create an instance of {@link ActReference } * */ ! public ActReference createActReference() { ! return new ActReference(); } /** ! * Create an instance of {@link GTSSlot } * */ ! public GTSSlot createGTSSlot() { ! return new GTSSlot(); } /** ! * Create an instance of {@link ObservationValueSlot } * */ ! public ObservationValueSlot createObservationValueSlot() { ! return new ObservationValueSlot(); } /** ! * Create an instance of {@link Observation } * */ ! public Observation createObservation() { ! return new Observation(); } /** ! * Create an instance of {@link TSSlot } * */ ! public TSSlot createTSSlot() { ! return new TSSlot(); } /** ! * Create an instance of {@link TELFieldType } * */ ! public TELFieldType createTELFieldType() { ! return new TELFieldType(); } /** ! * Create an instance of {@link NewFacetSet } * */ ! public NewFacetSet createNewFacetSet() { ! return new NewFacetSet(); } /** ! * Create an instance of {@link RoleParticipation } * */ ! public RoleParticipation createRoleParticipation() { ! return new RoleParticipation(); } Index: NewFacetValidate.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/NewFacetValidate.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** NewFacetValidate.java 12 Mar 2007 08:47:12 -0000 1.2 --- NewFacetValidate.java 27 Mar 2007 23:23:57 -0000 1.3 *************** *** 3,7 **** // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.08 at 11:30:35 PM PST // --- 3,7 ---- // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. ! // Generated on: 2007.03.24 at 06:32:20 PM PDT // Index: CompressionAlgorithm.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/CompressionAlgorithm.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 ... [truncated message content] |
From: John C. <jc...@us...> - 2007-03-27 23:24:02
|
Update of /cvsroot/tolven/tolvenEJB/src/org/tolven/doc/bean In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8042/src/org/tolven/doc/bean Modified Files: EvaluateCCRPersonal.java EvaluateCCRClinical.java Evaluator.java Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. Index: Evaluator.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/doc/bean/Evaluator.java,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** Evaluator.java 25 Mar 2007 04:21:10 -0000 1.12 --- Evaluator.java 27 Mar 2007 23:23:58 -0000 1.13 *************** *** 88,92 **** msgId = msg.getJMSMessageID(); TolvenMessage tm = (TolvenMessage) ((ObjectMessage)msg).getObject(); ! System.out.println("MsgID: " + msg.getJMSMessageID() + " Principal: " + ctx.getCallerPrincipal().getName()); // System.out.println( tm.getPayload()); if (CCRns.equals(tm.getXmlNS())) { --- 88,92 ---- msgId = msg.getJMSMessageID(); TolvenMessage tm = (TolvenMessage) ((ObjectMessage)msg).getObject(); ! System.out.println("MsgID: " + msg.getJMSMessageID() + " Account: " + tm.getAccountId()); // System.out.println( tm.getPayload()); if (CCRns.equals(tm.getXmlNS())) { *************** *** 120,125 **** docXML.setAsEncryptedContent(tm.getPayload()); System.out.println( "Document set payload, id: " + docXML.getId()); - documentLocal.finalizeDocument(docXML); - System.out.println( "Finalized Document, id: " + docXML.getId()); } else { // Document already exists, so get it. --- 120,123 ---- *************** *** 127,130 **** --- 125,130 ---- System.out.println( "Document, id: " + docXML.getId() + " already exists"); } + documentLocal.finalizeDocument(docXML); + System.out.println( "Finalized Document, id: " + docXML.getId()); // We probably can't read the document we already have so we must use the payload // that was decrypted and sent to us. Index: EvaluateCCRClinical.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/doc/bean/EvaluateCCRClinical.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** EvaluateCCRClinical.java 20 Mar 2007 09:13:07 -0000 1.3 --- EvaluateCCRClinical.java 27 Mar 2007 23:23:58 -0000 1.4 *************** *** 33,37 **** @Override public void process(TolvenMessage tm) throws CCRException, Exception { ! System.out.println( "Processing CCR document for clinical account: " + tm.getAccountId()); DocCCR docCCR = documentLocal.createCCRDocument( tm.getAuthorId(), tm.getAccountId() ); docCCR.setAsEncryptedContent(tm.getPayload()); --- 33,37 ---- @Override public void process(TolvenMessage tm) throws CCRException, Exception { ! // System.out.println( "Processing CCR document for clinical account: " + tm.getAccountId()); DocCCR docCCR = documentLocal.createCCRDocument( tm.getAuthorId(), tm.getAccountId() ); docCCR.setAsEncryptedContent(tm.getPayload()); *************** *** 176,179 **** --- 176,180 ---- MenuStructure msTest = menuLocal.findDescendentMenuStructure(mdPatient.getAccount().getId(), mdPatient.getMenuStructure(), "test"); MenuStructure msResultsLab = menuLocal.findDescendentMenuStructure(mdPatient.getAccount().getId(), mdPatient.getMenuStructure(), "results:lab"); + MenuStructure msResultsSumm = menuLocal.findDescendentMenuStructure(mdPatient.getAccount().getId(), mdPatient.getMenuStructure(), "summary:resultsum"); for (ResultType result : ccr.getBody().getResults().getResult()) { // Create the result *************** *** 187,190 **** --- 188,203 ---- mdResult.setString02(result.getStatusText()); menuLocal.persistMenuData(mdResult); + + // Create the summary result + MenuData mdSummResult = new MenuData(); + mdSummResult.setMenuStructure( msResultsSumm ); + mdSummResult.setDocumentId(documentId); + mdSummResult.setAccount(mdPatient.getAccount()); + mdSummResult.setParent01(mdPatient); + mdSummResult.setString01(result.getDescriptionText()); + mdSummResult.setDate01(result.getDateTimeType(ResultType.COLLECTION_DATE).getDateValue()); + mdSummResult.setString02(result.getStatusText()); + mdSummResult.setReference(mdResult); + menuLocal.persistMenuData(mdSummResult); // We also need to represent individual test results (independent of result) for (TestType test : result.getTest()) { Index: EvaluateCCRPersonal.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/doc/bean/EvaluateCCRPersonal.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** EvaluateCCRPersonal.java 20 Mar 2007 09:13:07 -0000 1.4 --- EvaluateCCRPersonal.java 27 Mar 2007 23:23:57 -0000 1.5 *************** *** 36,40 **** @Override public void process(TolvenMessage tm) throws Exception { ! System.out.println( "Processing CCR document for personal account: " + tm.getAccountId()); DocCCR docCCR = documentLocal.createCCRDocument( tm.getAuthorId(), tm.getAccountId() ); docCCR.setAsEncryptedContent(tm.getPayload()); --- 36,40 ---- @Override public void process(TolvenMessage tm) throws Exception { ! // System.out.println( "Processing CCR document for personal account: " + tm.getAccountId()); DocCCR docCCR = documentLocal.createCCRDocument( tm.getAuthorId(), tm.getAccountId() ); docCCR.setAsEncryptedContent(tm.getPayload()); *************** *** 259,262 **** --- 259,263 ---- MenuStructure msTest = menuLocal.findDescendentMenuStructure(mdPatient.getAccount().getId(), mdPatient.getMenuStructure(), "test"); MenuStructure msResultsLab = menuLocal.findDescendentMenuStructure(mdPatient.getAccount().getId(), mdPatient.getMenuStructure(), "results:lab"); + MenuStructure msResultsSumm = menuLocal.findDescendentMenuStructure(mdPatient.getAccount().getId(), mdPatient.getMenuStructure(), "summary:resultsum"); for (ResultType result : ccr.getBody().getResults().getResult()) { // Create the result *************** *** 270,273 **** --- 271,286 ---- mdResult.setString02(result.getStatusText()); menuLocal.persistMenuData(mdResult); + // Create the summary result + MenuData mdSummResult = new MenuData(); + mdSummResult.setMenuStructure( msResultsSumm ); + mdSummResult.setDocumentId(documentId); + mdSummResult.setAccount(mdPatient.getAccount()); + mdSummResult.setParent01(mdPatient); + mdSummResult.setString01(result.getDescriptionText()); + mdSummResult.setDate01(result.getDateTimeType(ResultType.COLLECTION_DATE).getDateValue()); + mdSummResult.setString02(result.getStatusText()); + mdSummResult.setReference(mdResult); + menuLocal.persistMenuData(mdSummResult); + // We also need to represent individual test results (independent of result) for (TestType test : result.getTest()) { |
From: John C. <jc...@us...> - 2007-03-27 23:24:02
|
Update of /cvsroot/tolven/tolvenEJB/src/org/tolven/security/bean In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8042/src/org/tolven/security/bean Modified Files: DocProtectionBean.java Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. Index: DocProtectionBean.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/security/bean/DocProtectionBean.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** DocProtectionBean.java 20 Mar 2007 09:13:07 -0000 1.2 --- DocProtectionBean.java 27 Mar 2007 23:23:58 -0000 1.3 *************** *** 59,63 **** */ public byte[] getDecryptedContent(DocContentSecurity doc) { ! System.out.println("DocProtectedBean.getDecryptedContent"); if (doc.getContent() == null) return doc.getContent(); --- 59,63 ---- */ public byte[] getDecryptedContent(DocContentSecurity doc) { ! // System.out.println("DocProtectedBean.getDecryptedContent"); if (doc.getContent() == null) return doc.getContent(); *************** *** 87,91 **** throw new RuntimeException(": No AccountPrivateKey found in Subject " + principal.getName()); AccountPrivateKey activeAccountPrivateKey = accountPrivateKeys.iterator().next(); ! System.out.println(getClass() + " Decryption AccountPrivateKey=" + activeAccountPrivateKey); if (doc.getDocumentSecretKey() == null) { //TODO: For backward compatibility, we no longer throw an exception here, since older accounts never had a documenSecretKey and --- 87,91 ---- throw new RuntimeException(": No AccountPrivateKey found in Subject " + principal.getName()); AccountPrivateKey activeAccountPrivateKey = accountPrivateKeys.iterator().next(); ! // System.out.println(getClass() + " Decryption AccountPrivateKey=" + activeAccountPrivateKey); if (doc.getDocumentSecretKey() == null) { //TODO: For backward compatibility, we no longer throw an exception here, since older accounts never had a documenSecretKey and |
From: John C. <jc...@us...> - 2007-03-27 23:24:02
|
Update of /cvsroot/tolven/tolvenEJB/resources/xsd In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8042/resources/xsd Modified Files: trim4.xsd Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. Index: trim4.xsd =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/resources/xsd/trim4.xsd,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** trim4.xsd 12 Mar 2007 08:47:13 -0000 1.3 --- trim4.xsd 27 Mar 2007 23:23:58 -0000 1.4 *************** *** 15,19 **** <xs:element name="documentId" type="xs:string"/> <xs:element name="element" type="xs:string"/> - <xs:element name="instance" type="xs:string"/> <xs:element name="menu" type="xs:string" maxOccurs="unbounded"/> <xs:element name="act" type="ActSlot"/> --- 15,18 ---- *************** *** 275,279 **** <xs:element name="label" type="NewFacetLabel" minOccurs="0"/> <xs:element name="input" type="NewFacetInput" minOccurs="0" maxOccurs="1"/> ! <xs:element name="default" type="NewFacetDefault" minOccurs="0"/> <xs:element name="validate" type="NewFacetValidate" minOccurs="0"/> </xs:sequence> --- 274,278 ---- <xs:element name="label" type="NewFacetLabel" minOccurs="0"/> <xs:element name="input" type="NewFacetInput" minOccurs="0" maxOccurs="1"/> ! <xs:element name="set" type="NewFacetSet" minOccurs="0"/> <xs:element name="validate" type="NewFacetValidate" minOccurs="0"/> </xs:sequence> *************** *** 304,310 **** </xs:complexType> ! <xs:complexType name="NewFacetDefault"> <xs:simpleContent> <xs:extension base="st"> <xs:attribute name="language" type="cs" use="optional"/> <xs:attribute name="special" type="xs:string" use="optional"/> --- 303,310 ---- </xs:complexType> ! <xs:complexType name="NewFacetSet"> <xs:simpleContent> <xs:extension base="st"> + <xs:attribute name="property" type="xs:string" use="optional"/> <xs:attribute name="language" type="cs" use="optional"/> <xs:attribute name="special" type="xs:string" use="optional"/> |
From: John C. <jc...@us...> - 2007-03-27 23:24:02
|
Update of /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/util In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8042/src/org/tolven/trim/util Modified Files: TrimFactory.java Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. Index: TrimFactory.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/trim/util/TrimFactory.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** TrimFactory.java 12 Mar 2007 08:47:12 -0000 1.2 --- TrimFactory.java 27 Mar 2007 23:23:57 -0000 1.3 *************** *** 103,113 **** */ public Date toDate( GTSSlot gts ) throws ParseException { ! if (gts==null) return null; ! if (gts.getNull()!=null) return null; ! if (gts.getIVLTS()!=null) return null; ! if (gts.getTS()==null) return null; ! if (gts.getTS().size()!=1) return null; ! SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssZZ"); ! return sdf.parse(gts.getTS().get(0)); } --- 103,133 ---- */ public Date toDate( GTSSlot gts ) throws ParseException { ! if (gts==null) { ! // System.out.println( "GTS is null"); ! return null; ! } ! if (gts.getNull()!=null) { ! // System.out.println( "GTS null flavor"); ! return null; ! } ! if (gts.getTS()==null) { ! // System.out.println( "no TS"); ! return null; ! } ! if (gts.getTS().size()!=1) { ! // System.out.println( "TS.size()=" + gts.getTS().size()); ! return null; ! } ! return toDate(gts.getTS().get(0)); ! } ! ! public Date toDate( String value ) throws ParseException { ! SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss"); ! return sdf.parse(value); ! } ! ! public String toTS( Date date ) throws ParseException { ! SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss"); ! return sdf.format(date); } |
From: John C. <jc...@us...> - 2007-03-27 23:24:02
|
Update of /cvsroot/tolven/tolvenEJB/src/org/tolven/app/entity In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8042/src/org/tolven/app/entity Modified Files: MenuData.java Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. Index: MenuData.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/app/entity/MenuData.java,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** MenuData.java 12 Mar 2007 08:47:12 -0000 1.19 --- MenuData.java 27 Mar 2007 23:23:57 -0000 1.20 *************** *** 15,18 **** --- 15,19 ---- import java.io.Serializable; + import java.text.ParseException; import java.util.Collection; import java.util.Date; *************** *** 37,40 **** --- 38,43 ---- import org.tolven.doc.entity.DocBase; + import org.tolven.trim.GTSSlot; + import org.tolven.trim.util.TrimFactory; import org.tolven.core.entity.Account; import org.tolven.core.entity.Status; *************** *** 529,532 **** --- 532,541 ---- this.date01 = date01; } + + public void setDate01(GTSSlot gts) throws ParseException { + TrimFactory tf = new TrimFactory(); + setDate01( tf.toDate(gts)); + System.out.println( "Date stored: " + getDate01()); + } /** |
From: John C. <jc...@us...> - 2007-03-27 23:24:01
|
Update of /cvsroot/tolven/tolvenEJB/resources/rules In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8042/resources/rules Modified Files: ephr.drl Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. Index: ephr.drl =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/resources/rules/ephr.drl,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ephr.drl 12 Mar 2007 08:47:12 -0000 1.3 --- ephr.drl 27 Mar 2007 23:23:58 -0000 1.4 *************** *** 75,78 **** --- 75,80 ---- mdObs.setPqStringVal01( Double.toString( mdObs.getPqValue01()) ); mdObs.setPqUnits01($act.getObservation().getValue().getPQS().get(0).getUnit()); + System.out.println( "[ephr.drl]EffectiveTime " + $act.getEffectiveTime()); + mdObs.setDate01($act.getEffectiveTime()); assert( mdObs ); end |
From: John C. <jc...@us...> - 2007-03-27 23:24:01
|
Update of /cvsroot/tolven/tolvenEJB/src/org/tolven/gen/bean In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8042/src/org/tolven/gen/bean Modified Files: FamilyGenerator.java Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. Index: FamilyGenerator.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/gen/bean/FamilyGenerator.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** FamilyGenerator.java 21 Mar 2007 21:01:41 -0000 1.1 --- FamilyGenerator.java 27 Mar 2007 23:23:58 -0000 1.2 *************** *** 67,74 **** int genKids = 0; ! // Start with a primary person (we should find a suitable mom or dad in 100 tries) ! for (int c = 0; c < 100; c++) { VirtualPerson person = generatePerson(); primaryAge = person.getAgeInYears(now); if ( primaryAge < 18 ) continue; if (primaryAge < 50) genKids = 3; --- 67,75 ---- int genKids = 0; ! // Start with a primary person (we should find a suitable mom or dad in 500 tries) ! for (int c = 0; c < 500; c++) { VirtualPerson person = generatePerson(); primaryAge = person.getAgeInYears(now); + System.out.println( "[FamilyGen] Candidate: " + primaryAge + " year" + " " + person.getGender() ); if ( primaryAge < 18 ) continue; if (primaryAge < 50) genKids = 3; *************** *** 89,92 **** --- 90,94 ---- } family.addMember( person, role ); + if (c > 70 ) System.out.println( "[FamilyGen] Person candidates skipped: " + c ); break; } |
From: John C. <jc...@us...> - 2007-03-27 23:24:01
|
Update of /cvsroot/tolven/tolvenEJB/src/org/tolven/security/auth In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8042/src/org/tolven/security/auth Modified Files: KeyLoginModule.java Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. Index: KeyLoginModule.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/security/auth/KeyLoginModule.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** KeyLoginModule.java 20 Mar 2007 09:13:07 -0000 1.9 --- KeyLoginModule.java 27 Mar 2007 23:23:58 -0000 1.10 *************** *** 59,63 **** public void initialize(Subject subject, CallbackHandler callbackHandler, Map<String, ?> arg2, Map<String, ?> arg3) { ! System.out.println(getClass() + " initialize()"); this.subject = subject; this.callbackHandler = callbackHandler; --- 59,63 ---- public void initialize(Subject subject, CallbackHandler callbackHandler, Map<String, ?> arg2, Map<String, ?> arg3) { ! // System.out.println(getClass() + " initialize()"); this.subject = subject; this.callbackHandler = callbackHandler; *************** *** 65,69 **** public boolean login() throws LoginException { ! System.out.println(getClass() + " begin login"); if (callbackHandler == null) throw new LoginException("No CallbackHandler"); --- 65,69 ---- public boolean login() throws LoginException { ! // System.out.println(getClass() + " begin login"); if (callbackHandler == null) throw new LoginException("No CallbackHandler"); *************** *** 110,114 **** public boolean commit() throws LoginException { ! System.out.println(getClass() + ": begin commit"); try { // TolvenPrncipal: Ensure there is only one Group called Roles --- 110,114 ---- public boolean commit() throws LoginException { ! // System.out.println(getClass() + ": begin commit"); try { // TolvenPrncipal: Ensure there is only one Group called Roles *************** *** 155,159 **** userPrivateKey.unlockPrivateKey(password); // Populate the Subject ! System.out.println(getClass() + ": Adding UserPrivateKey to Subject " + principalName); // UserPrivateKey: Ensure there is only one UserPrivateKey in a Subject by removing any that might be there Object obj = null; --- 155,159 ---- userPrivateKey.unlockPrivateKey(password); // Populate the Subject ! // System.out.println(getClass() + ": Adding UserPrivateKey to Subject " + principalName); // UserPrivateKey: Ensure there is only one UserPrivateKey in a Subject by removing any that might be there Object obj = null; *************** *** 164,168 **** } subject.getPrivateCredentials().add(userPrivateKey); ! System.out.println(getClass() + ": Adding UserPublicKey to Subject " + principalName); // UserPublicKey: Ensure there is only one UserPublicKey in a Subject by removing any that might be there for (Iterator iter = subject.getPublicCredentials().iterator(); iter.hasNext();) { --- 164,168 ---- } subject.getPrivateCredentials().add(userPrivateKey); ! // System.out.println(getClass() + ": Adding UserPublicKey to Subject " + principalName); // UserPublicKey: Ensure there is only one UserPublicKey in a Subject by removing any that might be there for (Iterator iter = subject.getPublicCredentials().iterator(); iter.hasNext();) { *************** *** 177,181 **** if (accountPrivateKey == null) throw new LoginException(getClass() + ": Could not locate an AccountPrivateKey for AccountUser with id=" + accountUserId); ! System.out.println(getClass() + ": Adding AccountPrivateKey to Subject " + principalName); // AccountPrivateKey: Ensure there is only one AccountPrivateKey in a Subject by removing any that might be there for (Iterator iter = subject.getPublicCredentials().iterator(); iter.hasNext();) { --- 177,181 ---- if (accountPrivateKey == null) throw new LoginException(getClass() + ": Could not locate an AccountPrivateKey for AccountUser with id=" + accountUserId); ! // System.out.println(getClass() + ": Adding AccountPrivateKey to Subject " + principalName); // AccountPrivateKey: Ensure there is only one AccountPrivateKey in a Subject by removing any that might be there for (Iterator iter = subject.getPublicCredentials().iterator(); iter.hasNext();) { *************** *** 194,201 **** iter.remove(); } ! System.out.println(getClass() + ": Adding AccountPublicKey to Subject " + principalName); subject.getPublicCredentials().add(accountPublicKey); } ! System.out.println(getClass() + ": completing login for " + principalName); } catch (Exception ex) { ex.printStackTrace(); --- 194,201 ---- iter.remove(); } ! // System.out.println(getClass() + ": Adding AccountPublicKey to Subject " + principalName); subject.getPublicCredentials().add(accountPublicKey); } ! // System.out.println(getClass() + ": completing login for " + principalName); } catch (Exception ex) { ex.printStackTrace(); |
From: John C. <jc...@us...> - 2007-03-27 23:24:01
|
Update of /cvsroot/tolven/tolvenEJB/src/org/tolven/app/bean In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8042/src/org/tolven/app/bean Modified Files: MenuBean.java Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. Index: MenuBean.java =================================================================== RCS file: /cvsroot/tolven/tolvenEJB/src/org/tolven/app/bean/MenuBean.java,v retrieving revision 1.51 retrieving revision 1.52 diff -C2 -d -r1.51 -r1.52 *** MenuBean.java 12 Mar 2007 08:47:12 -0000 1.51 --- MenuBean.java 27 Mar 2007 23:23:58 -0000 1.52 *************** *** 632,636 **** MenuStructure resultsSummary = new MenuStructure( ! account, summary, "resultSummary.xhtml", null, 4, "resultsum", "New Results", "true", root.getPath() + ":patient:results:new", "portlet" ); em.persist( resultsSummary ); em.persist( new MSColumn( resultsSummary, 1, "Date", "date01", "yyyy") ); --- 632,636 ---- MenuStructure resultsSummary = new MenuStructure( ! account, summary, "resultSummary.xhtml", null, 4, "resultsum", "Results", "true", root.getPath() + ":patient:results:new", "portlet" ); em.persist( resultsSummary ); em.persist( new MSColumn( resultsSummary, 1, "Date", "date01", "yyyy") ); *************** *** 646,650 **** MenuStructure obsSummary = new MenuStructure( ! account, summary, "obsSummary.xhtml", null, 7, "obssum", "Observations", "true", root.getPath() + ":patient:doc:obs", "portlet" ); em.persist( obsSummary ); --- 646,650 ---- MenuStructure obsSummary = new MenuStructure( ! account, summary, "obsSummary.xhtml", null, 7, "obssum", "Observations", "true", root.getPath() + ":patient:doc:obs:list", "portlet" ); em.persist( obsSummary ); |
From: John C. <jc...@us...> - 2007-03-27 23:24:00
|
Update of /cvsroot/tolven/tolvenEJB/src/test/org/tolven/trim In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8042/src/test/org/tolven/trim Added Files: GTSTests.java Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. --- NEW FILE: GTSTests.java --- package test.org.tolven.trim; import java.text.ParseException; import java.util.Date; import junit.framework.TestCase; import org.tolven.trim.GTSSlot; import org.tolven.trim.util.TrimFactory; public class GTSTests extends TestCase { /** * Generate an HL7 TS string, convert it to a Date, and compare to the original date. * @throws ParseException */ public void testGTS1() throws ParseException { TrimFactory tf = new TrimFactory(); Date now = new Date(); String ts = tf.toTS(now); Date now2 = tf.toDate(ts); System.out.println( "TS(now)=" + ts + " Date=" + now2); assertTrue(Math.abs(now2.getTime()-now.getTime()) < 1000); } /** * Generate an HL7 TS string, store in a GTSSlot, compate the resulting Date to the original. * @throws ParseException */ public void testGTS2() throws ParseException { TrimFactory tf = new TrimFactory(); Date now = new Date(); String ts = tf.toTS(now); GTSSlot gts = new GTSSlot(); gts.getTS().add(ts); Date now2 = tf.toDate(gts); assertTrue(Math.abs(now2.getTime()-now.getTime()) < 1000); } } |
From: John C. <jc...@us...> - 2007-03-27 23:23:43
|
Update of /cvsroot/tolven/tolvenWEB/web/scripts In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv7993/web/scripts Modified Files: tolvenwiz.js rico.js Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. Index: tolvenwiz.js =================================================================== RCS file: /cvsroot/tolven/tolvenWEB/web/scripts/tolvenwiz.js,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** tolvenwiz.js 20 Mar 2007 19:53:07 -0000 1.8 --- tolvenwiz.js 27 Mar 2007 23:23:42 -0000 1.9 *************** *** 3,7 **** function makeHeading( prefix, stepNumber, title ) { ! return '<span style="display:none" id="' + prefix + 'step' + stepNumber + ':head">Step ' + stepNumber + '- <strong>' + title + '</strong></span>'; } --- 3,7 ---- function makeHeading( prefix, stepNumber, title ) { ! return '<span style="display:none" id="' + prefix + 'step' + stepNumber + ':head">Step ' + stepNumber + ' - <strong>' + title + '</strong></span>'; } *************** *** 52,56 **** var stepHeadings = ""; var stepIcons = ""; ! if (steps.length > 1) { for ( var s=0; s < steps.length; s++) { steps[s].id = prefix+ 'step' + (s+1); --- 52,56 ---- var stepHeadings = ""; var stepIcons = ""; ! if (steps.length > 0) { for ( var s=0; s < steps.length; s++) { steps[s].id = prefix+ 'step' + (s+1); *************** *** 58,65 **** stepHeadings = stepHeadings + makeHeading( prefix, s+1, steps[s].title ); stepIcons = stepIcons + makeIcon( prefix, s+1, steps[s].title ); } } ! $(prefix+'stepHeadings').innerHTML = stepHeadings; ! $(prefix+'stepIcons').innerHTML = stepIcons; showStep(prefix, firstStep); } --- 58,72 ---- stepHeadings = stepHeadings + makeHeading( prefix, s+1, steps[s].title ); stepIcons = stepIcons + makeIcon( prefix, s+1, steps[s].title ); + var help = document.getElementsByClassName( "help", steps[s]); + if (help.length > 0) { + help[0].id = prefix + 'help' + (s+1); + Element.hide(help[0]); + } } } ! if (steps.length > 1) { ! $(prefix+'stepHeadings').innerHTML = stepHeadings; ! $(prefix+'stepIcons').innerHTML = stepIcons; ! } showStep(prefix, firstStep); } *************** *** 71,90 **** var lastStep = 1*root.getAttribute('lastStep'); if (stepNumber==currentStep) return; ! if (stepNumber==lastStep) { ! $(prefix+'nextButton').disabled=true; ! $(prefix+'submitButton').disabled=false; } else { ! $(prefix+'nextButton').disabled=false; ! $(prefix+'submitButton').disabled=true; ! } ! if (stepNumber==1) $(prefix+'prevButton').disabled=true; ! else $(prefix+'prevButton').disabled=false; ! if (currentStep > 0) { ! Element.hide(prefix+'step'+currentStep+':head', prefix+'step'+currentStep); ! $(prefix+'step'+currentStep+':sel').className='inactive'; ! } ! if (stepNumber > 0) { ! Element.show(prefix+'step'+stepNumber+':head', prefix+'step'+stepNumber); ! $(prefix+'step'+stepNumber+':sel').className='active'; } root.setAttribute('currentStep', stepNumber); --- 78,101 ---- var lastStep = 1*root.getAttribute('lastStep'); if (stepNumber==currentStep) return; ! if (lastStep == 1) { ! Element.show(prefix+'step'+stepNumber); } else { ! if (stepNumber==lastStep) { ! $(prefix+'nextButton').disabled=true; ! $(prefix+'submitButton').disabled=false; ! } else { ! $(prefix+'nextButton').disabled=false; ! $(prefix+'submitButton').disabled=true; ! } ! if (stepNumber==1) $(prefix+'prevButton').disabled=true; ! else $(prefix+'prevButton').disabled=false; ! if (currentStep > 0) { ! Element.hide(prefix+'step'+currentStep+':head', prefix+'step'+currentStep); ! $(prefix+'step'+currentStep+':sel').className='inactive'; ! } ! if (stepNumber > 0) { ! Element.show(prefix+'step'+stepNumber+':head', prefix+'step'+stepNumber); ! $(prefix+'step'+stepNumber+':sel').className='active'; ! } } root.setAttribute('currentStep', stepNumber); *************** *** 286,316 **** } } ! // TBD - now should be server now. function setNow( field ) { var now = new Date(); - // var m = now.getMinutes() - (now.getMinutes() % 5 ); - // now.setMinutes( m ); now.setSeconds( 0 ); ! $(field).setAttribute( 'now', now.toString() ); showTime( field ); } function showTime( field ) { ! $(field).value = $(field).getAttribute( 'now' ); } ! function addHours( field, offset ) { ! if ($(field).getAttribute( 'now' )==null) setNow( field ); ! var now = new Date(Date.parse( $(field).getAttribute( 'now' ))); ! now.setHours( now.getHours() + offset ); ! $(field).setAttribute( 'now', now.toString() ); ! showTime( field ); } function addMinutes( field, offset ) { ! if ($(field).getAttribute( 'now' )==null) setNow( field ); ! var now = new Date(Date.parse( $(field).getAttribute( 'now' ))); ! now.setMinutes( now.getMinutes() + offset ); ! $(field).setAttribute( 'now', now.toString() ); showTime( field ); } --- 297,332 ---- } } ! function setNow( field ) { var now = new Date(); now.setSeconds( 0 ); ! $(field).value = toTS( now ); showTime( field ); } + function fromTS( ts ) { + return new Date( ts.substr(0, 4), new Number(ts.substr(4,2))-1, ts.substr(6,2), ts.substr(8,2), ts.substr(10,2), ts.substr(12,2) ); + } + function showTime( field ) { ! var date = fromTS( $(field).value ); ! $(field+'vis').value = date.toString(); } ! function toTS( date ) { ! // Set HL7 TS value also ! return "" + date.getFullYear() + ! ((date.getMonth()+1).toString().length==1?"0":"")+(date.getMonth()+1) + ! (date.getDate().toString().length==1?"0":"")+date.getDate() + ! (date.getHours().toString().length==1?"0":"")+date.getHours() + ! (date.getMinutes().toString().length==1?"0":"")+date.getMinutes() + ! (date.getSeconds().toString().length==1?"0":"")+date.getSeconds(); } function addMinutes( field, offset ) { ! var date = fromTS( $(field).value ); ! date.setTime(date.getTime() + 60000 * offset); ! $(field).value = toTS( date ); ! showTime( field ); } Index: rico.js =================================================================== RCS file: /cvsroot/tolven/tolvenWEB/web/scripts/rico.js,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** rico.js 7 Nov 2006 08:41:03 -0000 1.4 --- rico.js 27 Mar 2007 23:23:42 -0000 1.5 *************** *** 2406,2410 **** var partialLoaded = false; ! var queryString if (this.options.requestParameters) queryString = this._createQueryString(this.options.requestParameters, 0); --- 2406,2410 ---- var partialLoaded = false; ! var queryString; if (this.options.requestParameters) queryString = this._createQueryString(this.options.requestParameters, 0); |
From: John C. <jc...@us...> - 2007-03-27 23:23:43
|
Update of /cvsroot/tolven/tolvenWEB/web/WEB-INF In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv7993/web/WEB-INF Modified Files: faces-config.xml Log Message: Fix data entry including dates and better layout in "drilldown" page, the summary page. Most of the changes are related to weight but this is really a template for observations in general. Index: faces-config.xml =================================================================== RCS file: /cvsroot/tolven/tolvenWEB/web/WEB-INF/faces-config.xml,v retrieving revision 1.43 retrieving revision 1.44 diff -C2 -d -r1.43 -r1.44 *** faces-config.xml 27 Mar 2007 22:15:42 -0000 1.43 --- faces-config.xml 27 Mar 2007 23:23:42 -0000 1.44 *************** *** 36,39 **** --- 36,46 ---- <converter> <description> + Convert between an HL7 TS string and a date string suitable for browsers + </description> + <converter-id>TSDateConverter</converter-id> + <converter-class>org.tolven.web.rim.TSDateConverter</converter-class> + </converter> + <converter> + <description> Convert between a string and a List of Strings </description> |