📄 marshalledobject.java
字号:
/*- * See the file LICENSE for redistribution information. * * Copyright (c) 2002,2007 Oracle. All rights reserved. * * $Id: MarshalledObject.java,v 12.6 2007/05/04 00:28:27 mark Exp $ */package com.sleepycat.bind.serial.test;import java.io.Serializable;import com.sleepycat.bind.tuple.MarshalledTupleKeyEntity;import com.sleepycat.bind.tuple.TupleInput;import com.sleepycat.bind.tuple.TupleOutput;/** * @author Mark Hayes */public class MarshalledObject implements Serializable, MarshalledTupleKeyEntity { private String data; private transient String primaryKey; private String indexKey1; private String indexKey2; public MarshalledObject(String data, String primaryKey, String indexKey1, String indexKey2) { this.data = data; this.primaryKey = primaryKey; this.indexKey1 = indexKey1; this.indexKey2 = indexKey2; } public boolean equals(Object o) { try { MarshalledObject other = (MarshalledObject) o; return this.data.equals(other.data) && this.primaryKey.equals(other.primaryKey) && this.indexKey1.equals(other.indexKey1) && this.indexKey2.equals(other.indexKey2); } catch (Exception e) { return false; } } public String getData() { return data; } public String getPrimaryKey() { return primaryKey; } public String getIndexKey1() { return indexKey1; } public String getIndexKey2() { return indexKey2; } public int expectedKeyLength() { return primaryKey.length() + 1; } public void marshalPrimaryKey(TupleOutput keyOutput) { keyOutput.writeString(primaryKey); } public void unmarshalPrimaryKey(TupleInput keyInput) { primaryKey = keyInput.readString(); } public boolean marshalSecondaryKey(String keyName, TupleOutput keyOutput) { if ("1".equals(keyName)) { if (indexKey1.length() > 0) { keyOutput.writeString(indexKey1); return true; } else { return false; } } else if ("2".equals(keyName)) { if (indexKey2.length() > 0) { keyOutput.writeString(indexKey2); return true; } else { return false; } } else { throw new IllegalArgumentException("Unknown keyName: " + keyName); } } public boolean nullifyForeignKey(String keyName) { if ("1".equals(keyName)) { if (indexKey1.length() > 0) { indexKey1 = ""; return true; } else { return false; } } else if ("2".equals(keyName)) { if (indexKey2.length() > 0) { indexKey2 = ""; return true; } else { return false; } } else { throw new IllegalArgumentException("Unknown keyName: " + keyName); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -