You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
244 lines
6.1 KiB
244 lines
6.1 KiB
/* |
|
* To change this template, choose Tools | Templates |
|
* and open the template in the editor. |
|
*/ |
|
|
|
package kr.co.kihyun.beans.entity.ecross; |
|
|
|
import java.io.Serializable; |
|
import java.text.DateFormat; |
|
import java.text.ParseException; |
|
import java.text.SimpleDateFormat; |
|
import java.util.Date; |
|
import java.util.List; |
|
import java.util.UUID; |
|
import java.util.logging.Level; |
|
import javax.jdo.JDOException; |
|
import javax.jdo.PersistenceManager; |
|
import javax.jdo.Query; |
|
import javax.jdo.annotations.IdGeneratorStrategy; |
|
import javax.jdo.annotations.IdentityType; |
|
import javax.jdo.annotations.Inheritance; |
|
import javax.jdo.annotations.InheritanceStrategy; |
|
import javax.jdo.annotations.NullValue; |
|
import javax.jdo.annotations.PersistenceCapable; |
|
import javax.jdo.annotations.Persistent; |
|
import javax.jdo.annotations.PrimaryKey; |
|
import kr.co.kihyun.beans.entity.IMoumiEntity; |
|
import kr.co.kihyun.beans.entity.MDept; |
|
import kr.co.kihyun.beans.entity.MoumiEntity; |
|
import kr.co.kihyun.beans.entity.util.MPersistenceManager; |
|
import kr.co.kihyun.moumi.MoumiConfig; |
|
import org.slf4j.Logger; |
|
import org.slf4j.LoggerFactory; |
|
|
|
/** |
|
* |
|
* @author bhs |
|
*/ |
|
@PersistenceCapable(identityType = IdentityType.APPLICATION) |
|
@Inheritance(strategy = InheritanceStrategy.SUBCLASS_TABLE) |
|
public abstract class ECross<T extends IRemotePersistable> implements Serializable, IMoumiEntity<Long> { |
|
|
|
//49.SerialVersionUID 선언 부재 : Add by YOUNGJUN,CHO |
|
private static final long serialVersionUID = 1L; |
|
//++++++++++++++++++++++++++++++++++++++++++++++++ |
|
|
|
private static final Logger LOG = LoggerFactory.getLogger(ECross.class); |
|
|
|
@Persistent(nullValue = NullValue.EXCEPTION) |
|
private String createDate; |
|
|
|
@Persistent(nullValue = NullValue.EXCEPTION) |
|
private CRUD crud; |
|
|
|
@Persistent(nullValue = NullValue.EXCEPTION) |
|
private NeisParty fromParty; |
|
|
|
@Persistent(nullValue = NullValue.EXCEPTION) |
|
private NeisSystem fromSystem; |
|
|
|
@Persistent |
|
private String messageId; |
|
|
|
@Persistent |
|
private String processResultCode; |
|
|
|
@Persistent(nullValue = NullValue.EXCEPTION) |
|
private String processStatus = "0000"; |
|
|
|
@Persistent |
|
private String sendReceiveDate; |
|
|
|
@PrimaryKey |
|
private String sequence; |
|
|
|
@Persistent(nullValue = NullValue.EXCEPTION) |
|
private NeisParty toParty; |
|
|
|
@Persistent(nullValue = NullValue.EXCEPTION) |
|
private NeisSystem toSystem; |
|
|
|
@Persistent |
|
private String transactionId; |
|
|
|
@Persistent |
|
private boolean isAplied; |
|
|
|
private static transient DateFormat df = new SimpleDateFormat("yyyyMMddHHmmss"); |
|
|
|
protected T getMoumiEntity(PersistenceManager moumiPm, Class<T> clazz) { |
|
T entity ; |
|
if (getCrud() == CRUD.C) { |
|
try { |
|
entity = clazz.newInstance(); |
|
entity.setId(getId()); |
|
} catch (Exception ex) { |
|
throw new JDOException("Could not instantiate for class " + clazz + " with empty arguments constructor. " |
|
+ "You may override method ECross#getMoumiEntity(PersistenceManager pm, Class<T> clazz)", ex); |
|
} |
|
} else { |
|
entity = moumiPm.getObjectById(clazz, getId()); |
|
} |
|
|
|
return entity; |
|
} |
|
|
|
public final T toMoumiEntity(MPersistenceManager moumiPm, Class<T> clazz) { |
|
LOG.debug("moumi entity: {}", getMoumiEntity(moumiPm, clazz)); |
|
return setFieldValues(moumiPm, getMoumiEntity(moumiPm, clazz)); |
|
} |
|
|
|
protected abstract T setFieldValues(MPersistenceManager moumiPm, T entity); |
|
|
|
protected ECross(T entity) { |
|
this.setId(entity.getId()); |
|
this.setCreateDate(new Date()); |
|
this.setSequence(entity.getId().toString()); |
|
this.setFromParty(NeisParty.valueOf(MoumiConfig.getInitParameter("moumi.partyId"))); |
|
this.setFromSystem(NeisSystem.valueOf(MoumiConfig.getInitParameter("moumi.subSystemId"))); |
|
this.setToSystem(NeisSystem.valueOf(MoumiConfig.getInitParameter("moumi.subSystemId"))); |
|
} |
|
|
|
public final Date getCreateDate() { |
|
try { |
|
return df.parse(this.createDate); |
|
} catch (ParseException ex) { |
|
LOG.error("Date format is incorrect. - {}.createDate::{}", this, this.createDate); |
|
throw new RuntimeException(ex); |
|
} |
|
} |
|
|
|
public final CRUD getCrud() { |
|
return this.crud; |
|
} |
|
|
|
public final NeisParty getFromParty() { |
|
return this.fromParty; |
|
} |
|
|
|
public final NeisSystem getFromSystem() { |
|
return this.fromSystem; |
|
} |
|
|
|
public final String getProcessResultCode() { |
|
return this.processResultCode; |
|
} |
|
|
|
public final String getProcessStatus() { |
|
return this.processStatus; |
|
} |
|
|
|
public final Date getSendReceiveDate() { |
|
try { |
|
return df.parse(this.sendReceiveDate); |
|
} catch (ParseException ex) { |
|
LOG.error("Date format is incorrect. - {}.createDate::{}", this, this.sendReceiveDate); |
|
throw new RuntimeException(ex); |
|
} |
|
} |
|
|
|
public final String getSequence() { |
|
return this.sequence; |
|
} |
|
|
|
public final NeisParty getToParty() { |
|
return this.toParty; |
|
} |
|
|
|
public final NeisSystem getToSystem() { |
|
return this.toSystem; |
|
} |
|
|
|
public final String getTransactionId() { |
|
return this.transactionId; |
|
} |
|
|
|
public final void setCreateDate(Date date) { |
|
this.createDate = df.format(date); |
|
} |
|
|
|
public final void setCrud(CRUD crud) { |
|
this.crud = crud; |
|
} |
|
|
|
public final void setFromParty(NeisParty party) { |
|
this.fromParty = party; |
|
} |
|
|
|
public final void setFromSystem(NeisSystem system) { |
|
this.fromSystem = system; |
|
} |
|
|
|
public final void setProcessResultCode(String code) { |
|
this.processResultCode = code; |
|
} |
|
|
|
public final void setProcessStatus(String status) { |
|
this.processStatus = status; |
|
} |
|
|
|
public final void setSendReceiveDate(Date date) { |
|
this.sendReceiveDate = df.format(date); |
|
} |
|
|
|
public final void setSequence(String sequence) { |
|
this.sequence = sequence; |
|
} |
|
|
|
public final void setToParty(NeisParty party) { |
|
this.toParty = party; |
|
} |
|
|
|
public final void setToSystem(NeisSystem system) { |
|
this.toSystem = system; |
|
} |
|
|
|
public final void setTransactionId(String transactionId) { |
|
this.transactionId = transactionId; |
|
} |
|
|
|
/** |
|
* @return the messageId |
|
*/ public String getMessageId() { |
|
return messageId; |
|
} |
|
|
|
/** |
|
* @param messageId the messageId to set |
|
*/ public void setMessageId(String messageId) { |
|
this.messageId = messageId; |
|
} |
|
|
|
/** |
|
* @return the isAplied |
|
*/ public boolean isAplied() { |
|
return isAplied; |
|
} |
|
|
|
/** |
|
* @param isAplied the isAplied to set |
|
*/ public void setAplied(boolean isAplied) { |
|
this.isAplied = isAplied; |
|
} |
|
}
|
|
|