// Generated by the protocol buffer compiler. DO NOT EDIT! // source: wallet.proto package org.bitcoinj.wallet; public final class Protos { private Protos() {} public static void registerAllExtensions( com.google.protobuf.ExtensionRegistry registry) { } public interface PeerAddressOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.PeerAddress) com.google.protobuf.MessageOrBuilder { /** * <code>required bytes ip_address = 1;</code> */ boolean hasIpAddress(); /** * <code>required bytes ip_address = 1;</code> */ com.google.protobuf.ByteString getIpAddress(); /** * <code>required uint32 port = 2;</code> */ boolean hasPort(); /** * <code>required uint32 port = 2;</code> */ int getPort(); /** * <code>required uint64 services = 3;</code> */ boolean hasServices(); /** * <code>required uint64 services = 3;</code> */ long getServices(); } /** * Protobuf type {@code wallet.PeerAddress} */ public static final class PeerAddress extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.PeerAddress) PeerAddressOrBuilder { // Use PeerAddress.newBuilder() to construct. private PeerAddress(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private PeerAddress(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final PeerAddress defaultInstance; public static PeerAddress getDefaultInstance() { return defaultInstance; } public PeerAddress getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private PeerAddress( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { bitField0_ |= 0x00000001; ipAddress_ = input.readBytes(); break; } case 16: { bitField0_ |= 0x00000002; port_ = input.readUInt32(); break; } case 24: { bitField0_ |= 0x00000004; services_ = input.readUInt64(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_PeerAddress_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_PeerAddress_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.PeerAddress.class, org.bitcoinj.wallet.Protos.PeerAddress.Builder.class); } public static com.google.protobuf.Parser<PeerAddress> PARSER = new com.google.protobuf.AbstractParser<PeerAddress>() { public PeerAddress parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new PeerAddress(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<PeerAddress> getParserForType() { return PARSER; } private int bitField0_; public static final int IP_ADDRESS_FIELD_NUMBER = 1; private com.google.protobuf.ByteString ipAddress_; /** * <code>required bytes ip_address = 1;</code> */ public boolean hasIpAddress() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required bytes ip_address = 1;</code> */ public com.google.protobuf.ByteString getIpAddress() { return ipAddress_; } public static final int PORT_FIELD_NUMBER = 2; private int port_; /** * <code>required uint32 port = 2;</code> */ public boolean hasPort() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required uint32 port = 2;</code> */ public int getPort() { return port_; } public static final int SERVICES_FIELD_NUMBER = 3; private long services_; /** * <code>required uint64 services = 3;</code> */ public boolean hasServices() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>required uint64 services = 3;</code> */ public long getServices() { return services_; } private void initFields() { ipAddress_ = com.google.protobuf.ByteString.EMPTY; port_ = 0; services_ = 0L; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasIpAddress()) { memoizedIsInitialized = 0; return false; } if (!hasPort()) { memoizedIsInitialized = 0; return false; } if (!hasServices()) { memoizedIsInitialized = 0; return false; } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeBytes(1, ipAddress_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeUInt32(2, port_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeUInt64(3, services_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, ipAddress_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeUInt32Size(2, port_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeUInt64Size(3, services_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.PeerAddress parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.PeerAddress parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.PeerAddress parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.PeerAddress parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.PeerAddress parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.PeerAddress parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.PeerAddress parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.PeerAddress parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.PeerAddress parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.PeerAddress parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.PeerAddress prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.PeerAddress} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.PeerAddress) org.bitcoinj.wallet.Protos.PeerAddressOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_PeerAddress_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_PeerAddress_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.PeerAddress.class, org.bitcoinj.wallet.Protos.PeerAddress.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.PeerAddress.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); ipAddress_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); port_ = 0; bitField0_ = (bitField0_ & ~0x00000002); services_ = 0L; bitField0_ = (bitField0_ & ~0x00000004); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_PeerAddress_descriptor; } public org.bitcoinj.wallet.Protos.PeerAddress getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.PeerAddress.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.PeerAddress build() { org.bitcoinj.wallet.Protos.PeerAddress result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.PeerAddress buildPartial() { org.bitcoinj.wallet.Protos.PeerAddress result = new org.bitcoinj.wallet.Protos.PeerAddress(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.ipAddress_ = ipAddress_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.port_ = port_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } result.services_ = services_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.PeerAddress) { return mergeFrom((org.bitcoinj.wallet.Protos.PeerAddress)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.PeerAddress other) { if (other == org.bitcoinj.wallet.Protos.PeerAddress.getDefaultInstance()) return this; if (other.hasIpAddress()) { setIpAddress(other.getIpAddress()); } if (other.hasPort()) { setPort(other.getPort()); } if (other.hasServices()) { setServices(other.getServices()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasIpAddress()) { return false; } if (!hasPort()) { return false; } if (!hasServices()) { return false; } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.PeerAddress parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.PeerAddress) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private com.google.protobuf.ByteString ipAddress_ = com.google.protobuf.ByteString.EMPTY; /** * <code>required bytes ip_address = 1;</code> */ public boolean hasIpAddress() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required bytes ip_address = 1;</code> */ public com.google.protobuf.ByteString getIpAddress() { return ipAddress_; } /** * <code>required bytes ip_address = 1;</code> */ public Builder setIpAddress(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; ipAddress_ = value; onChanged(); return this; } /** * <code>required bytes ip_address = 1;</code> */ public Builder clearIpAddress() { bitField0_ = (bitField0_ & ~0x00000001); ipAddress_ = getDefaultInstance().getIpAddress(); onChanged(); return this; } private int port_ ; /** * <code>required uint32 port = 2;</code> */ public boolean hasPort() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required uint32 port = 2;</code> */ public int getPort() { return port_; } /** * <code>required uint32 port = 2;</code> */ public Builder setPort(int value) { bitField0_ |= 0x00000002; port_ = value; onChanged(); return this; } /** * <code>required uint32 port = 2;</code> */ public Builder clearPort() { bitField0_ = (bitField0_ & ~0x00000002); port_ = 0; onChanged(); return this; } private long services_ ; /** * <code>required uint64 services = 3;</code> */ public boolean hasServices() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>required uint64 services = 3;</code> */ public long getServices() { return services_; } /** * <code>required uint64 services = 3;</code> */ public Builder setServices(long value) { bitField0_ |= 0x00000004; services_ = value; onChanged(); return this; } /** * <code>required uint64 services = 3;</code> */ public Builder clearServices() { bitField0_ = (bitField0_ & ~0x00000004); services_ = 0L; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.PeerAddress) } static { defaultInstance = new PeerAddress(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.PeerAddress) } public interface EncryptedDataOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.EncryptedData) com.google.protobuf.MessageOrBuilder { /** * <code>required bytes initialisation_vector = 1;</code> * * <pre> * The initialisation vector for the AES encryption (16 bytes) * </pre> */ boolean hasInitialisationVector(); /** * <code>required bytes initialisation_vector = 1;</code> * * <pre> * The initialisation vector for the AES encryption (16 bytes) * </pre> */ com.google.protobuf.ByteString getInitialisationVector(); /** * <code>required bytes encrypted_private_key = 2;</code> * * <pre> * The encrypted private key * </pre> */ boolean hasEncryptedPrivateKey(); /** * <code>required bytes encrypted_private_key = 2;</code> * * <pre> * The encrypted private key * </pre> */ com.google.protobuf.ByteString getEncryptedPrivateKey(); } /** * Protobuf type {@code wallet.EncryptedData} */ public static final class EncryptedData extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.EncryptedData) EncryptedDataOrBuilder { // Use EncryptedData.newBuilder() to construct. private EncryptedData(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private EncryptedData(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final EncryptedData defaultInstance; public static EncryptedData getDefaultInstance() { return defaultInstance; } public EncryptedData getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private EncryptedData( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { bitField0_ |= 0x00000001; initialisationVector_ = input.readBytes(); break; } case 18: { bitField0_ |= 0x00000002; encryptedPrivateKey_ = input.readBytes(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_EncryptedData_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_EncryptedData_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.EncryptedData.class, org.bitcoinj.wallet.Protos.EncryptedData.Builder.class); } public static com.google.protobuf.Parser<EncryptedData> PARSER = new com.google.protobuf.AbstractParser<EncryptedData>() { public EncryptedData parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new EncryptedData(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<EncryptedData> getParserForType() { return PARSER; } private int bitField0_; public static final int INITIALISATION_VECTOR_FIELD_NUMBER = 1; private com.google.protobuf.ByteString initialisationVector_; /** * <code>required bytes initialisation_vector = 1;</code> * * <pre> * The initialisation vector for the AES encryption (16 bytes) * </pre> */ public boolean hasInitialisationVector() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required bytes initialisation_vector = 1;</code> * * <pre> * The initialisation vector for the AES encryption (16 bytes) * </pre> */ public com.google.protobuf.ByteString getInitialisationVector() { return initialisationVector_; } public static final int ENCRYPTED_PRIVATE_KEY_FIELD_NUMBER = 2; private com.google.protobuf.ByteString encryptedPrivateKey_; /** * <code>required bytes encrypted_private_key = 2;</code> * * <pre> * The encrypted private key * </pre> */ public boolean hasEncryptedPrivateKey() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required bytes encrypted_private_key = 2;</code> * * <pre> * The encrypted private key * </pre> */ public com.google.protobuf.ByteString getEncryptedPrivateKey() { return encryptedPrivateKey_; } private void initFields() { initialisationVector_ = com.google.protobuf.ByteString.EMPTY; encryptedPrivateKey_ = com.google.protobuf.ByteString.EMPTY; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasInitialisationVector()) { memoizedIsInitialized = 0; return false; } if (!hasEncryptedPrivateKey()) { memoizedIsInitialized = 0; return false; } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeBytes(1, initialisationVector_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeBytes(2, encryptedPrivateKey_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, initialisationVector_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(2, encryptedPrivateKey_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.EncryptedData parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.EncryptedData parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.EncryptedData parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.EncryptedData parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.EncryptedData parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.EncryptedData parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.EncryptedData parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.EncryptedData parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.EncryptedData parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.EncryptedData parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.EncryptedData prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.EncryptedData} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.EncryptedData) org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_EncryptedData_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_EncryptedData_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.EncryptedData.class, org.bitcoinj.wallet.Protos.EncryptedData.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.EncryptedData.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); initialisationVector_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); encryptedPrivateKey_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000002); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_EncryptedData_descriptor; } public org.bitcoinj.wallet.Protos.EncryptedData getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.EncryptedData.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.EncryptedData build() { org.bitcoinj.wallet.Protos.EncryptedData result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.EncryptedData buildPartial() { org.bitcoinj.wallet.Protos.EncryptedData result = new org.bitcoinj.wallet.Protos.EncryptedData(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.initialisationVector_ = initialisationVector_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.encryptedPrivateKey_ = encryptedPrivateKey_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.EncryptedData) { return mergeFrom((org.bitcoinj.wallet.Protos.EncryptedData)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.EncryptedData other) { if (other == org.bitcoinj.wallet.Protos.EncryptedData.getDefaultInstance()) return this; if (other.hasInitialisationVector()) { setInitialisationVector(other.getInitialisationVector()); } if (other.hasEncryptedPrivateKey()) { setEncryptedPrivateKey(other.getEncryptedPrivateKey()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasInitialisationVector()) { return false; } if (!hasEncryptedPrivateKey()) { return false; } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.EncryptedData parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.EncryptedData) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private com.google.protobuf.ByteString initialisationVector_ = com.google.protobuf.ByteString.EMPTY; /** * <code>required bytes initialisation_vector = 1;</code> * * <pre> * The initialisation vector for the AES encryption (16 bytes) * </pre> */ public boolean hasInitialisationVector() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required bytes initialisation_vector = 1;</code> * * <pre> * The initialisation vector for the AES encryption (16 bytes) * </pre> */ public com.google.protobuf.ByteString getInitialisationVector() { return initialisationVector_; } /** * <code>required bytes initialisation_vector = 1;</code> * * <pre> * The initialisation vector for the AES encryption (16 bytes) * </pre> */ public Builder setInitialisationVector(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; initialisationVector_ = value; onChanged(); return this; } /** * <code>required bytes initialisation_vector = 1;</code> * * <pre> * The initialisation vector for the AES encryption (16 bytes) * </pre> */ public Builder clearInitialisationVector() { bitField0_ = (bitField0_ & ~0x00000001); initialisationVector_ = getDefaultInstance().getInitialisationVector(); onChanged(); return this; } private com.google.protobuf.ByteString encryptedPrivateKey_ = com.google.protobuf.ByteString.EMPTY; /** * <code>required bytes encrypted_private_key = 2;</code> * * <pre> * The encrypted private key * </pre> */ public boolean hasEncryptedPrivateKey() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required bytes encrypted_private_key = 2;</code> * * <pre> * The encrypted private key * </pre> */ public com.google.protobuf.ByteString getEncryptedPrivateKey() { return encryptedPrivateKey_; } /** * <code>required bytes encrypted_private_key = 2;</code> * * <pre> * The encrypted private key * </pre> */ public Builder setEncryptedPrivateKey(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000002; encryptedPrivateKey_ = value; onChanged(); return this; } /** * <code>required bytes encrypted_private_key = 2;</code> * * <pre> * The encrypted private key * </pre> */ public Builder clearEncryptedPrivateKey() { bitField0_ = (bitField0_ & ~0x00000002); encryptedPrivateKey_ = getDefaultInstance().getEncryptedPrivateKey(); onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.EncryptedData) } static { defaultInstance = new EncryptedData(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.EncryptedData) } public interface DeterministicKeyOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.DeterministicKey) com.google.protobuf.MessageOrBuilder { /** * <code>required bytes chain_code = 1;</code> * * <pre> * Random data that allows us to extend a key. Without this, we can't figure out the next key in the chain and * should just treat it as a regular ORIGINAL type key. * </pre> */ boolean hasChainCode(); /** * <code>required bytes chain_code = 1;</code> * * <pre> * Random data that allows us to extend a key. Without this, we can't figure out the next key in the chain and * should just treat it as a regular ORIGINAL type key. * </pre> */ com.google.protobuf.ByteString getChainCode(); /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ java.util.List<java.lang.Integer> getPathList(); /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ int getPathCount(); /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ int getPath(int index); /** * <code>optional uint32 issued_subkeys = 3;</code> * * <pre> * How many children of this key have been issued, that is, given to the user when they requested a fresh key? * For the parents of keys being handed out, this is always less than the true number of children: the difference is * called the lookahead zone. These keys are put into Bloom filters so we can spot transactions made by clones of * this wallet - for instance when restoring from backup or if the seed was shared between devices. * If this field is missing it means we're not issuing subkeys of this key to users. * </pre> */ boolean hasIssuedSubkeys(); /** * <code>optional uint32 issued_subkeys = 3;</code> * * <pre> * How many children of this key have been issued, that is, given to the user when they requested a fresh key? * For the parents of keys being handed out, this is always less than the true number of children: the difference is * called the lookahead zone. These keys are put into Bloom filters so we can spot transactions made by clones of * this wallet - for instance when restoring from backup or if the seed was shared between devices. * If this field is missing it means we're not issuing subkeys of this key to users. * </pre> */ int getIssuedSubkeys(); /** * <code>optional uint32 lookahead_size = 4;</code> */ boolean hasLookaheadSize(); /** * <code>optional uint32 lookahead_size = 4;</code> */ int getLookaheadSize(); /** * <code>optional bool isFollowing = 5;</code> * * <pre> ** * Flag indicating that this key is a root of a following chain. This chain is following the next non-following chain. * Following/followed chains concept is used for married keychains, where the set of keys combined together to produce * a single P2SH multisignature address * </pre> */ boolean hasIsFollowing(); /** * <code>optional bool isFollowing = 5;</code> * * <pre> ** * Flag indicating that this key is a root of a following chain. This chain is following the next non-following chain. * Following/followed chains concept is used for married keychains, where the set of keys combined together to produce * a single P2SH multisignature address * </pre> */ boolean getIsFollowing(); /** * <code>optional uint32 sigsRequiredToSpend = 6 [default = 1];</code> * * <pre> * Number of signatures required to spend. This field is needed only for married keychains to reconstruct KeyChain * and represents the N value from N-of-M CHECKMULTISIG script. For regular single keychains it will always be 1. * </pre> */ boolean hasSigsRequiredToSpend(); /** * <code>optional uint32 sigsRequiredToSpend = 6 [default = 1];</code> * * <pre> * Number of signatures required to spend. This field is needed only for married keychains to reconstruct KeyChain * and represents the N value from N-of-M CHECKMULTISIG script. For regular single keychains it will always be 1. * </pre> */ int getSigsRequiredToSpend(); } /** * Protobuf type {@code wallet.DeterministicKey} * * <pre> ** * Data attached to a Key message that defines the data needed by the BIP32 deterministic key hierarchy algorithm. * </pre> */ public static final class DeterministicKey extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.DeterministicKey) DeterministicKeyOrBuilder { // Use DeterministicKey.newBuilder() to construct. private DeterministicKey(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private DeterministicKey(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final DeterministicKey defaultInstance; public static DeterministicKey getDefaultInstance() { return defaultInstance; } public DeterministicKey getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private DeterministicKey( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { bitField0_ |= 0x00000001; chainCode_ = input.readBytes(); break; } case 16: { if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) { path_ = new java.util.ArrayList<java.lang.Integer>(); mutable_bitField0_ |= 0x00000002; } path_.add(input.readUInt32()); break; } case 18: { int length = input.readRawVarint32(); int limit = input.pushLimit(length); if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) { path_ = new java.util.ArrayList<java.lang.Integer>(); mutable_bitField0_ |= 0x00000002; } while (input.getBytesUntilLimit() > 0) { path_.add(input.readUInt32()); } input.popLimit(limit); break; } case 24: { bitField0_ |= 0x00000002; issuedSubkeys_ = input.readUInt32(); break; } case 32: { bitField0_ |= 0x00000004; lookaheadSize_ = input.readUInt32(); break; } case 40: { bitField0_ |= 0x00000008; isFollowing_ = input.readBool(); break; } case 48: { bitField0_ |= 0x00000010; sigsRequiredToSpend_ = input.readUInt32(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) { path_ = java.util.Collections.unmodifiableList(path_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_DeterministicKey_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_DeterministicKey_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.DeterministicKey.class, org.bitcoinj.wallet.Protos.DeterministicKey.Builder.class); } public static com.google.protobuf.Parser<DeterministicKey> PARSER = new com.google.protobuf.AbstractParser<DeterministicKey>() { public DeterministicKey parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new DeterministicKey(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<DeterministicKey> getParserForType() { return PARSER; } private int bitField0_; public static final int CHAIN_CODE_FIELD_NUMBER = 1; private com.google.protobuf.ByteString chainCode_; /** * <code>required bytes chain_code = 1;</code> * * <pre> * Random data that allows us to extend a key. Without this, we can't figure out the next key in the chain and * should just treat it as a regular ORIGINAL type key. * </pre> */ public boolean hasChainCode() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required bytes chain_code = 1;</code> * * <pre> * Random data that allows us to extend a key. Without this, we can't figure out the next key in the chain and * should just treat it as a regular ORIGINAL type key. * </pre> */ public com.google.protobuf.ByteString getChainCode() { return chainCode_; } public static final int PATH_FIELD_NUMBER = 2; private java.util.List<java.lang.Integer> path_; /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ public java.util.List<java.lang.Integer> getPathList() { return path_; } /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ public int getPathCount() { return path_.size(); } /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ public int getPath(int index) { return path_.get(index); } public static final int ISSUED_SUBKEYS_FIELD_NUMBER = 3; private int issuedSubkeys_; /** * <code>optional uint32 issued_subkeys = 3;</code> * * <pre> * How many children of this key have been issued, that is, given to the user when they requested a fresh key? * For the parents of keys being handed out, this is always less than the true number of children: the difference is * called the lookahead zone. These keys are put into Bloom filters so we can spot transactions made by clones of * this wallet - for instance when restoring from backup or if the seed was shared between devices. * If this field is missing it means we're not issuing subkeys of this key to users. * </pre> */ public boolean hasIssuedSubkeys() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>optional uint32 issued_subkeys = 3;</code> * * <pre> * How many children of this key have been issued, that is, given to the user when they requested a fresh key? * For the parents of keys being handed out, this is always less than the true number of children: the difference is * called the lookahead zone. These keys are put into Bloom filters so we can spot transactions made by clones of * this wallet - for instance when restoring from backup or if the seed was shared between devices. * If this field is missing it means we're not issuing subkeys of this key to users. * </pre> */ public int getIssuedSubkeys() { return issuedSubkeys_; } public static final int LOOKAHEAD_SIZE_FIELD_NUMBER = 4; private int lookaheadSize_; /** * <code>optional uint32 lookahead_size = 4;</code> */ public boolean hasLookaheadSize() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional uint32 lookahead_size = 4;</code> */ public int getLookaheadSize() { return lookaheadSize_; } public static final int ISFOLLOWING_FIELD_NUMBER = 5; private boolean isFollowing_; /** * <code>optional bool isFollowing = 5;</code> * * <pre> ** * Flag indicating that this key is a root of a following chain. This chain is following the next non-following chain. * Following/followed chains concept is used for married keychains, where the set of keys combined together to produce * a single P2SH multisignature address * </pre> */ public boolean hasIsFollowing() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional bool isFollowing = 5;</code> * * <pre> ** * Flag indicating that this key is a root of a following chain. This chain is following the next non-following chain. * Following/followed chains concept is used for married keychains, where the set of keys combined together to produce * a single P2SH multisignature address * </pre> */ public boolean getIsFollowing() { return isFollowing_; } public static final int SIGSREQUIREDTOSPEND_FIELD_NUMBER = 6; private int sigsRequiredToSpend_; /** * <code>optional uint32 sigsRequiredToSpend = 6 [default = 1];</code> * * <pre> * Number of signatures required to spend. This field is needed only for married keychains to reconstruct KeyChain * and represents the N value from N-of-M CHECKMULTISIG script. For regular single keychains it will always be 1. * </pre> */ public boolean hasSigsRequiredToSpend() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * <code>optional uint32 sigsRequiredToSpend = 6 [default = 1];</code> * * <pre> * Number of signatures required to spend. This field is needed only for married keychains to reconstruct KeyChain * and represents the N value from N-of-M CHECKMULTISIG script. For regular single keychains it will always be 1. * </pre> */ public int getSigsRequiredToSpend() { return sigsRequiredToSpend_; } private void initFields() { chainCode_ = com.google.protobuf.ByteString.EMPTY; path_ = java.util.Collections.emptyList(); issuedSubkeys_ = 0; lookaheadSize_ = 0; isFollowing_ = false; sigsRequiredToSpend_ = 1; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasChainCode()) { memoizedIsInitialized = 0; return false; } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeBytes(1, chainCode_); } for (int i = 0; i < path_.size(); i++) { output.writeUInt32(2, path_.get(i)); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeUInt32(3, issuedSubkeys_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeUInt32(4, lookaheadSize_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { output.writeBool(5, isFollowing_); } if (((bitField0_ & 0x00000010) == 0x00000010)) { output.writeUInt32(6, sigsRequiredToSpend_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, chainCode_); } { int dataSize = 0; for (int i = 0; i < path_.size(); i++) { dataSize += com.google.protobuf.CodedOutputStream .computeUInt32SizeNoTag(path_.get(i)); } size += dataSize; size += 1 * getPathList().size(); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeUInt32Size(3, issuedSubkeys_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeUInt32Size(4, lookaheadSize_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { size += com.google.protobuf.CodedOutputStream .computeBoolSize(5, isFollowing_); } if (((bitField0_ & 0x00000010) == 0x00000010)) { size += com.google.protobuf.CodedOutputStream .computeUInt32Size(6, sigsRequiredToSpend_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.DeterministicKey parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.DeterministicKey parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.DeterministicKey parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.DeterministicKey parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.DeterministicKey parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.DeterministicKey parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.DeterministicKey parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.DeterministicKey parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.DeterministicKey parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.DeterministicKey parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.DeterministicKey prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.DeterministicKey} * * <pre> ** * Data attached to a Key message that defines the data needed by the BIP32 deterministic key hierarchy algorithm. * </pre> */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.DeterministicKey) org.bitcoinj.wallet.Protos.DeterministicKeyOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_DeterministicKey_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_DeterministicKey_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.DeterministicKey.class, org.bitcoinj.wallet.Protos.DeterministicKey.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.DeterministicKey.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); chainCode_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); path_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000002); issuedSubkeys_ = 0; bitField0_ = (bitField0_ & ~0x00000004); lookaheadSize_ = 0; bitField0_ = (bitField0_ & ~0x00000008); isFollowing_ = false; bitField0_ = (bitField0_ & ~0x00000010); sigsRequiredToSpend_ = 1; bitField0_ = (bitField0_ & ~0x00000020); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_DeterministicKey_descriptor; } public org.bitcoinj.wallet.Protos.DeterministicKey getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.DeterministicKey.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.DeterministicKey build() { org.bitcoinj.wallet.Protos.DeterministicKey result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.DeterministicKey buildPartial() { org.bitcoinj.wallet.Protos.DeterministicKey result = new org.bitcoinj.wallet.Protos.DeterministicKey(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.chainCode_ = chainCode_; if (((bitField0_ & 0x00000002) == 0x00000002)) { path_ = java.util.Collections.unmodifiableList(path_); bitField0_ = (bitField0_ & ~0x00000002); } result.path_ = path_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000002; } result.issuedSubkeys_ = issuedSubkeys_; if (((from_bitField0_ & 0x00000008) == 0x00000008)) { to_bitField0_ |= 0x00000004; } result.lookaheadSize_ = lookaheadSize_; if (((from_bitField0_ & 0x00000010) == 0x00000010)) { to_bitField0_ |= 0x00000008; } result.isFollowing_ = isFollowing_; if (((from_bitField0_ & 0x00000020) == 0x00000020)) { to_bitField0_ |= 0x00000010; } result.sigsRequiredToSpend_ = sigsRequiredToSpend_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.DeterministicKey) { return mergeFrom((org.bitcoinj.wallet.Protos.DeterministicKey)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.DeterministicKey other) { if (other == org.bitcoinj.wallet.Protos.DeterministicKey.getDefaultInstance()) return this; if (other.hasChainCode()) { setChainCode(other.getChainCode()); } if (!other.path_.isEmpty()) { if (path_.isEmpty()) { path_ = other.path_; bitField0_ = (bitField0_ & ~0x00000002); } else { ensurePathIsMutable(); path_.addAll(other.path_); } onChanged(); } if (other.hasIssuedSubkeys()) { setIssuedSubkeys(other.getIssuedSubkeys()); } if (other.hasLookaheadSize()) { setLookaheadSize(other.getLookaheadSize()); } if (other.hasIsFollowing()) { setIsFollowing(other.getIsFollowing()); } if (other.hasSigsRequiredToSpend()) { setSigsRequiredToSpend(other.getSigsRequiredToSpend()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasChainCode()) { return false; } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.DeterministicKey parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.DeterministicKey) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private com.google.protobuf.ByteString chainCode_ = com.google.protobuf.ByteString.EMPTY; /** * <code>required bytes chain_code = 1;</code> * * <pre> * Random data that allows us to extend a key. Without this, we can't figure out the next key in the chain and * should just treat it as a regular ORIGINAL type key. * </pre> */ public boolean hasChainCode() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required bytes chain_code = 1;</code> * * <pre> * Random data that allows us to extend a key. Without this, we can't figure out the next key in the chain and * should just treat it as a regular ORIGINAL type key. * </pre> */ public com.google.protobuf.ByteString getChainCode() { return chainCode_; } /** * <code>required bytes chain_code = 1;</code> * * <pre> * Random data that allows us to extend a key. Without this, we can't figure out the next key in the chain and * should just treat it as a regular ORIGINAL type key. * </pre> */ public Builder setChainCode(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; chainCode_ = value; onChanged(); return this; } /** * <code>required bytes chain_code = 1;</code> * * <pre> * Random data that allows us to extend a key. Without this, we can't figure out the next key in the chain and * should just treat it as a regular ORIGINAL type key. * </pre> */ public Builder clearChainCode() { bitField0_ = (bitField0_ & ~0x00000001); chainCode_ = getDefaultInstance().getChainCode(); onChanged(); return this; } private java.util.List<java.lang.Integer> path_ = java.util.Collections.emptyList(); private void ensurePathIsMutable() { if (!((bitField0_ & 0x00000002) == 0x00000002)) { path_ = new java.util.ArrayList<java.lang.Integer>(path_); bitField0_ |= 0x00000002; } } /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ public java.util.List<java.lang.Integer> getPathList() { return java.util.Collections.unmodifiableList(path_); } /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ public int getPathCount() { return path_.size(); } /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ public int getPath(int index) { return path_.get(index); } /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ public Builder setPath( int index, int value) { ensurePathIsMutable(); path_.set(index, value); onChanged(); return this; } /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ public Builder addPath(int value) { ensurePathIsMutable(); path_.add(value); onChanged(); return this; } /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ public Builder addAllPath( java.lang.Iterable<? extends java.lang.Integer> values) { ensurePathIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, path_); onChanged(); return this; } /** * <code>repeated uint32 path = 2;</code> * * <pre> * The path through the key tree. Each number is encoded in the standard form: high bit set for private derivation * and high bit unset for public derivation. * </pre> */ public Builder clearPath() { path_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } private int issuedSubkeys_ ; /** * <code>optional uint32 issued_subkeys = 3;</code> * * <pre> * How many children of this key have been issued, that is, given to the user when they requested a fresh key? * For the parents of keys being handed out, this is always less than the true number of children: the difference is * called the lookahead zone. These keys are put into Bloom filters so we can spot transactions made by clones of * this wallet - for instance when restoring from backup or if the seed was shared between devices. * If this field is missing it means we're not issuing subkeys of this key to users. * </pre> */ public boolean hasIssuedSubkeys() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional uint32 issued_subkeys = 3;</code> * * <pre> * How many children of this key have been issued, that is, given to the user when they requested a fresh key? * For the parents of keys being handed out, this is always less than the true number of children: the difference is * called the lookahead zone. These keys are put into Bloom filters so we can spot transactions made by clones of * this wallet - for instance when restoring from backup or if the seed was shared between devices. * If this field is missing it means we're not issuing subkeys of this key to users. * </pre> */ public int getIssuedSubkeys() { return issuedSubkeys_; } /** * <code>optional uint32 issued_subkeys = 3;</code> * * <pre> * How many children of this key have been issued, that is, given to the user when they requested a fresh key? * For the parents of keys being handed out, this is always less than the true number of children: the difference is * called the lookahead zone. These keys are put into Bloom filters so we can spot transactions made by clones of * this wallet - for instance when restoring from backup or if the seed was shared between devices. * If this field is missing it means we're not issuing subkeys of this key to users. * </pre> */ public Builder setIssuedSubkeys(int value) { bitField0_ |= 0x00000004; issuedSubkeys_ = value; onChanged(); return this; } /** * <code>optional uint32 issued_subkeys = 3;</code> * * <pre> * How many children of this key have been issued, that is, given to the user when they requested a fresh key? * For the parents of keys being handed out, this is always less than the true number of children: the difference is * called the lookahead zone. These keys are put into Bloom filters so we can spot transactions made by clones of * this wallet - for instance when restoring from backup or if the seed was shared between devices. * If this field is missing it means we're not issuing subkeys of this key to users. * </pre> */ public Builder clearIssuedSubkeys() { bitField0_ = (bitField0_ & ~0x00000004); issuedSubkeys_ = 0; onChanged(); return this; } private int lookaheadSize_ ; /** * <code>optional uint32 lookahead_size = 4;</code> */ public boolean hasLookaheadSize() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional uint32 lookahead_size = 4;</code> */ public int getLookaheadSize() { return lookaheadSize_; } /** * <code>optional uint32 lookahead_size = 4;</code> */ public Builder setLookaheadSize(int value) { bitField0_ |= 0x00000008; lookaheadSize_ = value; onChanged(); return this; } /** * <code>optional uint32 lookahead_size = 4;</code> */ public Builder clearLookaheadSize() { bitField0_ = (bitField0_ & ~0x00000008); lookaheadSize_ = 0; onChanged(); return this; } private boolean isFollowing_ ; /** * <code>optional bool isFollowing = 5;</code> * * <pre> ** * Flag indicating that this key is a root of a following chain. This chain is following the next non-following chain. * Following/followed chains concept is used for married keychains, where the set of keys combined together to produce * a single P2SH multisignature address * </pre> */ public boolean hasIsFollowing() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * <code>optional bool isFollowing = 5;</code> * * <pre> ** * Flag indicating that this key is a root of a following chain. This chain is following the next non-following chain. * Following/followed chains concept is used for married keychains, where the set of keys combined together to produce * a single P2SH multisignature address * </pre> */ public boolean getIsFollowing() { return isFollowing_; } /** * <code>optional bool isFollowing = 5;</code> * * <pre> ** * Flag indicating that this key is a root of a following chain. This chain is following the next non-following chain. * Following/followed chains concept is used for married keychains, where the set of keys combined together to produce * a single P2SH multisignature address * </pre> */ public Builder setIsFollowing(boolean value) { bitField0_ |= 0x00000010; isFollowing_ = value; onChanged(); return this; } /** * <code>optional bool isFollowing = 5;</code> * * <pre> ** * Flag indicating that this key is a root of a following chain. This chain is following the next non-following chain. * Following/followed chains concept is used for married keychains, where the set of keys combined together to produce * a single P2SH multisignature address * </pre> */ public Builder clearIsFollowing() { bitField0_ = (bitField0_ & ~0x00000010); isFollowing_ = false; onChanged(); return this; } private int sigsRequiredToSpend_ = 1; /** * <code>optional uint32 sigsRequiredToSpend = 6 [default = 1];</code> * * <pre> * Number of signatures required to spend. This field is needed only for married keychains to reconstruct KeyChain * and represents the N value from N-of-M CHECKMULTISIG script. For regular single keychains it will always be 1. * </pre> */ public boolean hasSigsRequiredToSpend() { return ((bitField0_ & 0x00000020) == 0x00000020); } /** * <code>optional uint32 sigsRequiredToSpend = 6 [default = 1];</code> * * <pre> * Number of signatures required to spend. This field is needed only for married keychains to reconstruct KeyChain * and represents the N value from N-of-M CHECKMULTISIG script. For regular single keychains it will always be 1. * </pre> */ public int getSigsRequiredToSpend() { return sigsRequiredToSpend_; } /** * <code>optional uint32 sigsRequiredToSpend = 6 [default = 1];</code> * * <pre> * Number of signatures required to spend. This field is needed only for married keychains to reconstruct KeyChain * and represents the N value from N-of-M CHECKMULTISIG script. For regular single keychains it will always be 1. * </pre> */ public Builder setSigsRequiredToSpend(int value) { bitField0_ |= 0x00000020; sigsRequiredToSpend_ = value; onChanged(); return this; } /** * <code>optional uint32 sigsRequiredToSpend = 6 [default = 1];</code> * * <pre> * Number of signatures required to spend. This field is needed only for married keychains to reconstruct KeyChain * and represents the N value from N-of-M CHECKMULTISIG script. For regular single keychains it will always be 1. * </pre> */ public Builder clearSigsRequiredToSpend() { bitField0_ = (bitField0_ & ~0x00000020); sigsRequiredToSpend_ = 1; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.DeterministicKey) } static { defaultInstance = new DeterministicKey(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.DeterministicKey) } public interface KeyOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.Key) com.google.protobuf.MessageOrBuilder { /** * <code>required .wallet.Key.Type type = 1;</code> */ boolean hasType(); /** * <code>required .wallet.Key.Type type = 1;</code> */ org.bitcoinj.wallet.Protos.Key.Type getType(); /** * <code>optional bytes secret_bytes = 2;</code> * * <pre> * Either the private EC key bytes (without any ASN.1 wrapping), or the deterministic root seed. * If the secret is encrypted, or this is a "watching entry" then this is missing. * </pre> */ boolean hasSecretBytes(); /** * <code>optional bytes secret_bytes = 2;</code> * * <pre> * Either the private EC key bytes (without any ASN.1 wrapping), or the deterministic root seed. * If the secret is encrypted, or this is a "watching entry" then this is missing. * </pre> */ com.google.protobuf.ByteString getSecretBytes(); /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ boolean hasEncryptedData(); /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ org.bitcoinj.wallet.Protos.EncryptedData getEncryptedData(); /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder getEncryptedDataOrBuilder(); /** * <code>optional bytes public_key = 3;</code> * * <pre> * The public EC key derived from the private key. We allow both to be stored to avoid mobile clients having to * do lots of slow EC math on startup. For DETERMINISTIC_MNEMONIC entries this is missing. * </pre> */ boolean hasPublicKey(); /** * <code>optional bytes public_key = 3;</code> * * <pre> * The public EC key derived from the private key. We allow both to be stored to avoid mobile clients having to * do lots of slow EC math on startup. For DETERMINISTIC_MNEMONIC entries this is missing. * </pre> */ com.google.protobuf.ByteString getPublicKey(); /** * <code>optional string label = 4;</code> * * <pre> * User-provided label associated with the key. * </pre> */ boolean hasLabel(); /** * <code>optional string label = 4;</code> * * <pre> * User-provided label associated with the key. * </pre> */ java.lang.String getLabel(); /** * <code>optional string label = 4;</code> * * <pre> * User-provided label associated with the key. * </pre> */ com.google.protobuf.ByteString getLabelBytes(); /** * <code>optional int64 creation_timestamp = 5;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point. The reason it's * optional is that keys derived from a parent don't have this data. * </pre> */ boolean hasCreationTimestamp(); /** * <code>optional int64 creation_timestamp = 5;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point. The reason it's * optional is that keys derived from a parent don't have this data. * </pre> */ long getCreationTimestamp(); /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ boolean hasDeterministicKey(); /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ org.bitcoinj.wallet.Protos.DeterministicKey getDeterministicKey(); /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ org.bitcoinj.wallet.Protos.DeterministicKeyOrBuilder getDeterministicKeyOrBuilder(); /** * <code>optional bytes deterministic_seed = 8;</code> * * <pre> * The seed for a deterministic key hierarchy. Derived from the mnemonic, * but cached here for quick startup. Only applicable to a DETERMINISTIC_MNEMONIC key entry. * </pre> */ boolean hasDeterministicSeed(); /** * <code>optional bytes deterministic_seed = 8;</code> * * <pre> * The seed for a deterministic key hierarchy. Derived from the mnemonic, * but cached here for quick startup. Only applicable to a DETERMINISTIC_MNEMONIC key entry. * </pre> */ com.google.protobuf.ByteString getDeterministicSeed(); /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ boolean hasEncryptedDeterministicSeed(); /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ org.bitcoinj.wallet.Protos.EncryptedData getEncryptedDeterministicSeed(); /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder getEncryptedDeterministicSeedOrBuilder(); } /** * Protobuf type {@code wallet.Key} * * <pre> ** * A key used to control Bitcoin spending. * Either the private key, the public key or both may be present. It is recommended that * if the private key is provided that the public key is provided too because deriving it is slow. * If only the public key is provided, the key can only be used to watch the blockchain and verify * transactions, and not for spending. * </pre> */ public static final class Key extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.Key) KeyOrBuilder { // Use Key.newBuilder() to construct. private Key(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private Key(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final Key defaultInstance; public static Key getDefaultInstance() { return defaultInstance; } public Key getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private Key( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 8: { int rawValue = input.readEnum(); org.bitcoinj.wallet.Protos.Key.Type value = org.bitcoinj.wallet.Protos.Key.Type.valueOf(rawValue); if (value == null) { unknownFields.mergeVarintField(1, rawValue); } else { bitField0_ |= 0x00000001; type_ = value; } break; } case 18: { bitField0_ |= 0x00000002; secretBytes_ = input.readBytes(); break; } case 26: { bitField0_ |= 0x00000008; publicKey_ = input.readBytes(); break; } case 34: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000010; label_ = bs; break; } case 40: { bitField0_ |= 0x00000020; creationTimestamp_ = input.readInt64(); break; } case 50: { org.bitcoinj.wallet.Protos.EncryptedData.Builder subBuilder = null; if (((bitField0_ & 0x00000004) == 0x00000004)) { subBuilder = encryptedData_.toBuilder(); } encryptedData_ = input.readMessage(org.bitcoinj.wallet.Protos.EncryptedData.PARSER, extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(encryptedData_); encryptedData_ = subBuilder.buildPartial(); } bitField0_ |= 0x00000004; break; } case 58: { org.bitcoinj.wallet.Protos.DeterministicKey.Builder subBuilder = null; if (((bitField0_ & 0x00000040) == 0x00000040)) { subBuilder = deterministicKey_.toBuilder(); } deterministicKey_ = input.readMessage(org.bitcoinj.wallet.Protos.DeterministicKey.PARSER, extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(deterministicKey_); deterministicKey_ = subBuilder.buildPartial(); } bitField0_ |= 0x00000040; break; } case 66: { bitField0_ |= 0x00000080; deterministicSeed_ = input.readBytes(); break; } case 74: { org.bitcoinj.wallet.Protos.EncryptedData.Builder subBuilder = null; if (((bitField0_ & 0x00000100) == 0x00000100)) { subBuilder = encryptedDeterministicSeed_.toBuilder(); } encryptedDeterministicSeed_ = input.readMessage(org.bitcoinj.wallet.Protos.EncryptedData.PARSER, extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(encryptedDeterministicSeed_); encryptedDeterministicSeed_ = subBuilder.buildPartial(); } bitField0_ |= 0x00000100; break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Key_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Key_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.Key.class, org.bitcoinj.wallet.Protos.Key.Builder.class); } public static com.google.protobuf.Parser<Key> PARSER = new com.google.protobuf.AbstractParser<Key>() { public Key parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new Key(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<Key> getParserForType() { return PARSER; } /** * Protobuf enum {@code wallet.Key.Type} */ public enum Type implements com.google.protobuf.ProtocolMessageEnum { /** * <code>ORIGINAL = 1;</code> * * <pre> ** Unencrypted - Original bitcoin secp256k1 curve * </pre> */ ORIGINAL(0, 1), /** * <code>ENCRYPTED_SCRYPT_AES = 2;</code> * * <pre> ** Encrypted with Scrypt and AES - Original bitcoin secp256k1 curve * </pre> */ ENCRYPTED_SCRYPT_AES(1, 2), /** * <code>DETERMINISTIC_MNEMONIC = 3;</code> * * <pre> ** * Not really a key, but rather contains the mnemonic phrase for a deterministic key hierarchy in the private_key field. * The label and public_key fields are missing. Creation timestamp will exist. * </pre> */ DETERMINISTIC_MNEMONIC(2, 3), /** * <code>DETERMINISTIC_KEY = 4;</code> * * <pre> ** * A key that was derived deterministically. Note that the root seed that created it may NOT be present in the * wallet, for the case of watching wallets. A deterministic key may or may not have the private key bytes present. * However the public key bytes and the deterministic_key field are guaranteed to exist. In a wallet where there * is a path from this key up to a key that has (possibly encrypted) private bytes, it's expected that the private * key can be rederived on the fly. * </pre> */ DETERMINISTIC_KEY(3, 4), ; /** * <code>ORIGINAL = 1;</code> * * <pre> ** Unencrypted - Original bitcoin secp256k1 curve * </pre> */ public static final int ORIGINAL_VALUE = 1; /** * <code>ENCRYPTED_SCRYPT_AES = 2;</code> * * <pre> ** Encrypted with Scrypt and AES - Original bitcoin secp256k1 curve * </pre> */ public static final int ENCRYPTED_SCRYPT_AES_VALUE = 2; /** * <code>DETERMINISTIC_MNEMONIC = 3;</code> * * <pre> ** * Not really a key, but rather contains the mnemonic phrase for a deterministic key hierarchy in the private_key field. * The label and public_key fields are missing. Creation timestamp will exist. * </pre> */ public static final int DETERMINISTIC_MNEMONIC_VALUE = 3; /** * <code>DETERMINISTIC_KEY = 4;</code> * * <pre> ** * A key that was derived deterministically. Note that the root seed that created it may NOT be present in the * wallet, for the case of watching wallets. A deterministic key may or may not have the private key bytes present. * However the public key bytes and the deterministic_key field are guaranteed to exist. In a wallet where there * is a path from this key up to a key that has (possibly encrypted) private bytes, it's expected that the private * key can be rederived on the fly. * </pre> */ public static final int DETERMINISTIC_KEY_VALUE = 4; public final int getNumber() { return value; } public static Type valueOf(int value) { switch (value) { case 1: return ORIGINAL; case 2: return ENCRYPTED_SCRYPT_AES; case 3: return DETERMINISTIC_MNEMONIC; case 4: return DETERMINISTIC_KEY; default: return null; } } public static com.google.protobuf.Internal.EnumLiteMap<Type> internalGetValueMap() { return internalValueMap; } private static com.google.protobuf.Internal.EnumLiteMap<Type> internalValueMap = new com.google.protobuf.Internal.EnumLiteMap<Type>() { public Type findValueByNumber(int number) { return Type.valueOf(number); } }; public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { return getDescriptor().getValues().get(index); } public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { return getDescriptor(); } public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { return org.bitcoinj.wallet.Protos.Key.getDescriptor().getEnumTypes().get(0); } private static final Type[] VALUES = values(); public static Type valueOf( com.google.protobuf.Descriptors.EnumValueDescriptor desc) { if (desc.getType() != getDescriptor()) { throw new java.lang.IllegalArgumentException( "EnumValueDescriptor is not for this type."); } return VALUES[desc.getIndex()]; } private final int index; private final int value; private Type(int index, int value) { this.index = index; this.value = value; } // @@protoc_insertion_point(enum_scope:wallet.Key.Type) } private int bitField0_; public static final int TYPE_FIELD_NUMBER = 1; private org.bitcoinj.wallet.Protos.Key.Type type_; /** * <code>required .wallet.Key.Type type = 1;</code> */ public boolean hasType() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required .wallet.Key.Type type = 1;</code> */ public org.bitcoinj.wallet.Protos.Key.Type getType() { return type_; } public static final int SECRET_BYTES_FIELD_NUMBER = 2; private com.google.protobuf.ByteString secretBytes_; /** * <code>optional bytes secret_bytes = 2;</code> * * <pre> * Either the private EC key bytes (without any ASN.1 wrapping), or the deterministic root seed. * If the secret is encrypted, or this is a "watching entry" then this is missing. * </pre> */ public boolean hasSecretBytes() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>optional bytes secret_bytes = 2;</code> * * <pre> * Either the private EC key bytes (without any ASN.1 wrapping), or the deterministic root seed. * If the secret is encrypted, or this is a "watching entry" then this is missing. * </pre> */ public com.google.protobuf.ByteString getSecretBytes() { return secretBytes_; } public static final int ENCRYPTED_DATA_FIELD_NUMBER = 6; private org.bitcoinj.wallet.Protos.EncryptedData encryptedData_; /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ public boolean hasEncryptedData() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ public org.bitcoinj.wallet.Protos.EncryptedData getEncryptedData() { return encryptedData_; } /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ public org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder getEncryptedDataOrBuilder() { return encryptedData_; } public static final int PUBLIC_KEY_FIELD_NUMBER = 3; private com.google.protobuf.ByteString publicKey_; /** * <code>optional bytes public_key = 3;</code> * * <pre> * The public EC key derived from the private key. We allow both to be stored to avoid mobile clients having to * do lots of slow EC math on startup. For DETERMINISTIC_MNEMONIC entries this is missing. * </pre> */ public boolean hasPublicKey() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional bytes public_key = 3;</code> * * <pre> * The public EC key derived from the private key. We allow both to be stored to avoid mobile clients having to * do lots of slow EC math on startup. For DETERMINISTIC_MNEMONIC entries this is missing. * </pre> */ public com.google.protobuf.ByteString getPublicKey() { return publicKey_; } public static final int LABEL_FIELD_NUMBER = 4; private java.lang.Object label_; /** * <code>optional string label = 4;</code> * * <pre> * User-provided label associated with the key. * </pre> */ public boolean hasLabel() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * <code>optional string label = 4;</code> * * <pre> * User-provided label associated with the key. * </pre> */ public java.lang.String getLabel() { java.lang.Object ref = label_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { label_ = s; } return s; } } /** * <code>optional string label = 4;</code> * * <pre> * User-provided label associated with the key. * </pre> */ public com.google.protobuf.ByteString getLabelBytes() { java.lang.Object ref = label_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); label_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int CREATION_TIMESTAMP_FIELD_NUMBER = 5; private long creationTimestamp_; /** * <code>optional int64 creation_timestamp = 5;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point. The reason it's * optional is that keys derived from a parent don't have this data. * </pre> */ public boolean hasCreationTimestamp() { return ((bitField0_ & 0x00000020) == 0x00000020); } /** * <code>optional int64 creation_timestamp = 5;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point. The reason it's * optional is that keys derived from a parent don't have this data. * </pre> */ public long getCreationTimestamp() { return creationTimestamp_; } public static final int DETERMINISTIC_KEY_FIELD_NUMBER = 7; private org.bitcoinj.wallet.Protos.DeterministicKey deterministicKey_; /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ public boolean hasDeterministicKey() { return ((bitField0_ & 0x00000040) == 0x00000040); } /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ public org.bitcoinj.wallet.Protos.DeterministicKey getDeterministicKey() { return deterministicKey_; } /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ public org.bitcoinj.wallet.Protos.DeterministicKeyOrBuilder getDeterministicKeyOrBuilder() { return deterministicKey_; } public static final int DETERMINISTIC_SEED_FIELD_NUMBER = 8; private com.google.protobuf.ByteString deterministicSeed_; /** * <code>optional bytes deterministic_seed = 8;</code> * * <pre> * The seed for a deterministic key hierarchy. Derived from the mnemonic, * but cached here for quick startup. Only applicable to a DETERMINISTIC_MNEMONIC key entry. * </pre> */ public boolean hasDeterministicSeed() { return ((bitField0_ & 0x00000080) == 0x00000080); } /** * <code>optional bytes deterministic_seed = 8;</code> * * <pre> * The seed for a deterministic key hierarchy. Derived from the mnemonic, * but cached here for quick startup. Only applicable to a DETERMINISTIC_MNEMONIC key entry. * </pre> */ public com.google.protobuf.ByteString getDeterministicSeed() { return deterministicSeed_; } public static final int ENCRYPTED_DETERMINISTIC_SEED_FIELD_NUMBER = 9; private org.bitcoinj.wallet.Protos.EncryptedData encryptedDeterministicSeed_; /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ public boolean hasEncryptedDeterministicSeed() { return ((bitField0_ & 0x00000100) == 0x00000100); } /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ public org.bitcoinj.wallet.Protos.EncryptedData getEncryptedDeterministicSeed() { return encryptedDeterministicSeed_; } /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ public org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder getEncryptedDeterministicSeedOrBuilder() { return encryptedDeterministicSeed_; } private void initFields() { type_ = org.bitcoinj.wallet.Protos.Key.Type.ORIGINAL; secretBytes_ = com.google.protobuf.ByteString.EMPTY; encryptedData_ = org.bitcoinj.wallet.Protos.EncryptedData.getDefaultInstance(); publicKey_ = com.google.protobuf.ByteString.EMPTY; label_ = ""; creationTimestamp_ = 0L; deterministicKey_ = org.bitcoinj.wallet.Protos.DeterministicKey.getDefaultInstance(); deterministicSeed_ = com.google.protobuf.ByteString.EMPTY; encryptedDeterministicSeed_ = org.bitcoinj.wallet.Protos.EncryptedData.getDefaultInstance(); } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasType()) { memoizedIsInitialized = 0; return false; } if (hasEncryptedData()) { if (!getEncryptedData().isInitialized()) { memoizedIsInitialized = 0; return false; } } if (hasDeterministicKey()) { if (!getDeterministicKey().isInitialized()) { memoizedIsInitialized = 0; return false; } } if (hasEncryptedDeterministicSeed()) { if (!getEncryptedDeterministicSeed().isInitialized()) { memoizedIsInitialized = 0; return false; } } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeEnum(1, type_.getNumber()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeBytes(2, secretBytes_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { output.writeBytes(3, publicKey_); } if (((bitField0_ & 0x00000010) == 0x00000010)) { output.writeBytes(4, getLabelBytes()); } if (((bitField0_ & 0x00000020) == 0x00000020)) { output.writeInt64(5, creationTimestamp_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeMessage(6, encryptedData_); } if (((bitField0_ & 0x00000040) == 0x00000040)) { output.writeMessage(7, deterministicKey_); } if (((bitField0_ & 0x00000080) == 0x00000080)) { output.writeBytes(8, deterministicSeed_); } if (((bitField0_ & 0x00000100) == 0x00000100)) { output.writeMessage(9, encryptedDeterministicSeed_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(1, type_.getNumber()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(2, secretBytes_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(3, publicKey_); } if (((bitField0_ & 0x00000010) == 0x00000010)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(4, getLabelBytes()); } if (((bitField0_ & 0x00000020) == 0x00000020)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(5, creationTimestamp_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(6, encryptedData_); } if (((bitField0_ & 0x00000040) == 0x00000040)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(7, deterministicKey_); } if (((bitField0_ & 0x00000080) == 0x00000080)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(8, deterministicSeed_); } if (((bitField0_ & 0x00000100) == 0x00000100)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(9, encryptedDeterministicSeed_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.Key parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.Key parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Key parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.Key parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Key parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.Key parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Key parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.Key parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Key parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.Key parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.Key prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.Key} * * <pre> ** * A key used to control Bitcoin spending. * Either the private key, the public key or both may be present. It is recommended that * if the private key is provided that the public key is provided too because deriving it is slow. * If only the public key is provided, the key can only be used to watch the blockchain and verify * transactions, and not for spending. * </pre> */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.Key) org.bitcoinj.wallet.Protos.KeyOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Key_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Key_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.Key.class, org.bitcoinj.wallet.Protos.Key.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.Key.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { getEncryptedDataFieldBuilder(); getDeterministicKeyFieldBuilder(); getEncryptedDeterministicSeedFieldBuilder(); } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); type_ = org.bitcoinj.wallet.Protos.Key.Type.ORIGINAL; bitField0_ = (bitField0_ & ~0x00000001); secretBytes_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000002); if (encryptedDataBuilder_ == null) { encryptedData_ = org.bitcoinj.wallet.Protos.EncryptedData.getDefaultInstance(); } else { encryptedDataBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000004); publicKey_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000008); label_ = ""; bitField0_ = (bitField0_ & ~0x00000010); creationTimestamp_ = 0L; bitField0_ = (bitField0_ & ~0x00000020); if (deterministicKeyBuilder_ == null) { deterministicKey_ = org.bitcoinj.wallet.Protos.DeterministicKey.getDefaultInstance(); } else { deterministicKeyBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000040); deterministicSeed_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000080); if (encryptedDeterministicSeedBuilder_ == null) { encryptedDeterministicSeed_ = org.bitcoinj.wallet.Protos.EncryptedData.getDefaultInstance(); } else { encryptedDeterministicSeedBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000100); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Key_descriptor; } public org.bitcoinj.wallet.Protos.Key getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.Key.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.Key build() { org.bitcoinj.wallet.Protos.Key result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.Key buildPartial() { org.bitcoinj.wallet.Protos.Key result = new org.bitcoinj.wallet.Protos.Key(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.type_ = type_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.secretBytes_ = secretBytes_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } if (encryptedDataBuilder_ == null) { result.encryptedData_ = encryptedData_; } else { result.encryptedData_ = encryptedDataBuilder_.build(); } if (((from_bitField0_ & 0x00000008) == 0x00000008)) { to_bitField0_ |= 0x00000008; } result.publicKey_ = publicKey_; if (((from_bitField0_ & 0x00000010) == 0x00000010)) { to_bitField0_ |= 0x00000010; } result.label_ = label_; if (((from_bitField0_ & 0x00000020) == 0x00000020)) { to_bitField0_ |= 0x00000020; } result.creationTimestamp_ = creationTimestamp_; if (((from_bitField0_ & 0x00000040) == 0x00000040)) { to_bitField0_ |= 0x00000040; } if (deterministicKeyBuilder_ == null) { result.deterministicKey_ = deterministicKey_; } else { result.deterministicKey_ = deterministicKeyBuilder_.build(); } if (((from_bitField0_ & 0x00000080) == 0x00000080)) { to_bitField0_ |= 0x00000080; } result.deterministicSeed_ = deterministicSeed_; if (((from_bitField0_ & 0x00000100) == 0x00000100)) { to_bitField0_ |= 0x00000100; } if (encryptedDeterministicSeedBuilder_ == null) { result.encryptedDeterministicSeed_ = encryptedDeterministicSeed_; } else { result.encryptedDeterministicSeed_ = encryptedDeterministicSeedBuilder_.build(); } result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.Key) { return mergeFrom((org.bitcoinj.wallet.Protos.Key)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.Key other) { if (other == org.bitcoinj.wallet.Protos.Key.getDefaultInstance()) return this; if (other.hasType()) { setType(other.getType()); } if (other.hasSecretBytes()) { setSecretBytes(other.getSecretBytes()); } if (other.hasEncryptedData()) { mergeEncryptedData(other.getEncryptedData()); } if (other.hasPublicKey()) { setPublicKey(other.getPublicKey()); } if (other.hasLabel()) { bitField0_ |= 0x00000010; label_ = other.label_; onChanged(); } if (other.hasCreationTimestamp()) { setCreationTimestamp(other.getCreationTimestamp()); } if (other.hasDeterministicKey()) { mergeDeterministicKey(other.getDeterministicKey()); } if (other.hasDeterministicSeed()) { setDeterministicSeed(other.getDeterministicSeed()); } if (other.hasEncryptedDeterministicSeed()) { mergeEncryptedDeterministicSeed(other.getEncryptedDeterministicSeed()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasType()) { return false; } if (hasEncryptedData()) { if (!getEncryptedData().isInitialized()) { return false; } } if (hasDeterministicKey()) { if (!getDeterministicKey().isInitialized()) { return false; } } if (hasEncryptedDeterministicSeed()) { if (!getEncryptedDeterministicSeed().isInitialized()) { return false; } } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.Key parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.Key) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private org.bitcoinj.wallet.Protos.Key.Type type_ = org.bitcoinj.wallet.Protos.Key.Type.ORIGINAL; /** * <code>required .wallet.Key.Type type = 1;</code> */ public boolean hasType() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required .wallet.Key.Type type = 1;</code> */ public org.bitcoinj.wallet.Protos.Key.Type getType() { return type_; } /** * <code>required .wallet.Key.Type type = 1;</code> */ public Builder setType(org.bitcoinj.wallet.Protos.Key.Type value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; type_ = value; onChanged(); return this; } /** * <code>required .wallet.Key.Type type = 1;</code> */ public Builder clearType() { bitField0_ = (bitField0_ & ~0x00000001); type_ = org.bitcoinj.wallet.Protos.Key.Type.ORIGINAL; onChanged(); return this; } private com.google.protobuf.ByteString secretBytes_ = com.google.protobuf.ByteString.EMPTY; /** * <code>optional bytes secret_bytes = 2;</code> * * <pre> * Either the private EC key bytes (without any ASN.1 wrapping), or the deterministic root seed. * If the secret is encrypted, or this is a "watching entry" then this is missing. * </pre> */ public boolean hasSecretBytes() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>optional bytes secret_bytes = 2;</code> * * <pre> * Either the private EC key bytes (without any ASN.1 wrapping), or the deterministic root seed. * If the secret is encrypted, or this is a "watching entry" then this is missing. * </pre> */ public com.google.protobuf.ByteString getSecretBytes() { return secretBytes_; } /** * <code>optional bytes secret_bytes = 2;</code> * * <pre> * Either the private EC key bytes (without any ASN.1 wrapping), or the deterministic root seed. * If the secret is encrypted, or this is a "watching entry" then this is missing. * </pre> */ public Builder setSecretBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000002; secretBytes_ = value; onChanged(); return this; } /** * <code>optional bytes secret_bytes = 2;</code> * * <pre> * Either the private EC key bytes (without any ASN.1 wrapping), or the deterministic root seed. * If the secret is encrypted, or this is a "watching entry" then this is missing. * </pre> */ public Builder clearSecretBytes() { bitField0_ = (bitField0_ & ~0x00000002); secretBytes_ = getDefaultInstance().getSecretBytes(); onChanged(); return this; } private org.bitcoinj.wallet.Protos.EncryptedData encryptedData_ = org.bitcoinj.wallet.Protos.EncryptedData.getDefaultInstance(); private com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.EncryptedData, org.bitcoinj.wallet.Protos.EncryptedData.Builder, org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder> encryptedDataBuilder_; /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ public boolean hasEncryptedData() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ public org.bitcoinj.wallet.Protos.EncryptedData getEncryptedData() { if (encryptedDataBuilder_ == null) { return encryptedData_; } else { return encryptedDataBuilder_.getMessage(); } } /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ public Builder setEncryptedData(org.bitcoinj.wallet.Protos.EncryptedData value) { if (encryptedDataBuilder_ == null) { if (value == null) { throw new NullPointerException(); } encryptedData_ = value; onChanged(); } else { encryptedDataBuilder_.setMessage(value); } bitField0_ |= 0x00000004; return this; } /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ public Builder setEncryptedData( org.bitcoinj.wallet.Protos.EncryptedData.Builder builderForValue) { if (encryptedDataBuilder_ == null) { encryptedData_ = builderForValue.build(); onChanged(); } else { encryptedDataBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000004; return this; } /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ public Builder mergeEncryptedData(org.bitcoinj.wallet.Protos.EncryptedData value) { if (encryptedDataBuilder_ == null) { if (((bitField0_ & 0x00000004) == 0x00000004) && encryptedData_ != org.bitcoinj.wallet.Protos.EncryptedData.getDefaultInstance()) { encryptedData_ = org.bitcoinj.wallet.Protos.EncryptedData.newBuilder(encryptedData_).mergeFrom(value).buildPartial(); } else { encryptedData_ = value; } onChanged(); } else { encryptedDataBuilder_.mergeFrom(value); } bitField0_ |= 0x00000004; return this; } /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ public Builder clearEncryptedData() { if (encryptedDataBuilder_ == null) { encryptedData_ = org.bitcoinj.wallet.Protos.EncryptedData.getDefaultInstance(); onChanged(); } else { encryptedDataBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000004); return this; } /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ public org.bitcoinj.wallet.Protos.EncryptedData.Builder getEncryptedDataBuilder() { bitField0_ |= 0x00000004; onChanged(); return getEncryptedDataFieldBuilder().getBuilder(); } /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ public org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder getEncryptedDataOrBuilder() { if (encryptedDataBuilder_ != null) { return encryptedDataBuilder_.getMessageOrBuilder(); } else { return encryptedData_; } } /** * <code>optional .wallet.EncryptedData encrypted_data = 6;</code> * * <pre> * If the secret data is encrypted, then secret_bytes is missing and this field is set. * </pre> */ private com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.EncryptedData, org.bitcoinj.wallet.Protos.EncryptedData.Builder, org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder> getEncryptedDataFieldBuilder() { if (encryptedDataBuilder_ == null) { encryptedDataBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.EncryptedData, org.bitcoinj.wallet.Protos.EncryptedData.Builder, org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder>( getEncryptedData(), getParentForChildren(), isClean()); encryptedData_ = null; } return encryptedDataBuilder_; } private com.google.protobuf.ByteString publicKey_ = com.google.protobuf.ByteString.EMPTY; /** * <code>optional bytes public_key = 3;</code> * * <pre> * The public EC key derived from the private key. We allow both to be stored to avoid mobile clients having to * do lots of slow EC math on startup. For DETERMINISTIC_MNEMONIC entries this is missing. * </pre> */ public boolean hasPublicKey() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional bytes public_key = 3;</code> * * <pre> * The public EC key derived from the private key. We allow both to be stored to avoid mobile clients having to * do lots of slow EC math on startup. For DETERMINISTIC_MNEMONIC entries this is missing. * </pre> */ public com.google.protobuf.ByteString getPublicKey() { return publicKey_; } /** * <code>optional bytes public_key = 3;</code> * * <pre> * The public EC key derived from the private key. We allow both to be stored to avoid mobile clients having to * do lots of slow EC math on startup. For DETERMINISTIC_MNEMONIC entries this is missing. * </pre> */ public Builder setPublicKey(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000008; publicKey_ = value; onChanged(); return this; } /** * <code>optional bytes public_key = 3;</code> * * <pre> * The public EC key derived from the private key. We allow both to be stored to avoid mobile clients having to * do lots of slow EC math on startup. For DETERMINISTIC_MNEMONIC entries this is missing. * </pre> */ public Builder clearPublicKey() { bitField0_ = (bitField0_ & ~0x00000008); publicKey_ = getDefaultInstance().getPublicKey(); onChanged(); return this; } private java.lang.Object label_ = ""; /** * <code>optional string label = 4;</code> * * <pre> * User-provided label associated with the key. * </pre> */ public boolean hasLabel() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * <code>optional string label = 4;</code> * * <pre> * User-provided label associated with the key. * </pre> */ public java.lang.String getLabel() { java.lang.Object ref = label_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { label_ = s; } return s; } else { return (java.lang.String) ref; } } /** * <code>optional string label = 4;</code> * * <pre> * User-provided label associated with the key. * </pre> */ public com.google.protobuf.ByteString getLabelBytes() { java.lang.Object ref = label_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); label_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * <code>optional string label = 4;</code> * * <pre> * User-provided label associated with the key. * </pre> */ public Builder setLabel( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000010; label_ = value; onChanged(); return this; } /** * <code>optional string label = 4;</code> * * <pre> * User-provided label associated with the key. * </pre> */ public Builder clearLabel() { bitField0_ = (bitField0_ & ~0x00000010); label_ = getDefaultInstance().getLabel(); onChanged(); return this; } /** * <code>optional string label = 4;</code> * * <pre> * User-provided label associated with the key. * </pre> */ public Builder setLabelBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000010; label_ = value; onChanged(); return this; } private long creationTimestamp_ ; /** * <code>optional int64 creation_timestamp = 5;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point. The reason it's * optional is that keys derived from a parent don't have this data. * </pre> */ public boolean hasCreationTimestamp() { return ((bitField0_ & 0x00000020) == 0x00000020); } /** * <code>optional int64 creation_timestamp = 5;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point. The reason it's * optional is that keys derived from a parent don't have this data. * </pre> */ public long getCreationTimestamp() { return creationTimestamp_; } /** * <code>optional int64 creation_timestamp = 5;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point. The reason it's * optional is that keys derived from a parent don't have this data. * </pre> */ public Builder setCreationTimestamp(long value) { bitField0_ |= 0x00000020; creationTimestamp_ = value; onChanged(); return this; } /** * <code>optional int64 creation_timestamp = 5;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point. The reason it's * optional is that keys derived from a parent don't have this data. * </pre> */ public Builder clearCreationTimestamp() { bitField0_ = (bitField0_ & ~0x00000020); creationTimestamp_ = 0L; onChanged(); return this; } private org.bitcoinj.wallet.Protos.DeterministicKey deterministicKey_ = org.bitcoinj.wallet.Protos.DeterministicKey.getDefaultInstance(); private com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.DeterministicKey, org.bitcoinj.wallet.Protos.DeterministicKey.Builder, org.bitcoinj.wallet.Protos.DeterministicKeyOrBuilder> deterministicKeyBuilder_; /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ public boolean hasDeterministicKey() { return ((bitField0_ & 0x00000040) == 0x00000040); } /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ public org.bitcoinj.wallet.Protos.DeterministicKey getDeterministicKey() { if (deterministicKeyBuilder_ == null) { return deterministicKey_; } else { return deterministicKeyBuilder_.getMessage(); } } /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ public Builder setDeterministicKey(org.bitcoinj.wallet.Protos.DeterministicKey value) { if (deterministicKeyBuilder_ == null) { if (value == null) { throw new NullPointerException(); } deterministicKey_ = value; onChanged(); } else { deterministicKeyBuilder_.setMessage(value); } bitField0_ |= 0x00000040; return this; } /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ public Builder setDeterministicKey( org.bitcoinj.wallet.Protos.DeterministicKey.Builder builderForValue) { if (deterministicKeyBuilder_ == null) { deterministicKey_ = builderForValue.build(); onChanged(); } else { deterministicKeyBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000040; return this; } /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ public Builder mergeDeterministicKey(org.bitcoinj.wallet.Protos.DeterministicKey value) { if (deterministicKeyBuilder_ == null) { if (((bitField0_ & 0x00000040) == 0x00000040) && deterministicKey_ != org.bitcoinj.wallet.Protos.DeterministicKey.getDefaultInstance()) { deterministicKey_ = org.bitcoinj.wallet.Protos.DeterministicKey.newBuilder(deterministicKey_).mergeFrom(value).buildPartial(); } else { deterministicKey_ = value; } onChanged(); } else { deterministicKeyBuilder_.mergeFrom(value); } bitField0_ |= 0x00000040; return this; } /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ public Builder clearDeterministicKey() { if (deterministicKeyBuilder_ == null) { deterministicKey_ = org.bitcoinj.wallet.Protos.DeterministicKey.getDefaultInstance(); onChanged(); } else { deterministicKeyBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000040); return this; } /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ public org.bitcoinj.wallet.Protos.DeterministicKey.Builder getDeterministicKeyBuilder() { bitField0_ |= 0x00000040; onChanged(); return getDeterministicKeyFieldBuilder().getBuilder(); } /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ public org.bitcoinj.wallet.Protos.DeterministicKeyOrBuilder getDeterministicKeyOrBuilder() { if (deterministicKeyBuilder_ != null) { return deterministicKeyBuilder_.getMessageOrBuilder(); } else { return deterministicKey_; } } /** * <code>optional .wallet.DeterministicKey deterministic_key = 7;</code> */ private com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.DeterministicKey, org.bitcoinj.wallet.Protos.DeterministicKey.Builder, org.bitcoinj.wallet.Protos.DeterministicKeyOrBuilder> getDeterministicKeyFieldBuilder() { if (deterministicKeyBuilder_ == null) { deterministicKeyBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.DeterministicKey, org.bitcoinj.wallet.Protos.DeterministicKey.Builder, org.bitcoinj.wallet.Protos.DeterministicKeyOrBuilder>( getDeterministicKey(), getParentForChildren(), isClean()); deterministicKey_ = null; } return deterministicKeyBuilder_; } private com.google.protobuf.ByteString deterministicSeed_ = com.google.protobuf.ByteString.EMPTY; /** * <code>optional bytes deterministic_seed = 8;</code> * * <pre> * The seed for a deterministic key hierarchy. Derived from the mnemonic, * but cached here for quick startup. Only applicable to a DETERMINISTIC_MNEMONIC key entry. * </pre> */ public boolean hasDeterministicSeed() { return ((bitField0_ & 0x00000080) == 0x00000080); } /** * <code>optional bytes deterministic_seed = 8;</code> * * <pre> * The seed for a deterministic key hierarchy. Derived from the mnemonic, * but cached here for quick startup. Only applicable to a DETERMINISTIC_MNEMONIC key entry. * </pre> */ public com.google.protobuf.ByteString getDeterministicSeed() { return deterministicSeed_; } /** * <code>optional bytes deterministic_seed = 8;</code> * * <pre> * The seed for a deterministic key hierarchy. Derived from the mnemonic, * but cached here for quick startup. Only applicable to a DETERMINISTIC_MNEMONIC key entry. * </pre> */ public Builder setDeterministicSeed(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000080; deterministicSeed_ = value; onChanged(); return this; } /** * <code>optional bytes deterministic_seed = 8;</code> * * <pre> * The seed for a deterministic key hierarchy. Derived from the mnemonic, * but cached here for quick startup. Only applicable to a DETERMINISTIC_MNEMONIC key entry. * </pre> */ public Builder clearDeterministicSeed() { bitField0_ = (bitField0_ & ~0x00000080); deterministicSeed_ = getDefaultInstance().getDeterministicSeed(); onChanged(); return this; } private org.bitcoinj.wallet.Protos.EncryptedData encryptedDeterministicSeed_ = org.bitcoinj.wallet.Protos.EncryptedData.getDefaultInstance(); private com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.EncryptedData, org.bitcoinj.wallet.Protos.EncryptedData.Builder, org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder> encryptedDeterministicSeedBuilder_; /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ public boolean hasEncryptedDeterministicSeed() { return ((bitField0_ & 0x00000100) == 0x00000100); } /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ public org.bitcoinj.wallet.Protos.EncryptedData getEncryptedDeterministicSeed() { if (encryptedDeterministicSeedBuilder_ == null) { return encryptedDeterministicSeed_; } else { return encryptedDeterministicSeedBuilder_.getMessage(); } } /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ public Builder setEncryptedDeterministicSeed(org.bitcoinj.wallet.Protos.EncryptedData value) { if (encryptedDeterministicSeedBuilder_ == null) { if (value == null) { throw new NullPointerException(); } encryptedDeterministicSeed_ = value; onChanged(); } else { encryptedDeterministicSeedBuilder_.setMessage(value); } bitField0_ |= 0x00000100; return this; } /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ public Builder setEncryptedDeterministicSeed( org.bitcoinj.wallet.Protos.EncryptedData.Builder builderForValue) { if (encryptedDeterministicSeedBuilder_ == null) { encryptedDeterministicSeed_ = builderForValue.build(); onChanged(); } else { encryptedDeterministicSeedBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000100; return this; } /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ public Builder mergeEncryptedDeterministicSeed(org.bitcoinj.wallet.Protos.EncryptedData value) { if (encryptedDeterministicSeedBuilder_ == null) { if (((bitField0_ & 0x00000100) == 0x00000100) && encryptedDeterministicSeed_ != org.bitcoinj.wallet.Protos.EncryptedData.getDefaultInstance()) { encryptedDeterministicSeed_ = org.bitcoinj.wallet.Protos.EncryptedData.newBuilder(encryptedDeterministicSeed_).mergeFrom(value).buildPartial(); } else { encryptedDeterministicSeed_ = value; } onChanged(); } else { encryptedDeterministicSeedBuilder_.mergeFrom(value); } bitField0_ |= 0x00000100; return this; } /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ public Builder clearEncryptedDeterministicSeed() { if (encryptedDeterministicSeedBuilder_ == null) { encryptedDeterministicSeed_ = org.bitcoinj.wallet.Protos.EncryptedData.getDefaultInstance(); onChanged(); } else { encryptedDeterministicSeedBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000100); return this; } /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ public org.bitcoinj.wallet.Protos.EncryptedData.Builder getEncryptedDeterministicSeedBuilder() { bitField0_ |= 0x00000100; onChanged(); return getEncryptedDeterministicSeedFieldBuilder().getBuilder(); } /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ public org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder getEncryptedDeterministicSeedOrBuilder() { if (encryptedDeterministicSeedBuilder_ != null) { return encryptedDeterministicSeedBuilder_.getMessageOrBuilder(); } else { return encryptedDeterministicSeed_; } } /** * <code>optional .wallet.EncryptedData encrypted_deterministic_seed = 9;</code> * * <pre> * Encrypted version of the seed * </pre> */ private com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.EncryptedData, org.bitcoinj.wallet.Protos.EncryptedData.Builder, org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder> getEncryptedDeterministicSeedFieldBuilder() { if (encryptedDeterministicSeedBuilder_ == null) { encryptedDeterministicSeedBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.EncryptedData, org.bitcoinj.wallet.Protos.EncryptedData.Builder, org.bitcoinj.wallet.Protos.EncryptedDataOrBuilder>( getEncryptedDeterministicSeed(), getParentForChildren(), isClean()); encryptedDeterministicSeed_ = null; } return encryptedDeterministicSeedBuilder_; } // @@protoc_insertion_point(builder_scope:wallet.Key) } static { defaultInstance = new Key(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.Key) } public interface ScriptOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.Script) com.google.protobuf.MessageOrBuilder { /** * <code>required bytes program = 1;</code> */ boolean hasProgram(); /** * <code>required bytes program = 1;</code> */ com.google.protobuf.ByteString getProgram(); /** * <code>required int64 creation_timestamp = 2;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point * when watching for scripts on the blockchain. * </pre> */ boolean hasCreationTimestamp(); /** * <code>required int64 creation_timestamp = 2;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point * when watching for scripts on the blockchain. * </pre> */ long getCreationTimestamp(); } /** * Protobuf type {@code wallet.Script} */ public static final class Script extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.Script) ScriptOrBuilder { // Use Script.newBuilder() to construct. private Script(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private Script(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final Script defaultInstance; public static Script getDefaultInstance() { return defaultInstance; } public Script getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private Script( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { bitField0_ |= 0x00000001; program_ = input.readBytes(); break; } case 16: { bitField0_ |= 0x00000002; creationTimestamp_ = input.readInt64(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Script_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Script_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.Script.class, org.bitcoinj.wallet.Protos.Script.Builder.class); } public static com.google.protobuf.Parser<Script> PARSER = new com.google.protobuf.AbstractParser<Script>() { public Script parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new Script(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<Script> getParserForType() { return PARSER; } private int bitField0_; public static final int PROGRAM_FIELD_NUMBER = 1; private com.google.protobuf.ByteString program_; /** * <code>required bytes program = 1;</code> */ public boolean hasProgram() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required bytes program = 1;</code> */ public com.google.protobuf.ByteString getProgram() { return program_; } public static final int CREATION_TIMESTAMP_FIELD_NUMBER = 2; private long creationTimestamp_; /** * <code>required int64 creation_timestamp = 2;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point * when watching for scripts on the blockchain. * </pre> */ public boolean hasCreationTimestamp() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required int64 creation_timestamp = 2;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point * when watching for scripts on the blockchain. * </pre> */ public long getCreationTimestamp() { return creationTimestamp_; } private void initFields() { program_ = com.google.protobuf.ByteString.EMPTY; creationTimestamp_ = 0L; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasProgram()) { memoizedIsInitialized = 0; return false; } if (!hasCreationTimestamp()) { memoizedIsInitialized = 0; return false; } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeBytes(1, program_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeInt64(2, creationTimestamp_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, program_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(2, creationTimestamp_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.Script parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.Script parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Script parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.Script parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Script parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.Script parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Script parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.Script parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Script parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.Script parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.Script prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.Script} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.Script) org.bitcoinj.wallet.Protos.ScriptOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Script_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Script_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.Script.class, org.bitcoinj.wallet.Protos.Script.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.Script.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); program_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); creationTimestamp_ = 0L; bitField0_ = (bitField0_ & ~0x00000002); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Script_descriptor; } public org.bitcoinj.wallet.Protos.Script getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.Script.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.Script build() { org.bitcoinj.wallet.Protos.Script result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.Script buildPartial() { org.bitcoinj.wallet.Protos.Script result = new org.bitcoinj.wallet.Protos.Script(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.program_ = program_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.creationTimestamp_ = creationTimestamp_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.Script) { return mergeFrom((org.bitcoinj.wallet.Protos.Script)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.Script other) { if (other == org.bitcoinj.wallet.Protos.Script.getDefaultInstance()) return this; if (other.hasProgram()) { setProgram(other.getProgram()); } if (other.hasCreationTimestamp()) { setCreationTimestamp(other.getCreationTimestamp()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasProgram()) { return false; } if (!hasCreationTimestamp()) { return false; } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.Script parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.Script) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private com.google.protobuf.ByteString program_ = com.google.protobuf.ByteString.EMPTY; /** * <code>required bytes program = 1;</code> */ public boolean hasProgram() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required bytes program = 1;</code> */ public com.google.protobuf.ByteString getProgram() { return program_; } /** * <code>required bytes program = 1;</code> */ public Builder setProgram(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; program_ = value; onChanged(); return this; } /** * <code>required bytes program = 1;</code> */ public Builder clearProgram() { bitField0_ = (bitField0_ & ~0x00000001); program_ = getDefaultInstance().getProgram(); onChanged(); return this; } private long creationTimestamp_ ; /** * <code>required int64 creation_timestamp = 2;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point * when watching for scripts on the blockchain. * </pre> */ public boolean hasCreationTimestamp() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required int64 creation_timestamp = 2;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point * when watching for scripts on the blockchain. * </pre> */ public long getCreationTimestamp() { return creationTimestamp_; } /** * <code>required int64 creation_timestamp = 2;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point * when watching for scripts on the blockchain. * </pre> */ public Builder setCreationTimestamp(long value) { bitField0_ |= 0x00000002; creationTimestamp_ = value; onChanged(); return this; } /** * <code>required int64 creation_timestamp = 2;</code> * * <pre> * Timestamp stored as millis since epoch. Useful for skipping block bodies before this point * when watching for scripts on the blockchain. * </pre> */ public Builder clearCreationTimestamp() { bitField0_ = (bitField0_ & ~0x00000002); creationTimestamp_ = 0L; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.Script) } static { defaultInstance = new Script(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.Script) } public interface TransactionInputOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.TransactionInput) com.google.protobuf.MessageOrBuilder { /** * <code>required bytes transaction_out_point_hash = 1;</code> * * <pre> * Hash of the transaction this input is using. * </pre> */ boolean hasTransactionOutPointHash(); /** * <code>required bytes transaction_out_point_hash = 1;</code> * * <pre> * Hash of the transaction this input is using. * </pre> */ com.google.protobuf.ByteString getTransactionOutPointHash(); /** * <code>required uint32 transaction_out_point_index = 2;</code> * * <pre> * Index of transaction output used by this input. * </pre> */ boolean hasTransactionOutPointIndex(); /** * <code>required uint32 transaction_out_point_index = 2;</code> * * <pre> * Index of transaction output used by this input. * </pre> */ int getTransactionOutPointIndex(); /** * <code>required bytes script_bytes = 3;</code> * * <pre> * Script that contains the signatures/pubkeys. * </pre> */ boolean hasScriptBytes(); /** * <code>required bytes script_bytes = 3;</code> * * <pre> * Script that contains the signatures/pubkeys. * </pre> */ com.google.protobuf.ByteString getScriptBytes(); /** * <code>optional uint32 sequence = 4;</code> * * <pre> * Sequence number. * </pre> */ boolean hasSequence(); /** * <code>optional uint32 sequence = 4;</code> * * <pre> * Sequence number. * </pre> */ int getSequence(); /** * <code>optional int64 value = 5;</code> * * <pre> * Value of connected output, if known * </pre> */ boolean hasValue(); /** * <code>optional int64 value = 5;</code> * * <pre> * Value of connected output, if known * </pre> */ long getValue(); } /** * Protobuf type {@code wallet.TransactionInput} */ public static final class TransactionInput extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.TransactionInput) TransactionInputOrBuilder { // Use TransactionInput.newBuilder() to construct. private TransactionInput(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private TransactionInput(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final TransactionInput defaultInstance; public static TransactionInput getDefaultInstance() { return defaultInstance; } public TransactionInput getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private TransactionInput( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { bitField0_ |= 0x00000001; transactionOutPointHash_ = input.readBytes(); break; } case 16: { bitField0_ |= 0x00000002; transactionOutPointIndex_ = input.readUInt32(); break; } case 26: { bitField0_ |= 0x00000004; scriptBytes_ = input.readBytes(); break; } case 32: { bitField0_ |= 0x00000008; sequence_ = input.readUInt32(); break; } case 40: { bitField0_ |= 0x00000010; value_ = input.readInt64(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionInput_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionInput_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.TransactionInput.class, org.bitcoinj.wallet.Protos.TransactionInput.Builder.class); } public static com.google.protobuf.Parser<TransactionInput> PARSER = new com.google.protobuf.AbstractParser<TransactionInput>() { public TransactionInput parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new TransactionInput(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<TransactionInput> getParserForType() { return PARSER; } private int bitField0_; public static final int TRANSACTION_OUT_POINT_HASH_FIELD_NUMBER = 1; private com.google.protobuf.ByteString transactionOutPointHash_; /** * <code>required bytes transaction_out_point_hash = 1;</code> * * <pre> * Hash of the transaction this input is using. * </pre> */ public boolean hasTransactionOutPointHash() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required bytes transaction_out_point_hash = 1;</code> * * <pre> * Hash of the transaction this input is using. * </pre> */ public com.google.protobuf.ByteString getTransactionOutPointHash() { return transactionOutPointHash_; } public static final int TRANSACTION_OUT_POINT_INDEX_FIELD_NUMBER = 2; private int transactionOutPointIndex_; /** * <code>required uint32 transaction_out_point_index = 2;</code> * * <pre> * Index of transaction output used by this input. * </pre> */ public boolean hasTransactionOutPointIndex() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required uint32 transaction_out_point_index = 2;</code> * * <pre> * Index of transaction output used by this input. * </pre> */ public int getTransactionOutPointIndex() { return transactionOutPointIndex_; } public static final int SCRIPT_BYTES_FIELD_NUMBER = 3; private com.google.protobuf.ByteString scriptBytes_; /** * <code>required bytes script_bytes = 3;</code> * * <pre> * Script that contains the signatures/pubkeys. * </pre> */ public boolean hasScriptBytes() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>required bytes script_bytes = 3;</code> * * <pre> * Script that contains the signatures/pubkeys. * </pre> */ public com.google.protobuf.ByteString getScriptBytes() { return scriptBytes_; } public static final int SEQUENCE_FIELD_NUMBER = 4; private int sequence_; /** * <code>optional uint32 sequence = 4;</code> * * <pre> * Sequence number. * </pre> */ public boolean hasSequence() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional uint32 sequence = 4;</code> * * <pre> * Sequence number. * </pre> */ public int getSequence() { return sequence_; } public static final int VALUE_FIELD_NUMBER = 5; private long value_; /** * <code>optional int64 value = 5;</code> * * <pre> * Value of connected output, if known * </pre> */ public boolean hasValue() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * <code>optional int64 value = 5;</code> * * <pre> * Value of connected output, if known * </pre> */ public long getValue() { return value_; } private void initFields() { transactionOutPointHash_ = com.google.protobuf.ByteString.EMPTY; transactionOutPointIndex_ = 0; scriptBytes_ = com.google.protobuf.ByteString.EMPTY; sequence_ = 0; value_ = 0L; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasTransactionOutPointHash()) { memoizedIsInitialized = 0; return false; } if (!hasTransactionOutPointIndex()) { memoizedIsInitialized = 0; return false; } if (!hasScriptBytes()) { memoizedIsInitialized = 0; return false; } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeBytes(1, transactionOutPointHash_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeUInt32(2, transactionOutPointIndex_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeBytes(3, scriptBytes_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { output.writeUInt32(4, sequence_); } if (((bitField0_ & 0x00000010) == 0x00000010)) { output.writeInt64(5, value_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, transactionOutPointHash_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeUInt32Size(2, transactionOutPointIndex_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(3, scriptBytes_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { size += com.google.protobuf.CodedOutputStream .computeUInt32Size(4, sequence_); } if (((bitField0_ & 0x00000010) == 0x00000010)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(5, value_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.TransactionInput parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.TransactionInput parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionInput parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.TransactionInput parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionInput parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.TransactionInput parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionInput parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.TransactionInput parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionInput parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.TransactionInput parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.TransactionInput prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.TransactionInput} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.TransactionInput) org.bitcoinj.wallet.Protos.TransactionInputOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionInput_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionInput_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.TransactionInput.class, org.bitcoinj.wallet.Protos.TransactionInput.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.TransactionInput.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); transactionOutPointHash_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); transactionOutPointIndex_ = 0; bitField0_ = (bitField0_ & ~0x00000002); scriptBytes_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000004); sequence_ = 0; bitField0_ = (bitField0_ & ~0x00000008); value_ = 0L; bitField0_ = (bitField0_ & ~0x00000010); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionInput_descriptor; } public org.bitcoinj.wallet.Protos.TransactionInput getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.TransactionInput.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.TransactionInput build() { org.bitcoinj.wallet.Protos.TransactionInput result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.TransactionInput buildPartial() { org.bitcoinj.wallet.Protos.TransactionInput result = new org.bitcoinj.wallet.Protos.TransactionInput(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.transactionOutPointHash_ = transactionOutPointHash_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.transactionOutPointIndex_ = transactionOutPointIndex_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } result.scriptBytes_ = scriptBytes_; if (((from_bitField0_ & 0x00000008) == 0x00000008)) { to_bitField0_ |= 0x00000008; } result.sequence_ = sequence_; if (((from_bitField0_ & 0x00000010) == 0x00000010)) { to_bitField0_ |= 0x00000010; } result.value_ = value_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.TransactionInput) { return mergeFrom((org.bitcoinj.wallet.Protos.TransactionInput)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.TransactionInput other) { if (other == org.bitcoinj.wallet.Protos.TransactionInput.getDefaultInstance()) return this; if (other.hasTransactionOutPointHash()) { setTransactionOutPointHash(other.getTransactionOutPointHash()); } if (other.hasTransactionOutPointIndex()) { setTransactionOutPointIndex(other.getTransactionOutPointIndex()); } if (other.hasScriptBytes()) { setScriptBytes(other.getScriptBytes()); } if (other.hasSequence()) { setSequence(other.getSequence()); } if (other.hasValue()) { setValue(other.getValue()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasTransactionOutPointHash()) { return false; } if (!hasTransactionOutPointIndex()) { return false; } if (!hasScriptBytes()) { return false; } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.TransactionInput parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.TransactionInput) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private com.google.protobuf.ByteString transactionOutPointHash_ = com.google.protobuf.ByteString.EMPTY; /** * <code>required bytes transaction_out_point_hash = 1;</code> * * <pre> * Hash of the transaction this input is using. * </pre> */ public boolean hasTransactionOutPointHash() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required bytes transaction_out_point_hash = 1;</code> * * <pre> * Hash of the transaction this input is using. * </pre> */ public com.google.protobuf.ByteString getTransactionOutPointHash() { return transactionOutPointHash_; } /** * <code>required bytes transaction_out_point_hash = 1;</code> * * <pre> * Hash of the transaction this input is using. * </pre> */ public Builder setTransactionOutPointHash(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; transactionOutPointHash_ = value; onChanged(); return this; } /** * <code>required bytes transaction_out_point_hash = 1;</code> * * <pre> * Hash of the transaction this input is using. * </pre> */ public Builder clearTransactionOutPointHash() { bitField0_ = (bitField0_ & ~0x00000001); transactionOutPointHash_ = getDefaultInstance().getTransactionOutPointHash(); onChanged(); return this; } private int transactionOutPointIndex_ ; /** * <code>required uint32 transaction_out_point_index = 2;</code> * * <pre> * Index of transaction output used by this input. * </pre> */ public boolean hasTransactionOutPointIndex() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required uint32 transaction_out_point_index = 2;</code> * * <pre> * Index of transaction output used by this input. * </pre> */ public int getTransactionOutPointIndex() { return transactionOutPointIndex_; } /** * <code>required uint32 transaction_out_point_index = 2;</code> * * <pre> * Index of transaction output used by this input. * </pre> */ public Builder setTransactionOutPointIndex(int value) { bitField0_ |= 0x00000002; transactionOutPointIndex_ = value; onChanged(); return this; } /** * <code>required uint32 transaction_out_point_index = 2;</code> * * <pre> * Index of transaction output used by this input. * </pre> */ public Builder clearTransactionOutPointIndex() { bitField0_ = (bitField0_ & ~0x00000002); transactionOutPointIndex_ = 0; onChanged(); return this; } private com.google.protobuf.ByteString scriptBytes_ = com.google.protobuf.ByteString.EMPTY; /** * <code>required bytes script_bytes = 3;</code> * * <pre> * Script that contains the signatures/pubkeys. * </pre> */ public boolean hasScriptBytes() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>required bytes script_bytes = 3;</code> * * <pre> * Script that contains the signatures/pubkeys. * </pre> */ public com.google.protobuf.ByteString getScriptBytes() { return scriptBytes_; } /** * <code>required bytes script_bytes = 3;</code> * * <pre> * Script that contains the signatures/pubkeys. * </pre> */ public Builder setScriptBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000004; scriptBytes_ = value; onChanged(); return this; } /** * <code>required bytes script_bytes = 3;</code> * * <pre> * Script that contains the signatures/pubkeys. * </pre> */ public Builder clearScriptBytes() { bitField0_ = (bitField0_ & ~0x00000004); scriptBytes_ = getDefaultInstance().getScriptBytes(); onChanged(); return this; } private int sequence_ ; /** * <code>optional uint32 sequence = 4;</code> * * <pre> * Sequence number. * </pre> */ public boolean hasSequence() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional uint32 sequence = 4;</code> * * <pre> * Sequence number. * </pre> */ public int getSequence() { return sequence_; } /** * <code>optional uint32 sequence = 4;</code> * * <pre> * Sequence number. * </pre> */ public Builder setSequence(int value) { bitField0_ |= 0x00000008; sequence_ = value; onChanged(); return this; } /** * <code>optional uint32 sequence = 4;</code> * * <pre> * Sequence number. * </pre> */ public Builder clearSequence() { bitField0_ = (bitField0_ & ~0x00000008); sequence_ = 0; onChanged(); return this; } private long value_ ; /** * <code>optional int64 value = 5;</code> * * <pre> * Value of connected output, if known * </pre> */ public boolean hasValue() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * <code>optional int64 value = 5;</code> * * <pre> * Value of connected output, if known * </pre> */ public long getValue() { return value_; } /** * <code>optional int64 value = 5;</code> * * <pre> * Value of connected output, if known * </pre> */ public Builder setValue(long value) { bitField0_ |= 0x00000010; value_ = value; onChanged(); return this; } /** * <code>optional int64 value = 5;</code> * * <pre> * Value of connected output, if known * </pre> */ public Builder clearValue() { bitField0_ = (bitField0_ & ~0x00000010); value_ = 0L; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.TransactionInput) } static { defaultInstance = new TransactionInput(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.TransactionInput) } public interface TransactionOutputOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.TransactionOutput) com.google.protobuf.MessageOrBuilder { /** * <code>required int64 value = 1;</code> */ boolean hasValue(); /** * <code>required int64 value = 1;</code> */ long getValue(); /** * <code>required bytes script_bytes = 2;</code> * * <pre> * script of transaction output * </pre> */ boolean hasScriptBytes(); /** * <code>required bytes script_bytes = 2;</code> * * <pre> * script of transaction output * </pre> */ com.google.protobuf.ByteString getScriptBytes(); /** * <code>optional bytes spent_by_transaction_hash = 3;</code> * * <pre> * If spent, the hash of the transaction doing the spend. * </pre> */ boolean hasSpentByTransactionHash(); /** * <code>optional bytes spent_by_transaction_hash = 3;</code> * * <pre> * If spent, the hash of the transaction doing the spend. * </pre> */ com.google.protobuf.ByteString getSpentByTransactionHash(); /** * <code>optional int32 spent_by_transaction_index = 4;</code> * * <pre> * If spent, the index of the transaction input of the transaction doing the spend. * </pre> */ boolean hasSpentByTransactionIndex(); /** * <code>optional int32 spent_by_transaction_index = 4;</code> * * <pre> * If spent, the index of the transaction input of the transaction doing the spend. * </pre> */ int getSpentByTransactionIndex(); } /** * Protobuf type {@code wallet.TransactionOutput} */ public static final class TransactionOutput extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.TransactionOutput) TransactionOutputOrBuilder { // Use TransactionOutput.newBuilder() to construct. private TransactionOutput(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private TransactionOutput(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final TransactionOutput defaultInstance; public static TransactionOutput getDefaultInstance() { return defaultInstance; } public TransactionOutput getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private TransactionOutput( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 8: { bitField0_ |= 0x00000001; value_ = input.readInt64(); break; } case 18: { bitField0_ |= 0x00000002; scriptBytes_ = input.readBytes(); break; } case 26: { bitField0_ |= 0x00000004; spentByTransactionHash_ = input.readBytes(); break; } case 32: { bitField0_ |= 0x00000008; spentByTransactionIndex_ = input.readInt32(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionOutput_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionOutput_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.TransactionOutput.class, org.bitcoinj.wallet.Protos.TransactionOutput.Builder.class); } public static com.google.protobuf.Parser<TransactionOutput> PARSER = new com.google.protobuf.AbstractParser<TransactionOutput>() { public TransactionOutput parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new TransactionOutput(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<TransactionOutput> getParserForType() { return PARSER; } private int bitField0_; public static final int VALUE_FIELD_NUMBER = 1; private long value_; /** * <code>required int64 value = 1;</code> */ public boolean hasValue() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required int64 value = 1;</code> */ public long getValue() { return value_; } public static final int SCRIPT_BYTES_FIELD_NUMBER = 2; private com.google.protobuf.ByteString scriptBytes_; /** * <code>required bytes script_bytes = 2;</code> * * <pre> * script of transaction output * </pre> */ public boolean hasScriptBytes() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required bytes script_bytes = 2;</code> * * <pre> * script of transaction output * </pre> */ public com.google.protobuf.ByteString getScriptBytes() { return scriptBytes_; } public static final int SPENT_BY_TRANSACTION_HASH_FIELD_NUMBER = 3; private com.google.protobuf.ByteString spentByTransactionHash_; /** * <code>optional bytes spent_by_transaction_hash = 3;</code> * * <pre> * If spent, the hash of the transaction doing the spend. * </pre> */ public boolean hasSpentByTransactionHash() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional bytes spent_by_transaction_hash = 3;</code> * * <pre> * If spent, the hash of the transaction doing the spend. * </pre> */ public com.google.protobuf.ByteString getSpentByTransactionHash() { return spentByTransactionHash_; } public static final int SPENT_BY_TRANSACTION_INDEX_FIELD_NUMBER = 4; private int spentByTransactionIndex_; /** * <code>optional int32 spent_by_transaction_index = 4;</code> * * <pre> * If spent, the index of the transaction input of the transaction doing the spend. * </pre> */ public boolean hasSpentByTransactionIndex() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional int32 spent_by_transaction_index = 4;</code> * * <pre> * If spent, the index of the transaction input of the transaction doing the spend. * </pre> */ public int getSpentByTransactionIndex() { return spentByTransactionIndex_; } private void initFields() { value_ = 0L; scriptBytes_ = com.google.protobuf.ByteString.EMPTY; spentByTransactionHash_ = com.google.protobuf.ByteString.EMPTY; spentByTransactionIndex_ = 0; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasValue()) { memoizedIsInitialized = 0; return false; } if (!hasScriptBytes()) { memoizedIsInitialized = 0; return false; } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeInt64(1, value_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeBytes(2, scriptBytes_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeBytes(3, spentByTransactionHash_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { output.writeInt32(4, spentByTransactionIndex_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(1, value_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(2, scriptBytes_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(3, spentByTransactionHash_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { size += com.google.protobuf.CodedOutputStream .computeInt32Size(4, spentByTransactionIndex_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.TransactionOutput parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.TransactionOutput parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionOutput parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.TransactionOutput parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionOutput parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.TransactionOutput parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionOutput parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.TransactionOutput parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionOutput parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.TransactionOutput parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.TransactionOutput prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.TransactionOutput} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.TransactionOutput) org.bitcoinj.wallet.Protos.TransactionOutputOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionOutput_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionOutput_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.TransactionOutput.class, org.bitcoinj.wallet.Protos.TransactionOutput.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.TransactionOutput.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); value_ = 0L; bitField0_ = (bitField0_ & ~0x00000001); scriptBytes_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000002); spentByTransactionHash_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000004); spentByTransactionIndex_ = 0; bitField0_ = (bitField0_ & ~0x00000008); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionOutput_descriptor; } public org.bitcoinj.wallet.Protos.TransactionOutput getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.TransactionOutput.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.TransactionOutput build() { org.bitcoinj.wallet.Protos.TransactionOutput result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.TransactionOutput buildPartial() { org.bitcoinj.wallet.Protos.TransactionOutput result = new org.bitcoinj.wallet.Protos.TransactionOutput(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.value_ = value_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.scriptBytes_ = scriptBytes_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } result.spentByTransactionHash_ = spentByTransactionHash_; if (((from_bitField0_ & 0x00000008) == 0x00000008)) { to_bitField0_ |= 0x00000008; } result.spentByTransactionIndex_ = spentByTransactionIndex_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.TransactionOutput) { return mergeFrom((org.bitcoinj.wallet.Protos.TransactionOutput)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.TransactionOutput other) { if (other == org.bitcoinj.wallet.Protos.TransactionOutput.getDefaultInstance()) return this; if (other.hasValue()) { setValue(other.getValue()); } if (other.hasScriptBytes()) { setScriptBytes(other.getScriptBytes()); } if (other.hasSpentByTransactionHash()) { setSpentByTransactionHash(other.getSpentByTransactionHash()); } if (other.hasSpentByTransactionIndex()) { setSpentByTransactionIndex(other.getSpentByTransactionIndex()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasValue()) { return false; } if (!hasScriptBytes()) { return false; } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.TransactionOutput parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.TransactionOutput) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private long value_ ; /** * <code>required int64 value = 1;</code> */ public boolean hasValue() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required int64 value = 1;</code> */ public long getValue() { return value_; } /** * <code>required int64 value = 1;</code> */ public Builder setValue(long value) { bitField0_ |= 0x00000001; value_ = value; onChanged(); return this; } /** * <code>required int64 value = 1;</code> */ public Builder clearValue() { bitField0_ = (bitField0_ & ~0x00000001); value_ = 0L; onChanged(); return this; } private com.google.protobuf.ByteString scriptBytes_ = com.google.protobuf.ByteString.EMPTY; /** * <code>required bytes script_bytes = 2;</code> * * <pre> * script of transaction output * </pre> */ public boolean hasScriptBytes() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required bytes script_bytes = 2;</code> * * <pre> * script of transaction output * </pre> */ public com.google.protobuf.ByteString getScriptBytes() { return scriptBytes_; } /** * <code>required bytes script_bytes = 2;</code> * * <pre> * script of transaction output * </pre> */ public Builder setScriptBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000002; scriptBytes_ = value; onChanged(); return this; } /** * <code>required bytes script_bytes = 2;</code> * * <pre> * script of transaction output * </pre> */ public Builder clearScriptBytes() { bitField0_ = (bitField0_ & ~0x00000002); scriptBytes_ = getDefaultInstance().getScriptBytes(); onChanged(); return this; } private com.google.protobuf.ByteString spentByTransactionHash_ = com.google.protobuf.ByteString.EMPTY; /** * <code>optional bytes spent_by_transaction_hash = 3;</code> * * <pre> * If spent, the hash of the transaction doing the spend. * </pre> */ public boolean hasSpentByTransactionHash() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional bytes spent_by_transaction_hash = 3;</code> * * <pre> * If spent, the hash of the transaction doing the spend. * </pre> */ public com.google.protobuf.ByteString getSpentByTransactionHash() { return spentByTransactionHash_; } /** * <code>optional bytes spent_by_transaction_hash = 3;</code> * * <pre> * If spent, the hash of the transaction doing the spend. * </pre> */ public Builder setSpentByTransactionHash(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000004; spentByTransactionHash_ = value; onChanged(); return this; } /** * <code>optional bytes spent_by_transaction_hash = 3;</code> * * <pre> * If spent, the hash of the transaction doing the spend. * </pre> */ public Builder clearSpentByTransactionHash() { bitField0_ = (bitField0_ & ~0x00000004); spentByTransactionHash_ = getDefaultInstance().getSpentByTransactionHash(); onChanged(); return this; } private int spentByTransactionIndex_ ; /** * <code>optional int32 spent_by_transaction_index = 4;</code> * * <pre> * If spent, the index of the transaction input of the transaction doing the spend. * </pre> */ public boolean hasSpentByTransactionIndex() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional int32 spent_by_transaction_index = 4;</code> * * <pre> * If spent, the index of the transaction input of the transaction doing the spend. * </pre> */ public int getSpentByTransactionIndex() { return spentByTransactionIndex_; } /** * <code>optional int32 spent_by_transaction_index = 4;</code> * * <pre> * If spent, the index of the transaction input of the transaction doing the spend. * </pre> */ public Builder setSpentByTransactionIndex(int value) { bitField0_ |= 0x00000008; spentByTransactionIndex_ = value; onChanged(); return this; } /** * <code>optional int32 spent_by_transaction_index = 4;</code> * * <pre> * If spent, the index of the transaction input of the transaction doing the spend. * </pre> */ public Builder clearSpentByTransactionIndex() { bitField0_ = (bitField0_ & ~0x00000008); spentByTransactionIndex_ = 0; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.TransactionOutput) } static { defaultInstance = new TransactionOutput(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.TransactionOutput) } public interface TransactionConfidenceOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.TransactionConfidence) com.google.protobuf.MessageOrBuilder { /** * <code>optional .wallet.TransactionConfidence.Type type = 1;</code> * * <pre> * This is optional in case we add confidence types to prevent parse errors - backwards compatible. * </pre> */ boolean hasType(); /** * <code>optional .wallet.TransactionConfidence.Type type = 1;</code> * * <pre> * This is optional in case we add confidence types to prevent parse errors - backwards compatible. * </pre> */ org.bitcoinj.wallet.Protos.TransactionConfidence.Type getType(); /** * <code>optional int32 appeared_at_height = 2;</code> * * <pre> * If type == BUILDING then this is the chain height at which the transaction was included. * </pre> */ boolean hasAppearedAtHeight(); /** * <code>optional int32 appeared_at_height = 2;</code> * * <pre> * If type == BUILDING then this is the chain height at which the transaction was included. * </pre> */ int getAppearedAtHeight(); /** * <code>optional bytes overriding_transaction = 3;</code> * * <pre> * If set, hash of the transaction that double spent this one into oblivion. A transaction can be double spent by * multiple transactions in the case of several inputs being re-spent by several transactions but we don't * bother to track them all, just the first. This only makes sense if type = DEAD. * </pre> */ boolean hasOverridingTransaction(); /** * <code>optional bytes overriding_transaction = 3;</code> * * <pre> * If set, hash of the transaction that double spent this one into oblivion. A transaction can be double spent by * multiple transactions in the case of several inputs being re-spent by several transactions but we don't * bother to track them all, just the first. This only makes sense if type = DEAD. * </pre> */ com.google.protobuf.ByteString getOverridingTransaction(); /** * <code>optional int32 depth = 4;</code> * * <pre> * If type == BUILDING then this is the depth of the transaction in the blockchain. * Zero confirmations: depth = 0, one confirmation: depth = 1 etc. * </pre> */ boolean hasDepth(); /** * <code>optional int32 depth = 4;</code> * * <pre> * If type == BUILDING then this is the depth of the transaction in the blockchain. * Zero confirmations: depth = 0, one confirmation: depth = 1 etc. * </pre> */ int getDepth(); /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ java.util.List<org.bitcoinj.wallet.Protos.PeerAddress> getBroadcastByList(); /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ org.bitcoinj.wallet.Protos.PeerAddress getBroadcastBy(int index); /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ int getBroadcastByCount(); /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ java.util.List<? extends org.bitcoinj.wallet.Protos.PeerAddressOrBuilder> getBroadcastByOrBuilderList(); /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ org.bitcoinj.wallet.Protos.PeerAddressOrBuilder getBroadcastByOrBuilder( int index); /** * <code>optional int64 last_broadcasted_at = 8;</code> * * <pre> * Millis since epoch the transaction was last announced to us. * </pre> */ boolean hasLastBroadcastedAt(); /** * <code>optional int64 last_broadcasted_at = 8;</code> * * <pre> * Millis since epoch the transaction was last announced to us. * </pre> */ long getLastBroadcastedAt(); /** * <code>optional .wallet.TransactionConfidence.Source source = 7;</code> */ boolean hasSource(); /** * <code>optional .wallet.TransactionConfidence.Source source = 7;</code> */ org.bitcoinj.wallet.Protos.TransactionConfidence.Source getSource(); } /** * Protobuf type {@code wallet.TransactionConfidence} * * <pre> ** * A description of the confidence we have that a transaction cannot be reversed in the future. * Parsing should be lenient, since this could change for different applications yet we should * maintain backward compatibility. * </pre> */ public static final class TransactionConfidence extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.TransactionConfidence) TransactionConfidenceOrBuilder { // Use TransactionConfidence.newBuilder() to construct. private TransactionConfidence(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private TransactionConfidence(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final TransactionConfidence defaultInstance; public static TransactionConfidence getDefaultInstance() { return defaultInstance; } public TransactionConfidence getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private TransactionConfidence( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 8: { int rawValue = input.readEnum(); org.bitcoinj.wallet.Protos.TransactionConfidence.Type value = org.bitcoinj.wallet.Protos.TransactionConfidence.Type.valueOf(rawValue); if (value == null) { unknownFields.mergeVarintField(1, rawValue); } else { bitField0_ |= 0x00000001; type_ = value; } break; } case 16: { bitField0_ |= 0x00000002; appearedAtHeight_ = input.readInt32(); break; } case 26: { bitField0_ |= 0x00000004; overridingTransaction_ = input.readBytes(); break; } case 32: { bitField0_ |= 0x00000008; depth_ = input.readInt32(); break; } case 50: { if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) { broadcastBy_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.PeerAddress>(); mutable_bitField0_ |= 0x00000010; } broadcastBy_.add(input.readMessage(org.bitcoinj.wallet.Protos.PeerAddress.PARSER, extensionRegistry)); break; } case 56: { int rawValue = input.readEnum(); org.bitcoinj.wallet.Protos.TransactionConfidence.Source value = org.bitcoinj.wallet.Protos.TransactionConfidence.Source.valueOf(rawValue); if (value == null) { unknownFields.mergeVarintField(7, rawValue); } else { bitField0_ |= 0x00000020; source_ = value; } break; } case 64: { bitField0_ |= 0x00000010; lastBroadcastedAt_ = input.readInt64(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) { broadcastBy_ = java.util.Collections.unmodifiableList(broadcastBy_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionConfidence_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionConfidence_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.TransactionConfidence.class, org.bitcoinj.wallet.Protos.TransactionConfidence.Builder.class); } public static com.google.protobuf.Parser<TransactionConfidence> PARSER = new com.google.protobuf.AbstractParser<TransactionConfidence>() { public TransactionConfidence parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new TransactionConfidence(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<TransactionConfidence> getParserForType() { return PARSER; } /** * Protobuf enum {@code wallet.TransactionConfidence.Type} */ public enum Type implements com.google.protobuf.ProtocolMessageEnum { /** * <code>UNKNOWN = 0;</code> * * <pre> * See TransactionConfidence.java for a more thorough explanation of these types. * </pre> */ UNKNOWN(0, 0), /** * <code>BUILDING = 1;</code> * * <pre> * In best chain. If and only if appeared_at_height is present. * </pre> */ BUILDING(1, 1), /** * <code>PENDING = 2;</code> * * <pre> * Unconfirmed and sitting in the networks memory pools, waiting to be included in the chain. * </pre> */ PENDING(2, 2), /** * <code>NOT_IN_BEST_CHAIN = 3;</code> * * <pre> * Deprecated: equivalent to PENDING. * </pre> */ NOT_IN_BEST_CHAIN(3, 3), /** * <code>DEAD = 4;</code> * * <pre> * Either if overriding_transaction is present or transaction is dead coinbase. * </pre> */ DEAD(4, 4), /** * <code>IN_CONFLICT = 5;</code> * * <pre> * There is another transaction spending one of this transaction inputs. * </pre> */ IN_CONFLICT(5, 5), ; /** * <code>UNKNOWN = 0;</code> * * <pre> * See TransactionConfidence.java for a more thorough explanation of these types. * </pre> */ public static final int UNKNOWN_VALUE = 0; /** * <code>BUILDING = 1;</code> * * <pre> * In best chain. If and only if appeared_at_height is present. * </pre> */ public static final int BUILDING_VALUE = 1; /** * <code>PENDING = 2;</code> * * <pre> * Unconfirmed and sitting in the networks memory pools, waiting to be included in the chain. * </pre> */ public static final int PENDING_VALUE = 2; /** * <code>NOT_IN_BEST_CHAIN = 3;</code> * * <pre> * Deprecated: equivalent to PENDING. * </pre> */ public static final int NOT_IN_BEST_CHAIN_VALUE = 3; /** * <code>DEAD = 4;</code> * * <pre> * Either if overriding_transaction is present or transaction is dead coinbase. * </pre> */ public static final int DEAD_VALUE = 4; /** * <code>IN_CONFLICT = 5;</code> * * <pre> * There is another transaction spending one of this transaction inputs. * </pre> */ public static final int IN_CONFLICT_VALUE = 5; public final int getNumber() { return value; } public static Type valueOf(int value) { switch (value) { case 0: return UNKNOWN; case 1: return BUILDING; case 2: return PENDING; case 3: return NOT_IN_BEST_CHAIN; case 4: return DEAD; case 5: return IN_CONFLICT; default: return null; } } public static com.google.protobuf.Internal.EnumLiteMap<Type> internalGetValueMap() { return internalValueMap; } private static com.google.protobuf.Internal.EnumLiteMap<Type> internalValueMap = new com.google.protobuf.Internal.EnumLiteMap<Type>() { public Type findValueByNumber(int number) { return Type.valueOf(number); } }; public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { return getDescriptor().getValues().get(index); } public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { return getDescriptor(); } public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { return org.bitcoinj.wallet.Protos.TransactionConfidence.getDescriptor().getEnumTypes().get(0); } private static final Type[] VALUES = values(); public static Type valueOf( com.google.protobuf.Descriptors.EnumValueDescriptor desc) { if (desc.getType() != getDescriptor()) { throw new java.lang.IllegalArgumentException( "EnumValueDescriptor is not for this type."); } return VALUES[desc.getIndex()]; } private final int index; private final int value; private Type(int index, int value) { this.index = index; this.value = value; } // @@protoc_insertion_point(enum_scope:wallet.TransactionConfidence.Type) } /** * Protobuf enum {@code wallet.TransactionConfidence.Source} * * <pre> * Where did we get this transaction from? Knowing the source may help us to risk analyze pending transactions. * </pre> */ public enum Source implements com.google.protobuf.ProtocolMessageEnum { /** * <code>SOURCE_UNKNOWN = 0;</code> * * <pre> * We don't know where it came from, or this is a wallet from the future. * </pre> */ SOURCE_UNKNOWN(0, 0), /** * <code>SOURCE_NETWORK = 1;</code> * * <pre> * We received it from a network broadcast. This is the normal way to get payments. * </pre> */ SOURCE_NETWORK(1, 1), /** * <code>SOURCE_SELF = 2;</code> * * <pre> * We made it ourselves, so we know it should be valid. * </pre> */ SOURCE_SELF(2, 2), ; /** * <code>SOURCE_UNKNOWN = 0;</code> * * <pre> * We don't know where it came from, or this is a wallet from the future. * </pre> */ public static final int SOURCE_UNKNOWN_VALUE = 0; /** * <code>SOURCE_NETWORK = 1;</code> * * <pre> * We received it from a network broadcast. This is the normal way to get payments. * </pre> */ public static final int SOURCE_NETWORK_VALUE = 1; /** * <code>SOURCE_SELF = 2;</code> * * <pre> * We made it ourselves, so we know it should be valid. * </pre> */ public static final int SOURCE_SELF_VALUE = 2; public final int getNumber() { return value; } public static Source valueOf(int value) { switch (value) { case 0: return SOURCE_UNKNOWN; case 1: return SOURCE_NETWORK; case 2: return SOURCE_SELF; default: return null; } } public static com.google.protobuf.Internal.EnumLiteMap<Source> internalGetValueMap() { return internalValueMap; } private static com.google.protobuf.Internal.EnumLiteMap<Source> internalValueMap = new com.google.protobuf.Internal.EnumLiteMap<Source>() { public Source findValueByNumber(int number) { return Source.valueOf(number); } }; public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { return getDescriptor().getValues().get(index); } public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { return getDescriptor(); } public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { return org.bitcoinj.wallet.Protos.TransactionConfidence.getDescriptor().getEnumTypes().get(1); } private static final Source[] VALUES = values(); public static Source valueOf( com.google.protobuf.Descriptors.EnumValueDescriptor desc) { if (desc.getType() != getDescriptor()) { throw new java.lang.IllegalArgumentException( "EnumValueDescriptor is not for this type."); } return VALUES[desc.getIndex()]; } private final int index; private final int value; private Source(int index, int value) { this.index = index; this.value = value; } // @@protoc_insertion_point(enum_scope:wallet.TransactionConfidence.Source) } private int bitField0_; public static final int TYPE_FIELD_NUMBER = 1; private org.bitcoinj.wallet.Protos.TransactionConfidence.Type type_; /** * <code>optional .wallet.TransactionConfidence.Type type = 1;</code> * * <pre> * This is optional in case we add confidence types to prevent parse errors - backwards compatible. * </pre> */ public boolean hasType() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>optional .wallet.TransactionConfidence.Type type = 1;</code> * * <pre> * This is optional in case we add confidence types to prevent parse errors - backwards compatible. * </pre> */ public org.bitcoinj.wallet.Protos.TransactionConfidence.Type getType() { return type_; } public static final int APPEARED_AT_HEIGHT_FIELD_NUMBER = 2; private int appearedAtHeight_; /** * <code>optional int32 appeared_at_height = 2;</code> * * <pre> * If type == BUILDING then this is the chain height at which the transaction was included. * </pre> */ public boolean hasAppearedAtHeight() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>optional int32 appeared_at_height = 2;</code> * * <pre> * If type == BUILDING then this is the chain height at which the transaction was included. * </pre> */ public int getAppearedAtHeight() { return appearedAtHeight_; } public static final int OVERRIDING_TRANSACTION_FIELD_NUMBER = 3; private com.google.protobuf.ByteString overridingTransaction_; /** * <code>optional bytes overriding_transaction = 3;</code> * * <pre> * If set, hash of the transaction that double spent this one into oblivion. A transaction can be double spent by * multiple transactions in the case of several inputs being re-spent by several transactions but we don't * bother to track them all, just the first. This only makes sense if type = DEAD. * </pre> */ public boolean hasOverridingTransaction() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional bytes overriding_transaction = 3;</code> * * <pre> * If set, hash of the transaction that double spent this one into oblivion. A transaction can be double spent by * multiple transactions in the case of several inputs being re-spent by several transactions but we don't * bother to track them all, just the first. This only makes sense if type = DEAD. * </pre> */ public com.google.protobuf.ByteString getOverridingTransaction() { return overridingTransaction_; } public static final int DEPTH_FIELD_NUMBER = 4; private int depth_; /** * <code>optional int32 depth = 4;</code> * * <pre> * If type == BUILDING then this is the depth of the transaction in the blockchain. * Zero confirmations: depth = 0, one confirmation: depth = 1 etc. * </pre> */ public boolean hasDepth() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional int32 depth = 4;</code> * * <pre> * If type == BUILDING then this is the depth of the transaction in the blockchain. * Zero confirmations: depth = 0, one confirmation: depth = 1 etc. * </pre> */ public int getDepth() { return depth_; } public static final int BROADCAST_BY_FIELD_NUMBER = 6; private java.util.List<org.bitcoinj.wallet.Protos.PeerAddress> broadcastBy_; /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.PeerAddress> getBroadcastByList() { return broadcastBy_; } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.PeerAddressOrBuilder> getBroadcastByOrBuilderList() { return broadcastBy_; } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public int getBroadcastByCount() { return broadcastBy_.size(); } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public org.bitcoinj.wallet.Protos.PeerAddress getBroadcastBy(int index) { return broadcastBy_.get(index); } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public org.bitcoinj.wallet.Protos.PeerAddressOrBuilder getBroadcastByOrBuilder( int index) { return broadcastBy_.get(index); } public static final int LAST_BROADCASTED_AT_FIELD_NUMBER = 8; private long lastBroadcastedAt_; /** * <code>optional int64 last_broadcasted_at = 8;</code> * * <pre> * Millis since epoch the transaction was last announced to us. * </pre> */ public boolean hasLastBroadcastedAt() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * <code>optional int64 last_broadcasted_at = 8;</code> * * <pre> * Millis since epoch the transaction was last announced to us. * </pre> */ public long getLastBroadcastedAt() { return lastBroadcastedAt_; } public static final int SOURCE_FIELD_NUMBER = 7; private org.bitcoinj.wallet.Protos.TransactionConfidence.Source source_; /** * <code>optional .wallet.TransactionConfidence.Source source = 7;</code> */ public boolean hasSource() { return ((bitField0_ & 0x00000020) == 0x00000020); } /** * <code>optional .wallet.TransactionConfidence.Source source = 7;</code> */ public org.bitcoinj.wallet.Protos.TransactionConfidence.Source getSource() { return source_; } private void initFields() { type_ = org.bitcoinj.wallet.Protos.TransactionConfidence.Type.UNKNOWN; appearedAtHeight_ = 0; overridingTransaction_ = com.google.protobuf.ByteString.EMPTY; depth_ = 0; broadcastBy_ = java.util.Collections.emptyList(); lastBroadcastedAt_ = 0L; source_ = org.bitcoinj.wallet.Protos.TransactionConfidence.Source.SOURCE_UNKNOWN; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; for (int i = 0; i < getBroadcastByCount(); i++) { if (!getBroadcastBy(i).isInitialized()) { memoizedIsInitialized = 0; return false; } } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeEnum(1, type_.getNumber()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeInt32(2, appearedAtHeight_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeBytes(3, overridingTransaction_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { output.writeInt32(4, depth_); } for (int i = 0; i < broadcastBy_.size(); i++) { output.writeMessage(6, broadcastBy_.get(i)); } if (((bitField0_ & 0x00000020) == 0x00000020)) { output.writeEnum(7, source_.getNumber()); } if (((bitField0_ & 0x00000010) == 0x00000010)) { output.writeInt64(8, lastBroadcastedAt_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(1, type_.getNumber()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeInt32Size(2, appearedAtHeight_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(3, overridingTransaction_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { size += com.google.protobuf.CodedOutputStream .computeInt32Size(4, depth_); } for (int i = 0; i < broadcastBy_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(6, broadcastBy_.get(i)); } if (((bitField0_ & 0x00000020) == 0x00000020)) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(7, source_.getNumber()); } if (((bitField0_ & 0x00000010) == 0x00000010)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(8, lastBroadcastedAt_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.TransactionConfidence parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.TransactionConfidence parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionConfidence parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.TransactionConfidence parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionConfidence parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.TransactionConfidence parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionConfidence parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.TransactionConfidence parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionConfidence parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.TransactionConfidence parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.TransactionConfidence prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.TransactionConfidence} * * <pre> ** * A description of the confidence we have that a transaction cannot be reversed in the future. * Parsing should be lenient, since this could change for different applications yet we should * maintain backward compatibility. * </pre> */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.TransactionConfidence) org.bitcoinj.wallet.Protos.TransactionConfidenceOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionConfidence_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionConfidence_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.TransactionConfidence.class, org.bitcoinj.wallet.Protos.TransactionConfidence.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.TransactionConfidence.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { getBroadcastByFieldBuilder(); } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); type_ = org.bitcoinj.wallet.Protos.TransactionConfidence.Type.UNKNOWN; bitField0_ = (bitField0_ & ~0x00000001); appearedAtHeight_ = 0; bitField0_ = (bitField0_ & ~0x00000002); overridingTransaction_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000004); depth_ = 0; bitField0_ = (bitField0_ & ~0x00000008); if (broadcastByBuilder_ == null) { broadcastBy_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000010); } else { broadcastByBuilder_.clear(); } lastBroadcastedAt_ = 0L; bitField0_ = (bitField0_ & ~0x00000020); source_ = org.bitcoinj.wallet.Protos.TransactionConfidence.Source.SOURCE_UNKNOWN; bitField0_ = (bitField0_ & ~0x00000040); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionConfidence_descriptor; } public org.bitcoinj.wallet.Protos.TransactionConfidence getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.TransactionConfidence.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.TransactionConfidence build() { org.bitcoinj.wallet.Protos.TransactionConfidence result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.TransactionConfidence buildPartial() { org.bitcoinj.wallet.Protos.TransactionConfidence result = new org.bitcoinj.wallet.Protos.TransactionConfidence(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.type_ = type_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.appearedAtHeight_ = appearedAtHeight_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } result.overridingTransaction_ = overridingTransaction_; if (((from_bitField0_ & 0x00000008) == 0x00000008)) { to_bitField0_ |= 0x00000008; } result.depth_ = depth_; if (broadcastByBuilder_ == null) { if (((bitField0_ & 0x00000010) == 0x00000010)) { broadcastBy_ = java.util.Collections.unmodifiableList(broadcastBy_); bitField0_ = (bitField0_ & ~0x00000010); } result.broadcastBy_ = broadcastBy_; } else { result.broadcastBy_ = broadcastByBuilder_.build(); } if (((from_bitField0_ & 0x00000020) == 0x00000020)) { to_bitField0_ |= 0x00000010; } result.lastBroadcastedAt_ = lastBroadcastedAt_; if (((from_bitField0_ & 0x00000040) == 0x00000040)) { to_bitField0_ |= 0x00000020; } result.source_ = source_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.TransactionConfidence) { return mergeFrom((org.bitcoinj.wallet.Protos.TransactionConfidence)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.TransactionConfidence other) { if (other == org.bitcoinj.wallet.Protos.TransactionConfidence.getDefaultInstance()) return this; if (other.hasType()) { setType(other.getType()); } if (other.hasAppearedAtHeight()) { setAppearedAtHeight(other.getAppearedAtHeight()); } if (other.hasOverridingTransaction()) { setOverridingTransaction(other.getOverridingTransaction()); } if (other.hasDepth()) { setDepth(other.getDepth()); } if (broadcastByBuilder_ == null) { if (!other.broadcastBy_.isEmpty()) { if (broadcastBy_.isEmpty()) { broadcastBy_ = other.broadcastBy_; bitField0_ = (bitField0_ & ~0x00000010); } else { ensureBroadcastByIsMutable(); broadcastBy_.addAll(other.broadcastBy_); } onChanged(); } } else { if (!other.broadcastBy_.isEmpty()) { if (broadcastByBuilder_.isEmpty()) { broadcastByBuilder_.dispose(); broadcastByBuilder_ = null; broadcastBy_ = other.broadcastBy_; bitField0_ = (bitField0_ & ~0x00000010); broadcastByBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getBroadcastByFieldBuilder() : null; } else { broadcastByBuilder_.addAllMessages(other.broadcastBy_); } } } if (other.hasLastBroadcastedAt()) { setLastBroadcastedAt(other.getLastBroadcastedAt()); } if (other.hasSource()) { setSource(other.getSource()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { for (int i = 0; i < getBroadcastByCount(); i++) { if (!getBroadcastBy(i).isInitialized()) { return false; } } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.TransactionConfidence parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.TransactionConfidence) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private org.bitcoinj.wallet.Protos.TransactionConfidence.Type type_ = org.bitcoinj.wallet.Protos.TransactionConfidence.Type.UNKNOWN; /** * <code>optional .wallet.TransactionConfidence.Type type = 1;</code> * * <pre> * This is optional in case we add confidence types to prevent parse errors - backwards compatible. * </pre> */ public boolean hasType() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>optional .wallet.TransactionConfidence.Type type = 1;</code> * * <pre> * This is optional in case we add confidence types to prevent parse errors - backwards compatible. * </pre> */ public org.bitcoinj.wallet.Protos.TransactionConfidence.Type getType() { return type_; } /** * <code>optional .wallet.TransactionConfidence.Type type = 1;</code> * * <pre> * This is optional in case we add confidence types to prevent parse errors - backwards compatible. * </pre> */ public Builder setType(org.bitcoinj.wallet.Protos.TransactionConfidence.Type value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; type_ = value; onChanged(); return this; } /** * <code>optional .wallet.TransactionConfidence.Type type = 1;</code> * * <pre> * This is optional in case we add confidence types to prevent parse errors - backwards compatible. * </pre> */ public Builder clearType() { bitField0_ = (bitField0_ & ~0x00000001); type_ = org.bitcoinj.wallet.Protos.TransactionConfidence.Type.UNKNOWN; onChanged(); return this; } private int appearedAtHeight_ ; /** * <code>optional int32 appeared_at_height = 2;</code> * * <pre> * If type == BUILDING then this is the chain height at which the transaction was included. * </pre> */ public boolean hasAppearedAtHeight() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>optional int32 appeared_at_height = 2;</code> * * <pre> * If type == BUILDING then this is the chain height at which the transaction was included. * </pre> */ public int getAppearedAtHeight() { return appearedAtHeight_; } /** * <code>optional int32 appeared_at_height = 2;</code> * * <pre> * If type == BUILDING then this is the chain height at which the transaction was included. * </pre> */ public Builder setAppearedAtHeight(int value) { bitField0_ |= 0x00000002; appearedAtHeight_ = value; onChanged(); return this; } /** * <code>optional int32 appeared_at_height = 2;</code> * * <pre> * If type == BUILDING then this is the chain height at which the transaction was included. * </pre> */ public Builder clearAppearedAtHeight() { bitField0_ = (bitField0_ & ~0x00000002); appearedAtHeight_ = 0; onChanged(); return this; } private com.google.protobuf.ByteString overridingTransaction_ = com.google.protobuf.ByteString.EMPTY; /** * <code>optional bytes overriding_transaction = 3;</code> * * <pre> * If set, hash of the transaction that double spent this one into oblivion. A transaction can be double spent by * multiple transactions in the case of several inputs being re-spent by several transactions but we don't * bother to track them all, just the first. This only makes sense if type = DEAD. * </pre> */ public boolean hasOverridingTransaction() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional bytes overriding_transaction = 3;</code> * * <pre> * If set, hash of the transaction that double spent this one into oblivion. A transaction can be double spent by * multiple transactions in the case of several inputs being re-spent by several transactions but we don't * bother to track them all, just the first. This only makes sense if type = DEAD. * </pre> */ public com.google.protobuf.ByteString getOverridingTransaction() { return overridingTransaction_; } /** * <code>optional bytes overriding_transaction = 3;</code> * * <pre> * If set, hash of the transaction that double spent this one into oblivion. A transaction can be double spent by * multiple transactions in the case of several inputs being re-spent by several transactions but we don't * bother to track them all, just the first. This only makes sense if type = DEAD. * </pre> */ public Builder setOverridingTransaction(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000004; overridingTransaction_ = value; onChanged(); return this; } /** * <code>optional bytes overriding_transaction = 3;</code> * * <pre> * If set, hash of the transaction that double spent this one into oblivion. A transaction can be double spent by * multiple transactions in the case of several inputs being re-spent by several transactions but we don't * bother to track them all, just the first. This only makes sense if type = DEAD. * </pre> */ public Builder clearOverridingTransaction() { bitField0_ = (bitField0_ & ~0x00000004); overridingTransaction_ = getDefaultInstance().getOverridingTransaction(); onChanged(); return this; } private int depth_ ; /** * <code>optional int32 depth = 4;</code> * * <pre> * If type == BUILDING then this is the depth of the transaction in the blockchain. * Zero confirmations: depth = 0, one confirmation: depth = 1 etc. * </pre> */ public boolean hasDepth() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional int32 depth = 4;</code> * * <pre> * If type == BUILDING then this is the depth of the transaction in the blockchain. * Zero confirmations: depth = 0, one confirmation: depth = 1 etc. * </pre> */ public int getDepth() { return depth_; } /** * <code>optional int32 depth = 4;</code> * * <pre> * If type == BUILDING then this is the depth of the transaction in the blockchain. * Zero confirmations: depth = 0, one confirmation: depth = 1 etc. * </pre> */ public Builder setDepth(int value) { bitField0_ |= 0x00000008; depth_ = value; onChanged(); return this; } /** * <code>optional int32 depth = 4;</code> * * <pre> * If type == BUILDING then this is the depth of the transaction in the blockchain. * Zero confirmations: depth = 0, one confirmation: depth = 1 etc. * </pre> */ public Builder clearDepth() { bitField0_ = (bitField0_ & ~0x00000008); depth_ = 0; onChanged(); return this; } private java.util.List<org.bitcoinj.wallet.Protos.PeerAddress> broadcastBy_ = java.util.Collections.emptyList(); private void ensureBroadcastByIsMutable() { if (!((bitField0_ & 0x00000010) == 0x00000010)) { broadcastBy_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.PeerAddress>(broadcastBy_); bitField0_ |= 0x00000010; } } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.PeerAddress, org.bitcoinj.wallet.Protos.PeerAddress.Builder, org.bitcoinj.wallet.Protos.PeerAddressOrBuilder> broadcastByBuilder_; /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.PeerAddress> getBroadcastByList() { if (broadcastByBuilder_ == null) { return java.util.Collections.unmodifiableList(broadcastBy_); } else { return broadcastByBuilder_.getMessageList(); } } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public int getBroadcastByCount() { if (broadcastByBuilder_ == null) { return broadcastBy_.size(); } else { return broadcastByBuilder_.getCount(); } } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public org.bitcoinj.wallet.Protos.PeerAddress getBroadcastBy(int index) { if (broadcastByBuilder_ == null) { return broadcastBy_.get(index); } else { return broadcastByBuilder_.getMessage(index); } } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public Builder setBroadcastBy( int index, org.bitcoinj.wallet.Protos.PeerAddress value) { if (broadcastByBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureBroadcastByIsMutable(); broadcastBy_.set(index, value); onChanged(); } else { broadcastByBuilder_.setMessage(index, value); } return this; } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public Builder setBroadcastBy( int index, org.bitcoinj.wallet.Protos.PeerAddress.Builder builderForValue) { if (broadcastByBuilder_ == null) { ensureBroadcastByIsMutable(); broadcastBy_.set(index, builderForValue.build()); onChanged(); } else { broadcastByBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public Builder addBroadcastBy(org.bitcoinj.wallet.Protos.PeerAddress value) { if (broadcastByBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureBroadcastByIsMutable(); broadcastBy_.add(value); onChanged(); } else { broadcastByBuilder_.addMessage(value); } return this; } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public Builder addBroadcastBy( int index, org.bitcoinj.wallet.Protos.PeerAddress value) { if (broadcastByBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureBroadcastByIsMutable(); broadcastBy_.add(index, value); onChanged(); } else { broadcastByBuilder_.addMessage(index, value); } return this; } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public Builder addBroadcastBy( org.bitcoinj.wallet.Protos.PeerAddress.Builder builderForValue) { if (broadcastByBuilder_ == null) { ensureBroadcastByIsMutable(); broadcastBy_.add(builderForValue.build()); onChanged(); } else { broadcastByBuilder_.addMessage(builderForValue.build()); } return this; } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public Builder addBroadcastBy( int index, org.bitcoinj.wallet.Protos.PeerAddress.Builder builderForValue) { if (broadcastByBuilder_ == null) { ensureBroadcastByIsMutable(); broadcastBy_.add(index, builderForValue.build()); onChanged(); } else { broadcastByBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public Builder addAllBroadcastBy( java.lang.Iterable<? extends org.bitcoinj.wallet.Protos.PeerAddress> values) { if (broadcastByBuilder_ == null) { ensureBroadcastByIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, broadcastBy_); onChanged(); } else { broadcastByBuilder_.addAllMessages(values); } return this; } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public Builder clearBroadcastBy() { if (broadcastByBuilder_ == null) { broadcastBy_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000010); onChanged(); } else { broadcastByBuilder_.clear(); } return this; } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public Builder removeBroadcastBy(int index) { if (broadcastByBuilder_ == null) { ensureBroadcastByIsMutable(); broadcastBy_.remove(index); onChanged(); } else { broadcastByBuilder_.remove(index); } return this; } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public org.bitcoinj.wallet.Protos.PeerAddress.Builder getBroadcastByBuilder( int index) { return getBroadcastByFieldBuilder().getBuilder(index); } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public org.bitcoinj.wallet.Protos.PeerAddressOrBuilder getBroadcastByOrBuilder( int index) { if (broadcastByBuilder_ == null) { return broadcastBy_.get(index); } else { return broadcastByBuilder_.getMessageOrBuilder(index); } } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.PeerAddressOrBuilder> getBroadcastByOrBuilderList() { if (broadcastByBuilder_ != null) { return broadcastByBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(broadcastBy_); } } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public org.bitcoinj.wallet.Protos.PeerAddress.Builder addBroadcastByBuilder() { return getBroadcastByFieldBuilder().addBuilder( org.bitcoinj.wallet.Protos.PeerAddress.getDefaultInstance()); } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public org.bitcoinj.wallet.Protos.PeerAddress.Builder addBroadcastByBuilder( int index) { return getBroadcastByFieldBuilder().addBuilder( index, org.bitcoinj.wallet.Protos.PeerAddress.getDefaultInstance()); } /** * <code>repeated .wallet.PeerAddress broadcast_by = 6;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.PeerAddress.Builder> getBroadcastByBuilderList() { return getBroadcastByFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.PeerAddress, org.bitcoinj.wallet.Protos.PeerAddress.Builder, org.bitcoinj.wallet.Protos.PeerAddressOrBuilder> getBroadcastByFieldBuilder() { if (broadcastByBuilder_ == null) { broadcastByBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.PeerAddress, org.bitcoinj.wallet.Protos.PeerAddress.Builder, org.bitcoinj.wallet.Protos.PeerAddressOrBuilder>( broadcastBy_, ((bitField0_ & 0x00000010) == 0x00000010), getParentForChildren(), isClean()); broadcastBy_ = null; } return broadcastByBuilder_; } private long lastBroadcastedAt_ ; /** * <code>optional int64 last_broadcasted_at = 8;</code> * * <pre> * Millis since epoch the transaction was last announced to us. * </pre> */ public boolean hasLastBroadcastedAt() { return ((bitField0_ & 0x00000020) == 0x00000020); } /** * <code>optional int64 last_broadcasted_at = 8;</code> * * <pre> * Millis since epoch the transaction was last announced to us. * </pre> */ public long getLastBroadcastedAt() { return lastBroadcastedAt_; } /** * <code>optional int64 last_broadcasted_at = 8;</code> * * <pre> * Millis since epoch the transaction was last announced to us. * </pre> */ public Builder setLastBroadcastedAt(long value) { bitField0_ |= 0x00000020; lastBroadcastedAt_ = value; onChanged(); return this; } /** * <code>optional int64 last_broadcasted_at = 8;</code> * * <pre> * Millis since epoch the transaction was last announced to us. * </pre> */ public Builder clearLastBroadcastedAt() { bitField0_ = (bitField0_ & ~0x00000020); lastBroadcastedAt_ = 0L; onChanged(); return this; } private org.bitcoinj.wallet.Protos.TransactionConfidence.Source source_ = org.bitcoinj.wallet.Protos.TransactionConfidence.Source.SOURCE_UNKNOWN; /** * <code>optional .wallet.TransactionConfidence.Source source = 7;</code> */ public boolean hasSource() { return ((bitField0_ & 0x00000040) == 0x00000040); } /** * <code>optional .wallet.TransactionConfidence.Source source = 7;</code> */ public org.bitcoinj.wallet.Protos.TransactionConfidence.Source getSource() { return source_; } /** * <code>optional .wallet.TransactionConfidence.Source source = 7;</code> */ public Builder setSource(org.bitcoinj.wallet.Protos.TransactionConfidence.Source value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000040; source_ = value; onChanged(); return this; } /** * <code>optional .wallet.TransactionConfidence.Source source = 7;</code> */ public Builder clearSource() { bitField0_ = (bitField0_ & ~0x00000040); source_ = org.bitcoinj.wallet.Protos.TransactionConfidence.Source.SOURCE_UNKNOWN; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.TransactionConfidence) } static { defaultInstance = new TransactionConfidence(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.TransactionConfidence) } public interface TransactionOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.Transaction) com.google.protobuf.MessageOrBuilder { /** * <code>required int32 version = 1;</code> * * <pre> * See Wallet.java for detailed description of pool semantics * </pre> */ boolean hasVersion(); /** * <code>required int32 version = 1;</code> * * <pre> * See Wallet.java for detailed description of pool semantics * </pre> */ int getVersion(); /** * <code>required bytes hash = 2;</code> */ boolean hasHash(); /** * <code>required bytes hash = 2;</code> */ com.google.protobuf.ByteString getHash(); /** * <code>optional .wallet.Transaction.Pool pool = 3;</code> * * <pre> * If pool is not present, that means either: * - This Transaction is either not in a wallet at all (the proto is re-used elsewhere) * - Or it is stored but for other purposes, for example, because it is the overriding transaction of a double spend. * - Or the Pool enum got a new value which your software is too old to parse. * </pre> */ boolean hasPool(); /** * <code>optional .wallet.Transaction.Pool pool = 3;</code> * * <pre> * If pool is not present, that means either: * - This Transaction is either not in a wallet at all (the proto is re-used elsewhere) * - Or it is stored but for other purposes, for example, because it is the overriding transaction of a double spend. * - Or the Pool enum got a new value which your software is too old to parse. * </pre> */ org.bitcoinj.wallet.Protos.Transaction.Pool getPool(); /** * <code>optional uint32 lock_time = 4;</code> * * <pre> * The nLockTime field is useful for contracts. * </pre> */ boolean hasLockTime(); /** * <code>optional uint32 lock_time = 4;</code> * * <pre> * The nLockTime field is useful for contracts. * </pre> */ int getLockTime(); /** * <code>optional int64 updated_at = 5;</code> * * <pre> * millis since epoch the transaction was last updated * </pre> */ boolean hasUpdatedAt(); /** * <code>optional int64 updated_at = 5;</code> * * <pre> * millis since epoch the transaction was last updated * </pre> */ long getUpdatedAt(); /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ java.util.List<org.bitcoinj.wallet.Protos.TransactionInput> getTransactionInputList(); /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ org.bitcoinj.wallet.Protos.TransactionInput getTransactionInput(int index); /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ int getTransactionInputCount(); /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ java.util.List<? extends org.bitcoinj.wallet.Protos.TransactionInputOrBuilder> getTransactionInputOrBuilderList(); /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ org.bitcoinj.wallet.Protos.TransactionInputOrBuilder getTransactionInputOrBuilder( int index); /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ java.util.List<org.bitcoinj.wallet.Protos.TransactionOutput> getTransactionOutputList(); /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ org.bitcoinj.wallet.Protos.TransactionOutput getTransactionOutput(int index); /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ int getTransactionOutputCount(); /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ java.util.List<? extends org.bitcoinj.wallet.Protos.TransactionOutputOrBuilder> getTransactionOutputOrBuilderList(); /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ org.bitcoinj.wallet.Protos.TransactionOutputOrBuilder getTransactionOutputOrBuilder( int index); /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ java.util.List<com.google.protobuf.ByteString> getBlockHashList(); /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ int getBlockHashCount(); /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ com.google.protobuf.ByteString getBlockHash(int index); /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ java.util.List<java.lang.Integer> getBlockRelativityOffsetsList(); /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ int getBlockRelativityOffsetsCount(); /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ int getBlockRelativityOffsets(int index); /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ boolean hasConfidence(); /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ org.bitcoinj.wallet.Protos.TransactionConfidence getConfidence(); /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ org.bitcoinj.wallet.Protos.TransactionConfidenceOrBuilder getConfidenceOrBuilder(); /** * <code>optional .wallet.Transaction.Purpose purpose = 10 [default = UNKNOWN];</code> */ boolean hasPurpose(); /** * <code>optional .wallet.Transaction.Purpose purpose = 10 [default = UNKNOWN];</code> */ org.bitcoinj.wallet.Protos.Transaction.Purpose getPurpose(); /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ boolean hasExchangeRate(); /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ org.bitcoinj.wallet.Protos.ExchangeRate getExchangeRate(); /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ org.bitcoinj.wallet.Protos.ExchangeRateOrBuilder getExchangeRateOrBuilder(); /** * <code>optional string memo = 13;</code> * * <pre> * Memo of the transaction. It can be used to record the memo of the payment request that initiated the * transaction. * </pre> */ boolean hasMemo(); /** * <code>optional string memo = 13;</code> * * <pre> * Memo of the transaction. It can be used to record the memo of the payment request that initiated the * transaction. * </pre> */ java.lang.String getMemo(); /** * <code>optional string memo = 13;</code> * * <pre> * Memo of the transaction. It can be used to record the memo of the payment request that initiated the * transaction. * </pre> */ com.google.protobuf.ByteString getMemoBytes(); } /** * Protobuf type {@code wallet.Transaction} */ public static final class Transaction extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.Transaction) TransactionOrBuilder { // Use Transaction.newBuilder() to construct. private Transaction(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private Transaction(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final Transaction defaultInstance; public static Transaction getDefaultInstance() { return defaultInstance; } public Transaction getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private Transaction( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 8: { bitField0_ |= 0x00000001; version_ = input.readInt32(); break; } case 18: { bitField0_ |= 0x00000002; hash_ = input.readBytes(); break; } case 24: { int rawValue = input.readEnum(); org.bitcoinj.wallet.Protos.Transaction.Pool value = org.bitcoinj.wallet.Protos.Transaction.Pool.valueOf(rawValue); if (value == null) { unknownFields.mergeVarintField(3, rawValue); } else { bitField0_ |= 0x00000004; pool_ = value; } break; } case 32: { bitField0_ |= 0x00000008; lockTime_ = input.readUInt32(); break; } case 40: { bitField0_ |= 0x00000010; updatedAt_ = input.readInt64(); break; } case 50: { if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) { transactionInput_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.TransactionInput>(); mutable_bitField0_ |= 0x00000020; } transactionInput_.add(input.readMessage(org.bitcoinj.wallet.Protos.TransactionInput.PARSER, extensionRegistry)); break; } case 58: { if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) { transactionOutput_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.TransactionOutput>(); mutable_bitField0_ |= 0x00000040; } transactionOutput_.add(input.readMessage(org.bitcoinj.wallet.Protos.TransactionOutput.PARSER, extensionRegistry)); break; } case 66: { if (!((mutable_bitField0_ & 0x00000080) == 0x00000080)) { blockHash_ = new java.util.ArrayList<com.google.protobuf.ByteString>(); mutable_bitField0_ |= 0x00000080; } blockHash_.add(input.readBytes()); break; } case 74: { org.bitcoinj.wallet.Protos.TransactionConfidence.Builder subBuilder = null; if (((bitField0_ & 0x00000020) == 0x00000020)) { subBuilder = confidence_.toBuilder(); } confidence_ = input.readMessage(org.bitcoinj.wallet.Protos.TransactionConfidence.PARSER, extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(confidence_); confidence_ = subBuilder.buildPartial(); } bitField0_ |= 0x00000020; break; } case 80: { int rawValue = input.readEnum(); org.bitcoinj.wallet.Protos.Transaction.Purpose value = org.bitcoinj.wallet.Protos.Transaction.Purpose.valueOf(rawValue); if (value == null) { unknownFields.mergeVarintField(10, rawValue); } else { bitField0_ |= 0x00000040; purpose_ = value; } break; } case 88: { if (!((mutable_bitField0_ & 0x00000100) == 0x00000100)) { blockRelativityOffsets_ = new java.util.ArrayList<java.lang.Integer>(); mutable_bitField0_ |= 0x00000100; } blockRelativityOffsets_.add(input.readInt32()); break; } case 90: { int length = input.readRawVarint32(); int limit = input.pushLimit(length); if (!((mutable_bitField0_ & 0x00000100) == 0x00000100) && input.getBytesUntilLimit() > 0) { blockRelativityOffsets_ = new java.util.ArrayList<java.lang.Integer>(); mutable_bitField0_ |= 0x00000100; } while (input.getBytesUntilLimit() > 0) { blockRelativityOffsets_.add(input.readInt32()); } input.popLimit(limit); break; } case 98: { org.bitcoinj.wallet.Protos.ExchangeRate.Builder subBuilder = null; if (((bitField0_ & 0x00000080) == 0x00000080)) { subBuilder = exchangeRate_.toBuilder(); } exchangeRate_ = input.readMessage(org.bitcoinj.wallet.Protos.ExchangeRate.PARSER, extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(exchangeRate_); exchangeRate_ = subBuilder.buildPartial(); } bitField0_ |= 0x00000080; break; } case 106: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000100; memo_ = bs; break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) { transactionInput_ = java.util.Collections.unmodifiableList(transactionInput_); } if (((mutable_bitField0_ & 0x00000040) == 0x00000040)) { transactionOutput_ = java.util.Collections.unmodifiableList(transactionOutput_); } if (((mutable_bitField0_ & 0x00000080) == 0x00000080)) { blockHash_ = java.util.Collections.unmodifiableList(blockHash_); } if (((mutable_bitField0_ & 0x00000100) == 0x00000100)) { blockRelativityOffsets_ = java.util.Collections.unmodifiableList(blockRelativityOffsets_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Transaction_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Transaction_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.Transaction.class, org.bitcoinj.wallet.Protos.Transaction.Builder.class); } public static com.google.protobuf.Parser<Transaction> PARSER = new com.google.protobuf.AbstractParser<Transaction>() { public Transaction parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new Transaction(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<Transaction> getParserForType() { return PARSER; } /** * Protobuf enum {@code wallet.Transaction.Pool} * * <pre> ** * This is a bitfield oriented enum, with the following bits: * * bit 0 - spent * bit 1 - appears in alt chain * bit 2 - appears in best chain * bit 3 - double-spent * bit 4 - pending (we would like the tx to go into the best chain) * * Not all combinations are interesting, just the ones actually used in the enum. * </pre> */ public enum Pool implements com.google.protobuf.ProtocolMessageEnum { /** * <code>UNSPENT = 4;</code> * * <pre> * In best chain, not all outputs spent * </pre> */ UNSPENT(0, 4), /** * <code>SPENT = 5;</code> * * <pre> * In best chain, all outputs spent * </pre> */ SPENT(1, 5), /** * <code>INACTIVE = 2;</code> * * <pre> * In non-best chain, not our transaction * </pre> */ INACTIVE(2, 2), /** * <code>DEAD = 10;</code> * * <pre> * Double-spent by a transaction in the best chain * </pre> */ DEAD(3, 10), /** * <code>PENDING = 16;</code> * * <pre> * Our transaction, not in any chain * </pre> */ PENDING(4, 16), /** * <code>PENDING_INACTIVE = 18;</code> * * <pre> * In non-best chain, our transaction * </pre> */ PENDING_INACTIVE(5, 18), ; /** * <code>UNSPENT = 4;</code> * * <pre> * In best chain, not all outputs spent * </pre> */ public static final int UNSPENT_VALUE = 4; /** * <code>SPENT = 5;</code> * * <pre> * In best chain, all outputs spent * </pre> */ public static final int SPENT_VALUE = 5; /** * <code>INACTIVE = 2;</code> * * <pre> * In non-best chain, not our transaction * </pre> */ public static final int INACTIVE_VALUE = 2; /** * <code>DEAD = 10;</code> * * <pre> * Double-spent by a transaction in the best chain * </pre> */ public static final int DEAD_VALUE = 10; /** * <code>PENDING = 16;</code> * * <pre> * Our transaction, not in any chain * </pre> */ public static final int PENDING_VALUE = 16; /** * <code>PENDING_INACTIVE = 18;</code> * * <pre> * In non-best chain, our transaction * </pre> */ public static final int PENDING_INACTIVE_VALUE = 18; public final int getNumber() { return value; } public static Pool valueOf(int value) { switch (value) { case 4: return UNSPENT; case 5: return SPENT; case 2: return INACTIVE; case 10: return DEAD; case 16: return PENDING; case 18: return PENDING_INACTIVE; default: return null; } } public static com.google.protobuf.Internal.EnumLiteMap<Pool> internalGetValueMap() { return internalValueMap; } private static com.google.protobuf.Internal.EnumLiteMap<Pool> internalValueMap = new com.google.protobuf.Internal.EnumLiteMap<Pool>() { public Pool findValueByNumber(int number) { return Pool.valueOf(number); } }; public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { return getDescriptor().getValues().get(index); } public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { return getDescriptor(); } public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { return org.bitcoinj.wallet.Protos.Transaction.getDescriptor().getEnumTypes().get(0); } private static final Pool[] VALUES = values(); public static Pool valueOf( com.google.protobuf.Descriptors.EnumValueDescriptor desc) { if (desc.getType() != getDescriptor()) { throw new java.lang.IllegalArgumentException( "EnumValueDescriptor is not for this type."); } return VALUES[desc.getIndex()]; } private final int index; private final int value; private Pool(int index, int value) { this.index = index; this.value = value; } // @@protoc_insertion_point(enum_scope:wallet.Transaction.Pool) } /** * Protobuf enum {@code wallet.Transaction.Purpose} * * <pre> * For what purpose the transaction was created. * </pre> */ public enum Purpose implements com.google.protobuf.ProtocolMessageEnum { /** * <code>UNKNOWN = 0;</code> * * <pre> * Old wallets or the purpose genuinely is a mystery (e.g. imported from some external source). * </pre> */ UNKNOWN(0, 0), /** * <code>USER_PAYMENT = 1;</code> * * <pre> * Created in response to a user request for payment. This is the normal case. * </pre> */ USER_PAYMENT(1, 1), /** * <code>KEY_ROTATION = 2;</code> * * <pre> * Created automatically to move money from rotated keys. * </pre> */ KEY_ROTATION(2, 2), /** * <code>ASSURANCE_CONTRACT_CLAIM = 3;</code> * * <pre> * Stuff used by Lighthouse. * </pre> */ ASSURANCE_CONTRACT_CLAIM(3, 3), /** * <code>ASSURANCE_CONTRACT_PLEDGE = 4;</code> */ ASSURANCE_CONTRACT_PLEDGE(4, 4), /** * <code>ASSURANCE_CONTRACT_STUB = 5;</code> */ ASSURANCE_CONTRACT_STUB(5, 5), /** * <code>RAISE_FEE = 6;</code> * * <pre> * Raise fee, e.g. child-pays-for-parent. * </pre> */ RAISE_FEE(6, 6), ; /** * <code>UNKNOWN = 0;</code> * * <pre> * Old wallets or the purpose genuinely is a mystery (e.g. imported from some external source). * </pre> */ public static final int UNKNOWN_VALUE = 0; /** * <code>USER_PAYMENT = 1;</code> * * <pre> * Created in response to a user request for payment. This is the normal case. * </pre> */ public static final int USER_PAYMENT_VALUE = 1; /** * <code>KEY_ROTATION = 2;</code> * * <pre> * Created automatically to move money from rotated keys. * </pre> */ public static final int KEY_ROTATION_VALUE = 2; /** * <code>ASSURANCE_CONTRACT_CLAIM = 3;</code> * * <pre> * Stuff used by Lighthouse. * </pre> */ public static final int ASSURANCE_CONTRACT_CLAIM_VALUE = 3; /** * <code>ASSURANCE_CONTRACT_PLEDGE = 4;</code> */ public static final int ASSURANCE_CONTRACT_PLEDGE_VALUE = 4; /** * <code>ASSURANCE_CONTRACT_STUB = 5;</code> */ public static final int ASSURANCE_CONTRACT_STUB_VALUE = 5; /** * <code>RAISE_FEE = 6;</code> * * <pre> * Raise fee, e.g. child-pays-for-parent. * </pre> */ public static final int RAISE_FEE_VALUE = 6; public final int getNumber() { return value; } public static Purpose valueOf(int value) { switch (value) { case 0: return UNKNOWN; case 1: return USER_PAYMENT; case 2: return KEY_ROTATION; case 3: return ASSURANCE_CONTRACT_CLAIM; case 4: return ASSURANCE_CONTRACT_PLEDGE; case 5: return ASSURANCE_CONTRACT_STUB; case 6: return RAISE_FEE; default: return null; } } public static com.google.protobuf.Internal.EnumLiteMap<Purpose> internalGetValueMap() { return internalValueMap; } private static com.google.protobuf.Internal.EnumLiteMap<Purpose> internalValueMap = new com.google.protobuf.Internal.EnumLiteMap<Purpose>() { public Purpose findValueByNumber(int number) { return Purpose.valueOf(number); } }; public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { return getDescriptor().getValues().get(index); } public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { return getDescriptor(); } public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { return org.bitcoinj.wallet.Protos.Transaction.getDescriptor().getEnumTypes().get(1); } private static final Purpose[] VALUES = values(); public static Purpose valueOf( com.google.protobuf.Descriptors.EnumValueDescriptor desc) { if (desc.getType() != getDescriptor()) { throw new java.lang.IllegalArgumentException( "EnumValueDescriptor is not for this type."); } return VALUES[desc.getIndex()]; } private final int index; private final int value; private Purpose(int index, int value) { this.index = index; this.value = value; } // @@protoc_insertion_point(enum_scope:wallet.Transaction.Purpose) } private int bitField0_; public static final int VERSION_FIELD_NUMBER = 1; private int version_; /** * <code>required int32 version = 1;</code> * * <pre> * See Wallet.java for detailed description of pool semantics * </pre> */ public boolean hasVersion() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required int32 version = 1;</code> * * <pre> * See Wallet.java for detailed description of pool semantics * </pre> */ public int getVersion() { return version_; } public static final int HASH_FIELD_NUMBER = 2; private com.google.protobuf.ByteString hash_; /** * <code>required bytes hash = 2;</code> */ public boolean hasHash() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required bytes hash = 2;</code> */ public com.google.protobuf.ByteString getHash() { return hash_; } public static final int POOL_FIELD_NUMBER = 3; private org.bitcoinj.wallet.Protos.Transaction.Pool pool_; /** * <code>optional .wallet.Transaction.Pool pool = 3;</code> * * <pre> * If pool is not present, that means either: * - This Transaction is either not in a wallet at all (the proto is re-used elsewhere) * - Or it is stored but for other purposes, for example, because it is the overriding transaction of a double spend. * - Or the Pool enum got a new value which your software is too old to parse. * </pre> */ public boolean hasPool() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional .wallet.Transaction.Pool pool = 3;</code> * * <pre> * If pool is not present, that means either: * - This Transaction is either not in a wallet at all (the proto is re-used elsewhere) * - Or it is stored but for other purposes, for example, because it is the overriding transaction of a double spend. * - Or the Pool enum got a new value which your software is too old to parse. * </pre> */ public org.bitcoinj.wallet.Protos.Transaction.Pool getPool() { return pool_; } public static final int LOCK_TIME_FIELD_NUMBER = 4; private int lockTime_; /** * <code>optional uint32 lock_time = 4;</code> * * <pre> * The nLockTime field is useful for contracts. * </pre> */ public boolean hasLockTime() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional uint32 lock_time = 4;</code> * * <pre> * The nLockTime field is useful for contracts. * </pre> */ public int getLockTime() { return lockTime_; } public static final int UPDATED_AT_FIELD_NUMBER = 5; private long updatedAt_; /** * <code>optional int64 updated_at = 5;</code> * * <pre> * millis since epoch the transaction was last updated * </pre> */ public boolean hasUpdatedAt() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * <code>optional int64 updated_at = 5;</code> * * <pre> * millis since epoch the transaction was last updated * </pre> */ public long getUpdatedAt() { return updatedAt_; } public static final int TRANSACTION_INPUT_FIELD_NUMBER = 6; private java.util.List<org.bitcoinj.wallet.Protos.TransactionInput> transactionInput_; /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.TransactionInput> getTransactionInputList() { return transactionInput_; } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.TransactionInputOrBuilder> getTransactionInputOrBuilderList() { return transactionInput_; } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public int getTransactionInputCount() { return transactionInput_.size(); } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public org.bitcoinj.wallet.Protos.TransactionInput getTransactionInput(int index) { return transactionInput_.get(index); } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public org.bitcoinj.wallet.Protos.TransactionInputOrBuilder getTransactionInputOrBuilder( int index) { return transactionInput_.get(index); } public static final int TRANSACTION_OUTPUT_FIELD_NUMBER = 7; private java.util.List<org.bitcoinj.wallet.Protos.TransactionOutput> transactionOutput_; /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.TransactionOutput> getTransactionOutputList() { return transactionOutput_; } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.TransactionOutputOrBuilder> getTransactionOutputOrBuilderList() { return transactionOutput_; } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public int getTransactionOutputCount() { return transactionOutput_.size(); } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public org.bitcoinj.wallet.Protos.TransactionOutput getTransactionOutput(int index) { return transactionOutput_.get(index); } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public org.bitcoinj.wallet.Protos.TransactionOutputOrBuilder getTransactionOutputOrBuilder( int index) { return transactionOutput_.get(index); } public static final int BLOCK_HASH_FIELD_NUMBER = 8; private java.util.List<com.google.protobuf.ByteString> blockHash_; /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ public java.util.List<com.google.protobuf.ByteString> getBlockHashList() { return blockHash_; } /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ public int getBlockHashCount() { return blockHash_.size(); } /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ public com.google.protobuf.ByteString getBlockHash(int index) { return blockHash_.get(index); } public static final int BLOCK_RELATIVITY_OFFSETS_FIELD_NUMBER = 11; private java.util.List<java.lang.Integer> blockRelativityOffsets_; /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ public java.util.List<java.lang.Integer> getBlockRelativityOffsetsList() { return blockRelativityOffsets_; } /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ public int getBlockRelativityOffsetsCount() { return blockRelativityOffsets_.size(); } /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ public int getBlockRelativityOffsets(int index) { return blockRelativityOffsets_.get(index); } public static final int CONFIDENCE_FIELD_NUMBER = 9; private org.bitcoinj.wallet.Protos.TransactionConfidence confidence_; /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ public boolean hasConfidence() { return ((bitField0_ & 0x00000020) == 0x00000020); } /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ public org.bitcoinj.wallet.Protos.TransactionConfidence getConfidence() { return confidence_; } /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ public org.bitcoinj.wallet.Protos.TransactionConfidenceOrBuilder getConfidenceOrBuilder() { return confidence_; } public static final int PURPOSE_FIELD_NUMBER = 10; private org.bitcoinj.wallet.Protos.Transaction.Purpose purpose_; /** * <code>optional .wallet.Transaction.Purpose purpose = 10 [default = UNKNOWN];</code> */ public boolean hasPurpose() { return ((bitField0_ & 0x00000040) == 0x00000040); } /** * <code>optional .wallet.Transaction.Purpose purpose = 10 [default = UNKNOWN];</code> */ public org.bitcoinj.wallet.Protos.Transaction.Purpose getPurpose() { return purpose_; } public static final int EXCHANGE_RATE_FIELD_NUMBER = 12; private org.bitcoinj.wallet.Protos.ExchangeRate exchangeRate_; /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ public boolean hasExchangeRate() { return ((bitField0_ & 0x00000080) == 0x00000080); } /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ public org.bitcoinj.wallet.Protos.ExchangeRate getExchangeRate() { return exchangeRate_; } /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ public org.bitcoinj.wallet.Protos.ExchangeRateOrBuilder getExchangeRateOrBuilder() { return exchangeRate_; } public static final int MEMO_FIELD_NUMBER = 13; private java.lang.Object memo_; /** * <code>optional string memo = 13;</code> * * <pre> * Memo of the transaction. It can be used to record the memo of the payment request that initiated the * transaction. * </pre> */ public boolean hasMemo() { return ((bitField0_ & 0x00000100) == 0x00000100); } /** * <code>optional string memo = 13;</code> * * <pre> * Memo of the transaction. It can be used to record the memo of the payment request that initiated the * transaction. * </pre> */ public java.lang.String getMemo() { java.lang.Object ref = memo_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { memo_ = s; } return s; } } /** * <code>optional string memo = 13;</code> * * <pre> * Memo of the transaction. It can be used to record the memo of the payment request that initiated the * transaction. * </pre> */ public com.google.protobuf.ByteString getMemoBytes() { java.lang.Object ref = memo_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); memo_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } private void initFields() { version_ = 0; hash_ = com.google.protobuf.ByteString.EMPTY; pool_ = org.bitcoinj.wallet.Protos.Transaction.Pool.UNSPENT; lockTime_ = 0; updatedAt_ = 0L; transactionInput_ = java.util.Collections.emptyList(); transactionOutput_ = java.util.Collections.emptyList(); blockHash_ = java.util.Collections.emptyList(); blockRelativityOffsets_ = java.util.Collections.emptyList(); confidence_ = org.bitcoinj.wallet.Protos.TransactionConfidence.getDefaultInstance(); purpose_ = org.bitcoinj.wallet.Protos.Transaction.Purpose.UNKNOWN; exchangeRate_ = org.bitcoinj.wallet.Protos.ExchangeRate.getDefaultInstance(); memo_ = ""; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasVersion()) { memoizedIsInitialized = 0; return false; } if (!hasHash()) { memoizedIsInitialized = 0; return false; } for (int i = 0; i < getTransactionInputCount(); i++) { if (!getTransactionInput(i).isInitialized()) { memoizedIsInitialized = 0; return false; } } for (int i = 0; i < getTransactionOutputCount(); i++) { if (!getTransactionOutput(i).isInitialized()) { memoizedIsInitialized = 0; return false; } } if (hasConfidence()) { if (!getConfidence().isInitialized()) { memoizedIsInitialized = 0; return false; } } if (hasExchangeRate()) { if (!getExchangeRate().isInitialized()) { memoizedIsInitialized = 0; return false; } } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeInt32(1, version_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeBytes(2, hash_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeEnum(3, pool_.getNumber()); } if (((bitField0_ & 0x00000008) == 0x00000008)) { output.writeUInt32(4, lockTime_); } if (((bitField0_ & 0x00000010) == 0x00000010)) { output.writeInt64(5, updatedAt_); } for (int i = 0; i < transactionInput_.size(); i++) { output.writeMessage(6, transactionInput_.get(i)); } for (int i = 0; i < transactionOutput_.size(); i++) { output.writeMessage(7, transactionOutput_.get(i)); } for (int i = 0; i < blockHash_.size(); i++) { output.writeBytes(8, blockHash_.get(i)); } if (((bitField0_ & 0x00000020) == 0x00000020)) { output.writeMessage(9, confidence_); } if (((bitField0_ & 0x00000040) == 0x00000040)) { output.writeEnum(10, purpose_.getNumber()); } for (int i = 0; i < blockRelativityOffsets_.size(); i++) { output.writeInt32(11, blockRelativityOffsets_.get(i)); } if (((bitField0_ & 0x00000080) == 0x00000080)) { output.writeMessage(12, exchangeRate_); } if (((bitField0_ & 0x00000100) == 0x00000100)) { output.writeBytes(13, getMemoBytes()); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeInt32Size(1, version_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(2, hash_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(3, pool_.getNumber()); } if (((bitField0_ & 0x00000008) == 0x00000008)) { size += com.google.protobuf.CodedOutputStream .computeUInt32Size(4, lockTime_); } if (((bitField0_ & 0x00000010) == 0x00000010)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(5, updatedAt_); } for (int i = 0; i < transactionInput_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(6, transactionInput_.get(i)); } for (int i = 0; i < transactionOutput_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(7, transactionOutput_.get(i)); } { int dataSize = 0; for (int i = 0; i < blockHash_.size(); i++) { dataSize += com.google.protobuf.CodedOutputStream .computeBytesSizeNoTag(blockHash_.get(i)); } size += dataSize; size += 1 * getBlockHashList().size(); } if (((bitField0_ & 0x00000020) == 0x00000020)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(9, confidence_); } if (((bitField0_ & 0x00000040) == 0x00000040)) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(10, purpose_.getNumber()); } { int dataSize = 0; for (int i = 0; i < blockRelativityOffsets_.size(); i++) { dataSize += com.google.protobuf.CodedOutputStream .computeInt32SizeNoTag(blockRelativityOffsets_.get(i)); } size += dataSize; size += 1 * getBlockRelativityOffsetsList().size(); } if (((bitField0_ & 0x00000080) == 0x00000080)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(12, exchangeRate_); } if (((bitField0_ & 0x00000100) == 0x00000100)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(13, getMemoBytes()); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.Transaction parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.Transaction parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Transaction parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.Transaction parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Transaction parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.Transaction parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Transaction parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.Transaction parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Transaction parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.Transaction parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.Transaction prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.Transaction} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.Transaction) org.bitcoinj.wallet.Protos.TransactionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Transaction_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Transaction_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.Transaction.class, org.bitcoinj.wallet.Protos.Transaction.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.Transaction.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { getTransactionInputFieldBuilder(); getTransactionOutputFieldBuilder(); getConfidenceFieldBuilder(); getExchangeRateFieldBuilder(); } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); version_ = 0; bitField0_ = (bitField0_ & ~0x00000001); hash_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000002); pool_ = org.bitcoinj.wallet.Protos.Transaction.Pool.UNSPENT; bitField0_ = (bitField0_ & ~0x00000004); lockTime_ = 0; bitField0_ = (bitField0_ & ~0x00000008); updatedAt_ = 0L; bitField0_ = (bitField0_ & ~0x00000010); if (transactionInputBuilder_ == null) { transactionInput_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000020); } else { transactionInputBuilder_.clear(); } if (transactionOutputBuilder_ == null) { transactionOutput_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000040); } else { transactionOutputBuilder_.clear(); } blockHash_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000080); blockRelativityOffsets_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000100); if (confidenceBuilder_ == null) { confidence_ = org.bitcoinj.wallet.Protos.TransactionConfidence.getDefaultInstance(); } else { confidenceBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000200); purpose_ = org.bitcoinj.wallet.Protos.Transaction.Purpose.UNKNOWN; bitField0_ = (bitField0_ & ~0x00000400); if (exchangeRateBuilder_ == null) { exchangeRate_ = org.bitcoinj.wallet.Protos.ExchangeRate.getDefaultInstance(); } else { exchangeRateBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000800); memo_ = ""; bitField0_ = (bitField0_ & ~0x00001000); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Transaction_descriptor; } public org.bitcoinj.wallet.Protos.Transaction getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.Transaction.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.Transaction build() { org.bitcoinj.wallet.Protos.Transaction result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.Transaction buildPartial() { org.bitcoinj.wallet.Protos.Transaction result = new org.bitcoinj.wallet.Protos.Transaction(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.version_ = version_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.hash_ = hash_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } result.pool_ = pool_; if (((from_bitField0_ & 0x00000008) == 0x00000008)) { to_bitField0_ |= 0x00000008; } result.lockTime_ = lockTime_; if (((from_bitField0_ & 0x00000010) == 0x00000010)) { to_bitField0_ |= 0x00000010; } result.updatedAt_ = updatedAt_; if (transactionInputBuilder_ == null) { if (((bitField0_ & 0x00000020) == 0x00000020)) { transactionInput_ = java.util.Collections.unmodifiableList(transactionInput_); bitField0_ = (bitField0_ & ~0x00000020); } result.transactionInput_ = transactionInput_; } else { result.transactionInput_ = transactionInputBuilder_.build(); } if (transactionOutputBuilder_ == null) { if (((bitField0_ & 0x00000040) == 0x00000040)) { transactionOutput_ = java.util.Collections.unmodifiableList(transactionOutput_); bitField0_ = (bitField0_ & ~0x00000040); } result.transactionOutput_ = transactionOutput_; } else { result.transactionOutput_ = transactionOutputBuilder_.build(); } if (((bitField0_ & 0x00000080) == 0x00000080)) { blockHash_ = java.util.Collections.unmodifiableList(blockHash_); bitField0_ = (bitField0_ & ~0x00000080); } result.blockHash_ = blockHash_; if (((bitField0_ & 0x00000100) == 0x00000100)) { blockRelativityOffsets_ = java.util.Collections.unmodifiableList(blockRelativityOffsets_); bitField0_ = (bitField0_ & ~0x00000100); } result.blockRelativityOffsets_ = blockRelativityOffsets_; if (((from_bitField0_ & 0x00000200) == 0x00000200)) { to_bitField0_ |= 0x00000020; } if (confidenceBuilder_ == null) { result.confidence_ = confidence_; } else { result.confidence_ = confidenceBuilder_.build(); } if (((from_bitField0_ & 0x00000400) == 0x00000400)) { to_bitField0_ |= 0x00000040; } result.purpose_ = purpose_; if (((from_bitField0_ & 0x00000800) == 0x00000800)) { to_bitField0_ |= 0x00000080; } if (exchangeRateBuilder_ == null) { result.exchangeRate_ = exchangeRate_; } else { result.exchangeRate_ = exchangeRateBuilder_.build(); } if (((from_bitField0_ & 0x00001000) == 0x00001000)) { to_bitField0_ |= 0x00000100; } result.memo_ = memo_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.Transaction) { return mergeFrom((org.bitcoinj.wallet.Protos.Transaction)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.Transaction other) { if (other == org.bitcoinj.wallet.Protos.Transaction.getDefaultInstance()) return this; if (other.hasVersion()) { setVersion(other.getVersion()); } if (other.hasHash()) { setHash(other.getHash()); } if (other.hasPool()) { setPool(other.getPool()); } if (other.hasLockTime()) { setLockTime(other.getLockTime()); } if (other.hasUpdatedAt()) { setUpdatedAt(other.getUpdatedAt()); } if (transactionInputBuilder_ == null) { if (!other.transactionInput_.isEmpty()) { if (transactionInput_.isEmpty()) { transactionInput_ = other.transactionInput_; bitField0_ = (bitField0_ & ~0x00000020); } else { ensureTransactionInputIsMutable(); transactionInput_.addAll(other.transactionInput_); } onChanged(); } } else { if (!other.transactionInput_.isEmpty()) { if (transactionInputBuilder_.isEmpty()) { transactionInputBuilder_.dispose(); transactionInputBuilder_ = null; transactionInput_ = other.transactionInput_; bitField0_ = (bitField0_ & ~0x00000020); transactionInputBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getTransactionInputFieldBuilder() : null; } else { transactionInputBuilder_.addAllMessages(other.transactionInput_); } } } if (transactionOutputBuilder_ == null) { if (!other.transactionOutput_.isEmpty()) { if (transactionOutput_.isEmpty()) { transactionOutput_ = other.transactionOutput_; bitField0_ = (bitField0_ & ~0x00000040); } else { ensureTransactionOutputIsMutable(); transactionOutput_.addAll(other.transactionOutput_); } onChanged(); } } else { if (!other.transactionOutput_.isEmpty()) { if (transactionOutputBuilder_.isEmpty()) { transactionOutputBuilder_.dispose(); transactionOutputBuilder_ = null; transactionOutput_ = other.transactionOutput_; bitField0_ = (bitField0_ & ~0x00000040); transactionOutputBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getTransactionOutputFieldBuilder() : null; } else { transactionOutputBuilder_.addAllMessages(other.transactionOutput_); } } } if (!other.blockHash_.isEmpty()) { if (blockHash_.isEmpty()) { blockHash_ = other.blockHash_; bitField0_ = (bitField0_ & ~0x00000080); } else { ensureBlockHashIsMutable(); blockHash_.addAll(other.blockHash_); } onChanged(); } if (!other.blockRelativityOffsets_.isEmpty()) { if (blockRelativityOffsets_.isEmpty()) { blockRelativityOffsets_ = other.blockRelativityOffsets_; bitField0_ = (bitField0_ & ~0x00000100); } else { ensureBlockRelativityOffsetsIsMutable(); blockRelativityOffsets_.addAll(other.blockRelativityOffsets_); } onChanged(); } if (other.hasConfidence()) { mergeConfidence(other.getConfidence()); } if (other.hasPurpose()) { setPurpose(other.getPurpose()); } if (other.hasExchangeRate()) { mergeExchangeRate(other.getExchangeRate()); } if (other.hasMemo()) { bitField0_ |= 0x00001000; memo_ = other.memo_; onChanged(); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasVersion()) { return false; } if (!hasHash()) { return false; } for (int i = 0; i < getTransactionInputCount(); i++) { if (!getTransactionInput(i).isInitialized()) { return false; } } for (int i = 0; i < getTransactionOutputCount(); i++) { if (!getTransactionOutput(i).isInitialized()) { return false; } } if (hasConfidence()) { if (!getConfidence().isInitialized()) { return false; } } if (hasExchangeRate()) { if (!getExchangeRate().isInitialized()) { return false; } } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.Transaction parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.Transaction) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private int version_ ; /** * <code>required int32 version = 1;</code> * * <pre> * See Wallet.java for detailed description of pool semantics * </pre> */ public boolean hasVersion() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required int32 version = 1;</code> * * <pre> * See Wallet.java for detailed description of pool semantics * </pre> */ public int getVersion() { return version_; } /** * <code>required int32 version = 1;</code> * * <pre> * See Wallet.java for detailed description of pool semantics * </pre> */ public Builder setVersion(int value) { bitField0_ |= 0x00000001; version_ = value; onChanged(); return this; } /** * <code>required int32 version = 1;</code> * * <pre> * See Wallet.java for detailed description of pool semantics * </pre> */ public Builder clearVersion() { bitField0_ = (bitField0_ & ~0x00000001); version_ = 0; onChanged(); return this; } private com.google.protobuf.ByteString hash_ = com.google.protobuf.ByteString.EMPTY; /** * <code>required bytes hash = 2;</code> */ public boolean hasHash() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required bytes hash = 2;</code> */ public com.google.protobuf.ByteString getHash() { return hash_; } /** * <code>required bytes hash = 2;</code> */ public Builder setHash(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000002; hash_ = value; onChanged(); return this; } /** * <code>required bytes hash = 2;</code> */ public Builder clearHash() { bitField0_ = (bitField0_ & ~0x00000002); hash_ = getDefaultInstance().getHash(); onChanged(); return this; } private org.bitcoinj.wallet.Protos.Transaction.Pool pool_ = org.bitcoinj.wallet.Protos.Transaction.Pool.UNSPENT; /** * <code>optional .wallet.Transaction.Pool pool = 3;</code> * * <pre> * If pool is not present, that means either: * - This Transaction is either not in a wallet at all (the proto is re-used elsewhere) * - Or it is stored but for other purposes, for example, because it is the overriding transaction of a double spend. * - Or the Pool enum got a new value which your software is too old to parse. * </pre> */ public boolean hasPool() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional .wallet.Transaction.Pool pool = 3;</code> * * <pre> * If pool is not present, that means either: * - This Transaction is either not in a wallet at all (the proto is re-used elsewhere) * - Or it is stored but for other purposes, for example, because it is the overriding transaction of a double spend. * - Or the Pool enum got a new value which your software is too old to parse. * </pre> */ public org.bitcoinj.wallet.Protos.Transaction.Pool getPool() { return pool_; } /** * <code>optional .wallet.Transaction.Pool pool = 3;</code> * * <pre> * If pool is not present, that means either: * - This Transaction is either not in a wallet at all (the proto is re-used elsewhere) * - Or it is stored but for other purposes, for example, because it is the overriding transaction of a double spend. * - Or the Pool enum got a new value which your software is too old to parse. * </pre> */ public Builder setPool(org.bitcoinj.wallet.Protos.Transaction.Pool value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000004; pool_ = value; onChanged(); return this; } /** * <code>optional .wallet.Transaction.Pool pool = 3;</code> * * <pre> * If pool is not present, that means either: * - This Transaction is either not in a wallet at all (the proto is re-used elsewhere) * - Or it is stored but for other purposes, for example, because it is the overriding transaction of a double spend. * - Or the Pool enum got a new value which your software is too old to parse. * </pre> */ public Builder clearPool() { bitField0_ = (bitField0_ & ~0x00000004); pool_ = org.bitcoinj.wallet.Protos.Transaction.Pool.UNSPENT; onChanged(); return this; } private int lockTime_ ; /** * <code>optional uint32 lock_time = 4;</code> * * <pre> * The nLockTime field is useful for contracts. * </pre> */ public boolean hasLockTime() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional uint32 lock_time = 4;</code> * * <pre> * The nLockTime field is useful for contracts. * </pre> */ public int getLockTime() { return lockTime_; } /** * <code>optional uint32 lock_time = 4;</code> * * <pre> * The nLockTime field is useful for contracts. * </pre> */ public Builder setLockTime(int value) { bitField0_ |= 0x00000008; lockTime_ = value; onChanged(); return this; } /** * <code>optional uint32 lock_time = 4;</code> * * <pre> * The nLockTime field is useful for contracts. * </pre> */ public Builder clearLockTime() { bitField0_ = (bitField0_ & ~0x00000008); lockTime_ = 0; onChanged(); return this; } private long updatedAt_ ; /** * <code>optional int64 updated_at = 5;</code> * * <pre> * millis since epoch the transaction was last updated * </pre> */ public boolean hasUpdatedAt() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * <code>optional int64 updated_at = 5;</code> * * <pre> * millis since epoch the transaction was last updated * </pre> */ public long getUpdatedAt() { return updatedAt_; } /** * <code>optional int64 updated_at = 5;</code> * * <pre> * millis since epoch the transaction was last updated * </pre> */ public Builder setUpdatedAt(long value) { bitField0_ |= 0x00000010; updatedAt_ = value; onChanged(); return this; } /** * <code>optional int64 updated_at = 5;</code> * * <pre> * millis since epoch the transaction was last updated * </pre> */ public Builder clearUpdatedAt() { bitField0_ = (bitField0_ & ~0x00000010); updatedAt_ = 0L; onChanged(); return this; } private java.util.List<org.bitcoinj.wallet.Protos.TransactionInput> transactionInput_ = java.util.Collections.emptyList(); private void ensureTransactionInputIsMutable() { if (!((bitField0_ & 0x00000020) == 0x00000020)) { transactionInput_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.TransactionInput>(transactionInput_); bitField0_ |= 0x00000020; } } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.TransactionInput, org.bitcoinj.wallet.Protos.TransactionInput.Builder, org.bitcoinj.wallet.Protos.TransactionInputOrBuilder> transactionInputBuilder_; /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.TransactionInput> getTransactionInputList() { if (transactionInputBuilder_ == null) { return java.util.Collections.unmodifiableList(transactionInput_); } else { return transactionInputBuilder_.getMessageList(); } } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public int getTransactionInputCount() { if (transactionInputBuilder_ == null) { return transactionInput_.size(); } else { return transactionInputBuilder_.getCount(); } } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public org.bitcoinj.wallet.Protos.TransactionInput getTransactionInput(int index) { if (transactionInputBuilder_ == null) { return transactionInput_.get(index); } else { return transactionInputBuilder_.getMessage(index); } } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public Builder setTransactionInput( int index, org.bitcoinj.wallet.Protos.TransactionInput value) { if (transactionInputBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTransactionInputIsMutable(); transactionInput_.set(index, value); onChanged(); } else { transactionInputBuilder_.setMessage(index, value); } return this; } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public Builder setTransactionInput( int index, org.bitcoinj.wallet.Protos.TransactionInput.Builder builderForValue) { if (transactionInputBuilder_ == null) { ensureTransactionInputIsMutable(); transactionInput_.set(index, builderForValue.build()); onChanged(); } else { transactionInputBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public Builder addTransactionInput(org.bitcoinj.wallet.Protos.TransactionInput value) { if (transactionInputBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTransactionInputIsMutable(); transactionInput_.add(value); onChanged(); } else { transactionInputBuilder_.addMessage(value); } return this; } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public Builder addTransactionInput( int index, org.bitcoinj.wallet.Protos.TransactionInput value) { if (transactionInputBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTransactionInputIsMutable(); transactionInput_.add(index, value); onChanged(); } else { transactionInputBuilder_.addMessage(index, value); } return this; } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public Builder addTransactionInput( org.bitcoinj.wallet.Protos.TransactionInput.Builder builderForValue) { if (transactionInputBuilder_ == null) { ensureTransactionInputIsMutable(); transactionInput_.add(builderForValue.build()); onChanged(); } else { transactionInputBuilder_.addMessage(builderForValue.build()); } return this; } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public Builder addTransactionInput( int index, org.bitcoinj.wallet.Protos.TransactionInput.Builder builderForValue) { if (transactionInputBuilder_ == null) { ensureTransactionInputIsMutable(); transactionInput_.add(index, builderForValue.build()); onChanged(); } else { transactionInputBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public Builder addAllTransactionInput( java.lang.Iterable<? extends org.bitcoinj.wallet.Protos.TransactionInput> values) { if (transactionInputBuilder_ == null) { ensureTransactionInputIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, transactionInput_); onChanged(); } else { transactionInputBuilder_.addAllMessages(values); } return this; } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public Builder clearTransactionInput() { if (transactionInputBuilder_ == null) { transactionInput_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000020); onChanged(); } else { transactionInputBuilder_.clear(); } return this; } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public Builder removeTransactionInput(int index) { if (transactionInputBuilder_ == null) { ensureTransactionInputIsMutable(); transactionInput_.remove(index); onChanged(); } else { transactionInputBuilder_.remove(index); } return this; } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public org.bitcoinj.wallet.Protos.TransactionInput.Builder getTransactionInputBuilder( int index) { return getTransactionInputFieldBuilder().getBuilder(index); } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public org.bitcoinj.wallet.Protos.TransactionInputOrBuilder getTransactionInputOrBuilder( int index) { if (transactionInputBuilder_ == null) { return transactionInput_.get(index); } else { return transactionInputBuilder_.getMessageOrBuilder(index); } } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.TransactionInputOrBuilder> getTransactionInputOrBuilderList() { if (transactionInputBuilder_ != null) { return transactionInputBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(transactionInput_); } } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public org.bitcoinj.wallet.Protos.TransactionInput.Builder addTransactionInputBuilder() { return getTransactionInputFieldBuilder().addBuilder( org.bitcoinj.wallet.Protos.TransactionInput.getDefaultInstance()); } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public org.bitcoinj.wallet.Protos.TransactionInput.Builder addTransactionInputBuilder( int index) { return getTransactionInputFieldBuilder().addBuilder( index, org.bitcoinj.wallet.Protos.TransactionInput.getDefaultInstance()); } /** * <code>repeated .wallet.TransactionInput transaction_input = 6;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.TransactionInput.Builder> getTransactionInputBuilderList() { return getTransactionInputFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.TransactionInput, org.bitcoinj.wallet.Protos.TransactionInput.Builder, org.bitcoinj.wallet.Protos.TransactionInputOrBuilder> getTransactionInputFieldBuilder() { if (transactionInputBuilder_ == null) { transactionInputBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.TransactionInput, org.bitcoinj.wallet.Protos.TransactionInput.Builder, org.bitcoinj.wallet.Protos.TransactionInputOrBuilder>( transactionInput_, ((bitField0_ & 0x00000020) == 0x00000020), getParentForChildren(), isClean()); transactionInput_ = null; } return transactionInputBuilder_; } private java.util.List<org.bitcoinj.wallet.Protos.TransactionOutput> transactionOutput_ = java.util.Collections.emptyList(); private void ensureTransactionOutputIsMutable() { if (!((bitField0_ & 0x00000040) == 0x00000040)) { transactionOutput_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.TransactionOutput>(transactionOutput_); bitField0_ |= 0x00000040; } } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.TransactionOutput, org.bitcoinj.wallet.Protos.TransactionOutput.Builder, org.bitcoinj.wallet.Protos.TransactionOutputOrBuilder> transactionOutputBuilder_; /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.TransactionOutput> getTransactionOutputList() { if (transactionOutputBuilder_ == null) { return java.util.Collections.unmodifiableList(transactionOutput_); } else { return transactionOutputBuilder_.getMessageList(); } } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public int getTransactionOutputCount() { if (transactionOutputBuilder_ == null) { return transactionOutput_.size(); } else { return transactionOutputBuilder_.getCount(); } } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public org.bitcoinj.wallet.Protos.TransactionOutput getTransactionOutput(int index) { if (transactionOutputBuilder_ == null) { return transactionOutput_.get(index); } else { return transactionOutputBuilder_.getMessage(index); } } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public Builder setTransactionOutput( int index, org.bitcoinj.wallet.Protos.TransactionOutput value) { if (transactionOutputBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTransactionOutputIsMutable(); transactionOutput_.set(index, value); onChanged(); } else { transactionOutputBuilder_.setMessage(index, value); } return this; } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public Builder setTransactionOutput( int index, org.bitcoinj.wallet.Protos.TransactionOutput.Builder builderForValue) { if (transactionOutputBuilder_ == null) { ensureTransactionOutputIsMutable(); transactionOutput_.set(index, builderForValue.build()); onChanged(); } else { transactionOutputBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public Builder addTransactionOutput(org.bitcoinj.wallet.Protos.TransactionOutput value) { if (transactionOutputBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTransactionOutputIsMutable(); transactionOutput_.add(value); onChanged(); } else { transactionOutputBuilder_.addMessage(value); } return this; } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public Builder addTransactionOutput( int index, org.bitcoinj.wallet.Protos.TransactionOutput value) { if (transactionOutputBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTransactionOutputIsMutable(); transactionOutput_.add(index, value); onChanged(); } else { transactionOutputBuilder_.addMessage(index, value); } return this; } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public Builder addTransactionOutput( org.bitcoinj.wallet.Protos.TransactionOutput.Builder builderForValue) { if (transactionOutputBuilder_ == null) { ensureTransactionOutputIsMutable(); transactionOutput_.add(builderForValue.build()); onChanged(); } else { transactionOutputBuilder_.addMessage(builderForValue.build()); } return this; } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public Builder addTransactionOutput( int index, org.bitcoinj.wallet.Protos.TransactionOutput.Builder builderForValue) { if (transactionOutputBuilder_ == null) { ensureTransactionOutputIsMutable(); transactionOutput_.add(index, builderForValue.build()); onChanged(); } else { transactionOutputBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public Builder addAllTransactionOutput( java.lang.Iterable<? extends org.bitcoinj.wallet.Protos.TransactionOutput> values) { if (transactionOutputBuilder_ == null) { ensureTransactionOutputIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, transactionOutput_); onChanged(); } else { transactionOutputBuilder_.addAllMessages(values); } return this; } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public Builder clearTransactionOutput() { if (transactionOutputBuilder_ == null) { transactionOutput_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000040); onChanged(); } else { transactionOutputBuilder_.clear(); } return this; } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public Builder removeTransactionOutput(int index) { if (transactionOutputBuilder_ == null) { ensureTransactionOutputIsMutable(); transactionOutput_.remove(index); onChanged(); } else { transactionOutputBuilder_.remove(index); } return this; } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public org.bitcoinj.wallet.Protos.TransactionOutput.Builder getTransactionOutputBuilder( int index) { return getTransactionOutputFieldBuilder().getBuilder(index); } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public org.bitcoinj.wallet.Protos.TransactionOutputOrBuilder getTransactionOutputOrBuilder( int index) { if (transactionOutputBuilder_ == null) { return transactionOutput_.get(index); } else { return transactionOutputBuilder_.getMessageOrBuilder(index); } } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.TransactionOutputOrBuilder> getTransactionOutputOrBuilderList() { if (transactionOutputBuilder_ != null) { return transactionOutputBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(transactionOutput_); } } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public org.bitcoinj.wallet.Protos.TransactionOutput.Builder addTransactionOutputBuilder() { return getTransactionOutputFieldBuilder().addBuilder( org.bitcoinj.wallet.Protos.TransactionOutput.getDefaultInstance()); } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public org.bitcoinj.wallet.Protos.TransactionOutput.Builder addTransactionOutputBuilder( int index) { return getTransactionOutputFieldBuilder().addBuilder( index, org.bitcoinj.wallet.Protos.TransactionOutput.getDefaultInstance()); } /** * <code>repeated .wallet.TransactionOutput transaction_output = 7;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.TransactionOutput.Builder> getTransactionOutputBuilderList() { return getTransactionOutputFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.TransactionOutput, org.bitcoinj.wallet.Protos.TransactionOutput.Builder, org.bitcoinj.wallet.Protos.TransactionOutputOrBuilder> getTransactionOutputFieldBuilder() { if (transactionOutputBuilder_ == null) { transactionOutputBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.TransactionOutput, org.bitcoinj.wallet.Protos.TransactionOutput.Builder, org.bitcoinj.wallet.Protos.TransactionOutputOrBuilder>( transactionOutput_, ((bitField0_ & 0x00000040) == 0x00000040), getParentForChildren(), isClean()); transactionOutput_ = null; } return transactionOutputBuilder_; } private java.util.List<com.google.protobuf.ByteString> blockHash_ = java.util.Collections.emptyList(); private void ensureBlockHashIsMutable() { if (!((bitField0_ & 0x00000080) == 0x00000080)) { blockHash_ = new java.util.ArrayList<com.google.protobuf.ByteString>(blockHash_); bitField0_ |= 0x00000080; } } /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ public java.util.List<com.google.protobuf.ByteString> getBlockHashList() { return java.util.Collections.unmodifiableList(blockHash_); } /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ public int getBlockHashCount() { return blockHash_.size(); } /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ public com.google.protobuf.ByteString getBlockHash(int index) { return blockHash_.get(index); } /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ public Builder setBlockHash( int index, com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } ensureBlockHashIsMutable(); blockHash_.set(index, value); onChanged(); return this; } /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ public Builder addBlockHash(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } ensureBlockHashIsMutable(); blockHash_.add(value); onChanged(); return this; } /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ public Builder addAllBlockHash( java.lang.Iterable<? extends com.google.protobuf.ByteString> values) { ensureBlockHashIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, blockHash_); onChanged(); return this; } /** * <code>repeated bytes block_hash = 8;</code> * * <pre> * A list of blocks in which the transaction has been observed (on any chain). Also, a number used to disambiguate * ordering within a block. * </pre> */ public Builder clearBlockHash() { blockHash_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000080); onChanged(); return this; } private java.util.List<java.lang.Integer> blockRelativityOffsets_ = java.util.Collections.emptyList(); private void ensureBlockRelativityOffsetsIsMutable() { if (!((bitField0_ & 0x00000100) == 0x00000100)) { blockRelativityOffsets_ = new java.util.ArrayList<java.lang.Integer>(blockRelativityOffsets_); bitField0_ |= 0x00000100; } } /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ public java.util.List<java.lang.Integer> getBlockRelativityOffsetsList() { return java.util.Collections.unmodifiableList(blockRelativityOffsets_); } /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ public int getBlockRelativityOffsetsCount() { return blockRelativityOffsets_.size(); } /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ public int getBlockRelativityOffsets(int index) { return blockRelativityOffsets_.get(index); } /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ public Builder setBlockRelativityOffsets( int index, int value) { ensureBlockRelativityOffsetsIsMutable(); blockRelativityOffsets_.set(index, value); onChanged(); return this; } /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ public Builder addBlockRelativityOffsets(int value) { ensureBlockRelativityOffsetsIsMutable(); blockRelativityOffsets_.add(value); onChanged(); return this; } /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ public Builder addAllBlockRelativityOffsets( java.lang.Iterable<? extends java.lang.Integer> values) { ensureBlockRelativityOffsetsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, blockRelativityOffsets_); onChanged(); return this; } /** * <code>repeated int32 block_relativity_offsets = 11;</code> */ public Builder clearBlockRelativityOffsets() { blockRelativityOffsets_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000100); onChanged(); return this; } private org.bitcoinj.wallet.Protos.TransactionConfidence confidence_ = org.bitcoinj.wallet.Protos.TransactionConfidence.getDefaultInstance(); private com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.TransactionConfidence, org.bitcoinj.wallet.Protos.TransactionConfidence.Builder, org.bitcoinj.wallet.Protos.TransactionConfidenceOrBuilder> confidenceBuilder_; /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ public boolean hasConfidence() { return ((bitField0_ & 0x00000200) == 0x00000200); } /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ public org.bitcoinj.wallet.Protos.TransactionConfidence getConfidence() { if (confidenceBuilder_ == null) { return confidence_; } else { return confidenceBuilder_.getMessage(); } } /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ public Builder setConfidence(org.bitcoinj.wallet.Protos.TransactionConfidence value) { if (confidenceBuilder_ == null) { if (value == null) { throw new NullPointerException(); } confidence_ = value; onChanged(); } else { confidenceBuilder_.setMessage(value); } bitField0_ |= 0x00000200; return this; } /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ public Builder setConfidence( org.bitcoinj.wallet.Protos.TransactionConfidence.Builder builderForValue) { if (confidenceBuilder_ == null) { confidence_ = builderForValue.build(); onChanged(); } else { confidenceBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000200; return this; } /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ public Builder mergeConfidence(org.bitcoinj.wallet.Protos.TransactionConfidence value) { if (confidenceBuilder_ == null) { if (((bitField0_ & 0x00000200) == 0x00000200) && confidence_ != org.bitcoinj.wallet.Protos.TransactionConfidence.getDefaultInstance()) { confidence_ = org.bitcoinj.wallet.Protos.TransactionConfidence.newBuilder(confidence_).mergeFrom(value).buildPartial(); } else { confidence_ = value; } onChanged(); } else { confidenceBuilder_.mergeFrom(value); } bitField0_ |= 0x00000200; return this; } /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ public Builder clearConfidence() { if (confidenceBuilder_ == null) { confidence_ = org.bitcoinj.wallet.Protos.TransactionConfidence.getDefaultInstance(); onChanged(); } else { confidenceBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000200); return this; } /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ public org.bitcoinj.wallet.Protos.TransactionConfidence.Builder getConfidenceBuilder() { bitField0_ |= 0x00000200; onChanged(); return getConfidenceFieldBuilder().getBuilder(); } /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ public org.bitcoinj.wallet.Protos.TransactionConfidenceOrBuilder getConfidenceOrBuilder() { if (confidenceBuilder_ != null) { return confidenceBuilder_.getMessageOrBuilder(); } else { return confidence_; } } /** * <code>optional .wallet.TransactionConfidence confidence = 9;</code> * * <pre> * Data describing where the transaction is in the chain. * </pre> */ private com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.TransactionConfidence, org.bitcoinj.wallet.Protos.TransactionConfidence.Builder, org.bitcoinj.wallet.Protos.TransactionConfidenceOrBuilder> getConfidenceFieldBuilder() { if (confidenceBuilder_ == null) { confidenceBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.TransactionConfidence, org.bitcoinj.wallet.Protos.TransactionConfidence.Builder, org.bitcoinj.wallet.Protos.TransactionConfidenceOrBuilder>( getConfidence(), getParentForChildren(), isClean()); confidence_ = null; } return confidenceBuilder_; } private org.bitcoinj.wallet.Protos.Transaction.Purpose purpose_ = org.bitcoinj.wallet.Protos.Transaction.Purpose.UNKNOWN; /** * <code>optional .wallet.Transaction.Purpose purpose = 10 [default = UNKNOWN];</code> */ public boolean hasPurpose() { return ((bitField0_ & 0x00000400) == 0x00000400); } /** * <code>optional .wallet.Transaction.Purpose purpose = 10 [default = UNKNOWN];</code> */ public org.bitcoinj.wallet.Protos.Transaction.Purpose getPurpose() { return purpose_; } /** * <code>optional .wallet.Transaction.Purpose purpose = 10 [default = UNKNOWN];</code> */ public Builder setPurpose(org.bitcoinj.wallet.Protos.Transaction.Purpose value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000400; purpose_ = value; onChanged(); return this; } /** * <code>optional .wallet.Transaction.Purpose purpose = 10 [default = UNKNOWN];</code> */ public Builder clearPurpose() { bitField0_ = (bitField0_ & ~0x00000400); purpose_ = org.bitcoinj.wallet.Protos.Transaction.Purpose.UNKNOWN; onChanged(); return this; } private org.bitcoinj.wallet.Protos.ExchangeRate exchangeRate_ = org.bitcoinj.wallet.Protos.ExchangeRate.getDefaultInstance(); private com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.ExchangeRate, org.bitcoinj.wallet.Protos.ExchangeRate.Builder, org.bitcoinj.wallet.Protos.ExchangeRateOrBuilder> exchangeRateBuilder_; /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ public boolean hasExchangeRate() { return ((bitField0_ & 0x00000800) == 0x00000800); } /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ public org.bitcoinj.wallet.Protos.ExchangeRate getExchangeRate() { if (exchangeRateBuilder_ == null) { return exchangeRate_; } else { return exchangeRateBuilder_.getMessage(); } } /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ public Builder setExchangeRate(org.bitcoinj.wallet.Protos.ExchangeRate value) { if (exchangeRateBuilder_ == null) { if (value == null) { throw new NullPointerException(); } exchangeRate_ = value; onChanged(); } else { exchangeRateBuilder_.setMessage(value); } bitField0_ |= 0x00000800; return this; } /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ public Builder setExchangeRate( org.bitcoinj.wallet.Protos.ExchangeRate.Builder builderForValue) { if (exchangeRateBuilder_ == null) { exchangeRate_ = builderForValue.build(); onChanged(); } else { exchangeRateBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000800; return this; } /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ public Builder mergeExchangeRate(org.bitcoinj.wallet.Protos.ExchangeRate value) { if (exchangeRateBuilder_ == null) { if (((bitField0_ & 0x00000800) == 0x00000800) && exchangeRate_ != org.bitcoinj.wallet.Protos.ExchangeRate.getDefaultInstance()) { exchangeRate_ = org.bitcoinj.wallet.Protos.ExchangeRate.newBuilder(exchangeRate_).mergeFrom(value).buildPartial(); } else { exchangeRate_ = value; } onChanged(); } else { exchangeRateBuilder_.mergeFrom(value); } bitField0_ |= 0x00000800; return this; } /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ public Builder clearExchangeRate() { if (exchangeRateBuilder_ == null) { exchangeRate_ = org.bitcoinj.wallet.Protos.ExchangeRate.getDefaultInstance(); onChanged(); } else { exchangeRateBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000800); return this; } /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ public org.bitcoinj.wallet.Protos.ExchangeRate.Builder getExchangeRateBuilder() { bitField0_ |= 0x00000800; onChanged(); return getExchangeRateFieldBuilder().getBuilder(); } /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ public org.bitcoinj.wallet.Protos.ExchangeRateOrBuilder getExchangeRateOrBuilder() { if (exchangeRateBuilder_ != null) { return exchangeRateBuilder_.getMessageOrBuilder(); } else { return exchangeRate_; } } /** * <code>optional .wallet.ExchangeRate exchange_rate = 12;</code> * * <pre> * Exchange rate that was valid when the transaction was sent. * </pre> */ private com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.ExchangeRate, org.bitcoinj.wallet.Protos.ExchangeRate.Builder, org.bitcoinj.wallet.Protos.ExchangeRateOrBuilder> getExchangeRateFieldBuilder() { if (exchangeRateBuilder_ == null) { exchangeRateBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.ExchangeRate, org.bitcoinj.wallet.Protos.ExchangeRate.Builder, org.bitcoinj.wallet.Protos.ExchangeRateOrBuilder>( getExchangeRate(), getParentForChildren(), isClean()); exchangeRate_ = null; } return exchangeRateBuilder_; } private java.lang.Object memo_ = ""; /** * <code>optional string memo = 13;</code> * * <pre> * Memo of the transaction. It can be used to record the memo of the payment request that initiated the * transaction. * </pre> */ public boolean hasMemo() { return ((bitField0_ & 0x00001000) == 0x00001000); } /** * <code>optional string memo = 13;</code> * * <pre> * Memo of the transaction. It can be used to record the memo of the payment request that initiated the * transaction. * </pre> */ public java.lang.String getMemo() { java.lang.Object ref = memo_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { memo_ = s; } return s; } else { return (java.lang.String) ref; } } /** * <code>optional string memo = 13;</code> * * <pre> * Memo of the transaction. It can be used to record the memo of the payment request that initiated the * transaction. * </pre> */ public com.google.protobuf.ByteString getMemoBytes() { java.lang.Object ref = memo_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); memo_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * <code>optional string memo = 13;</code> * * <pre> * Memo of the transaction. It can be used to record the memo of the payment request that initiated the * transaction. * </pre> */ public Builder setMemo( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00001000; memo_ = value; onChanged(); return this; } /** * <code>optional string memo = 13;</code> * * <pre> * Memo of the transaction. It can be used to record the memo of the payment request that initiated the * transaction. * </pre> */ public Builder clearMemo() { bitField0_ = (bitField0_ & ~0x00001000); memo_ = getDefaultInstance().getMemo(); onChanged(); return this; } /** * <code>optional string memo = 13;</code> * * <pre> * Memo of the transaction. It can be used to record the memo of the payment request that initiated the * transaction. * </pre> */ public Builder setMemoBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00001000; memo_ = value; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.Transaction) } static { defaultInstance = new Transaction(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.Transaction) } public interface ScryptParametersOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.ScryptParameters) com.google.protobuf.MessageOrBuilder { /** * <code>required bytes salt = 1;</code> * * <pre> * Salt to use in generation of the wallet password (8 bytes) * </pre> */ boolean hasSalt(); /** * <code>required bytes salt = 1;</code> * * <pre> * Salt to use in generation of the wallet password (8 bytes) * </pre> */ com.google.protobuf.ByteString getSalt(); /** * <code>optional int64 n = 2 [default = 16384];</code> * * <pre> * CPU/ memory cost parameter * </pre> */ boolean hasN(); /** * <code>optional int64 n = 2 [default = 16384];</code> * * <pre> * CPU/ memory cost parameter * </pre> */ long getN(); /** * <code>optional int32 r = 3 [default = 8];</code> * * <pre> * Block size parameter * </pre> */ boolean hasR(); /** * <code>optional int32 r = 3 [default = 8];</code> * * <pre> * Block size parameter * </pre> */ int getR(); /** * <code>optional int32 p = 4 [default = 1];</code> * * <pre> * Parallelisation parameter * </pre> */ boolean hasP(); /** * <code>optional int32 p = 4 [default = 1];</code> * * <pre> * Parallelisation parameter * </pre> */ int getP(); } /** * Protobuf type {@code wallet.ScryptParameters} * * <pre> ** The parameters used in the scrypt key derivation function. * The default values are taken from http://www.tarsnap.com/scrypt/scrypt-slides.pdf. * They can be increased - n is the number of iterations performed and * r and p can be used to tweak the algorithm - see: * http://stackoverflow.com/questions/11126315/what-are-optimal-scrypt-work-factors * </pre> */ public static final class ScryptParameters extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.ScryptParameters) ScryptParametersOrBuilder { // Use ScryptParameters.newBuilder() to construct. private ScryptParameters(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private ScryptParameters(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final ScryptParameters defaultInstance; public static ScryptParameters getDefaultInstance() { return defaultInstance; } public ScryptParameters getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private ScryptParameters( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { bitField0_ |= 0x00000001; salt_ = input.readBytes(); break; } case 16: { bitField0_ |= 0x00000002; n_ = input.readInt64(); break; } case 24: { bitField0_ |= 0x00000004; r_ = input.readInt32(); break; } case 32: { bitField0_ |= 0x00000008; p_ = input.readInt32(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_ScryptParameters_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_ScryptParameters_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.ScryptParameters.class, org.bitcoinj.wallet.Protos.ScryptParameters.Builder.class); } public static com.google.protobuf.Parser<ScryptParameters> PARSER = new com.google.protobuf.AbstractParser<ScryptParameters>() { public ScryptParameters parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new ScryptParameters(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<ScryptParameters> getParserForType() { return PARSER; } private int bitField0_; public static final int SALT_FIELD_NUMBER = 1; private com.google.protobuf.ByteString salt_; /** * <code>required bytes salt = 1;</code> * * <pre> * Salt to use in generation of the wallet password (8 bytes) * </pre> */ public boolean hasSalt() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required bytes salt = 1;</code> * * <pre> * Salt to use in generation of the wallet password (8 bytes) * </pre> */ public com.google.protobuf.ByteString getSalt() { return salt_; } public static final int N_FIELD_NUMBER = 2; private long n_; /** * <code>optional int64 n = 2 [default = 16384];</code> * * <pre> * CPU/ memory cost parameter * </pre> */ public boolean hasN() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>optional int64 n = 2 [default = 16384];</code> * * <pre> * CPU/ memory cost parameter * </pre> */ public long getN() { return n_; } public static final int R_FIELD_NUMBER = 3; private int r_; /** * <code>optional int32 r = 3 [default = 8];</code> * * <pre> * Block size parameter * </pre> */ public boolean hasR() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional int32 r = 3 [default = 8];</code> * * <pre> * Block size parameter * </pre> */ public int getR() { return r_; } public static final int P_FIELD_NUMBER = 4; private int p_; /** * <code>optional int32 p = 4 [default = 1];</code> * * <pre> * Parallelisation parameter * </pre> */ public boolean hasP() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional int32 p = 4 [default = 1];</code> * * <pre> * Parallelisation parameter * </pre> */ public int getP() { return p_; } private void initFields() { salt_ = com.google.protobuf.ByteString.EMPTY; n_ = 16384L; r_ = 8; p_ = 1; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasSalt()) { memoizedIsInitialized = 0; return false; } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeBytes(1, salt_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeInt64(2, n_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeInt32(3, r_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { output.writeInt32(4, p_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, salt_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(2, n_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeInt32Size(3, r_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { size += com.google.protobuf.CodedOutputStream .computeInt32Size(4, p_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.ScryptParameters parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.ScryptParameters parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.ScryptParameters parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.ScryptParameters parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.ScryptParameters parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.ScryptParameters parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.ScryptParameters parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.ScryptParameters parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.ScryptParameters parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.ScryptParameters parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.ScryptParameters prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.ScryptParameters} * * <pre> ** The parameters used in the scrypt key derivation function. * The default values are taken from http://www.tarsnap.com/scrypt/scrypt-slides.pdf. * They can be increased - n is the number of iterations performed and * r and p can be used to tweak the algorithm - see: * http://stackoverflow.com/questions/11126315/what-are-optimal-scrypt-work-factors * </pre> */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.ScryptParameters) org.bitcoinj.wallet.Protos.ScryptParametersOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_ScryptParameters_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_ScryptParameters_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.ScryptParameters.class, org.bitcoinj.wallet.Protos.ScryptParameters.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.ScryptParameters.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); salt_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); n_ = 16384L; bitField0_ = (bitField0_ & ~0x00000002); r_ = 8; bitField0_ = (bitField0_ & ~0x00000004); p_ = 1; bitField0_ = (bitField0_ & ~0x00000008); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_ScryptParameters_descriptor; } public org.bitcoinj.wallet.Protos.ScryptParameters getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.ScryptParameters.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.ScryptParameters build() { org.bitcoinj.wallet.Protos.ScryptParameters result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.ScryptParameters buildPartial() { org.bitcoinj.wallet.Protos.ScryptParameters result = new org.bitcoinj.wallet.Protos.ScryptParameters(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.salt_ = salt_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.n_ = n_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } result.r_ = r_; if (((from_bitField0_ & 0x00000008) == 0x00000008)) { to_bitField0_ |= 0x00000008; } result.p_ = p_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.ScryptParameters) { return mergeFrom((org.bitcoinj.wallet.Protos.ScryptParameters)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.ScryptParameters other) { if (other == org.bitcoinj.wallet.Protos.ScryptParameters.getDefaultInstance()) return this; if (other.hasSalt()) { setSalt(other.getSalt()); } if (other.hasN()) { setN(other.getN()); } if (other.hasR()) { setR(other.getR()); } if (other.hasP()) { setP(other.getP()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasSalt()) { return false; } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.ScryptParameters parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.ScryptParameters) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private com.google.protobuf.ByteString salt_ = com.google.protobuf.ByteString.EMPTY; /** * <code>required bytes salt = 1;</code> * * <pre> * Salt to use in generation of the wallet password (8 bytes) * </pre> */ public boolean hasSalt() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required bytes salt = 1;</code> * * <pre> * Salt to use in generation of the wallet password (8 bytes) * </pre> */ public com.google.protobuf.ByteString getSalt() { return salt_; } /** * <code>required bytes salt = 1;</code> * * <pre> * Salt to use in generation of the wallet password (8 bytes) * </pre> */ public Builder setSalt(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; salt_ = value; onChanged(); return this; } /** * <code>required bytes salt = 1;</code> * * <pre> * Salt to use in generation of the wallet password (8 bytes) * </pre> */ public Builder clearSalt() { bitField0_ = (bitField0_ & ~0x00000001); salt_ = getDefaultInstance().getSalt(); onChanged(); return this; } private long n_ = 16384L; /** * <code>optional int64 n = 2 [default = 16384];</code> * * <pre> * CPU/ memory cost parameter * </pre> */ public boolean hasN() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>optional int64 n = 2 [default = 16384];</code> * * <pre> * CPU/ memory cost parameter * </pre> */ public long getN() { return n_; } /** * <code>optional int64 n = 2 [default = 16384];</code> * * <pre> * CPU/ memory cost parameter * </pre> */ public Builder setN(long value) { bitField0_ |= 0x00000002; n_ = value; onChanged(); return this; } /** * <code>optional int64 n = 2 [default = 16384];</code> * * <pre> * CPU/ memory cost parameter * </pre> */ public Builder clearN() { bitField0_ = (bitField0_ & ~0x00000002); n_ = 16384L; onChanged(); return this; } private int r_ = 8; /** * <code>optional int32 r = 3 [default = 8];</code> * * <pre> * Block size parameter * </pre> */ public boolean hasR() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional int32 r = 3 [default = 8];</code> * * <pre> * Block size parameter * </pre> */ public int getR() { return r_; } /** * <code>optional int32 r = 3 [default = 8];</code> * * <pre> * Block size parameter * </pre> */ public Builder setR(int value) { bitField0_ |= 0x00000004; r_ = value; onChanged(); return this; } /** * <code>optional int32 r = 3 [default = 8];</code> * * <pre> * Block size parameter * </pre> */ public Builder clearR() { bitField0_ = (bitField0_ & ~0x00000004); r_ = 8; onChanged(); return this; } private int p_ = 1; /** * <code>optional int32 p = 4 [default = 1];</code> * * <pre> * Parallelisation parameter * </pre> */ public boolean hasP() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional int32 p = 4 [default = 1];</code> * * <pre> * Parallelisation parameter * </pre> */ public int getP() { return p_; } /** * <code>optional int32 p = 4 [default = 1];</code> * * <pre> * Parallelisation parameter * </pre> */ public Builder setP(int value) { bitField0_ |= 0x00000008; p_ = value; onChanged(); return this; } /** * <code>optional int32 p = 4 [default = 1];</code> * * <pre> * Parallelisation parameter * </pre> */ public Builder clearP() { bitField0_ = (bitField0_ & ~0x00000008); p_ = 1; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.ScryptParameters) } static { defaultInstance = new ScryptParameters(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.ScryptParameters) } public interface ExtensionOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.Extension) com.google.protobuf.MessageOrBuilder { /** * <code>required string id = 1;</code> * * <pre> * like org.whatever.foo.bar * </pre> */ boolean hasId(); /** * <code>required string id = 1;</code> * * <pre> * like org.whatever.foo.bar * </pre> */ java.lang.String getId(); /** * <code>required string id = 1;</code> * * <pre> * like org.whatever.foo.bar * </pre> */ com.google.protobuf.ByteString getIdBytes(); /** * <code>required bytes data = 2;</code> */ boolean hasData(); /** * <code>required bytes data = 2;</code> */ com.google.protobuf.ByteString getData(); /** * <code>required bool mandatory = 3;</code> * * <pre> * If we do not understand a mandatory extension, abort to prevent data loss. * For example, this could be applied to a new type of holding, such as a contract, where * dropping of an extension in a read/write cycle could cause loss of value. * </pre> */ boolean hasMandatory(); /** * <code>required bool mandatory = 3;</code> * * <pre> * If we do not understand a mandatory extension, abort to prevent data loss. * For example, this could be applied to a new type of holding, such as a contract, where * dropping of an extension in a read/write cycle could cause loss of value. * </pre> */ boolean getMandatory(); } /** * Protobuf type {@code wallet.Extension} * * <pre> ** An extension to the wallet * </pre> */ public static final class Extension extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.Extension) ExtensionOrBuilder { // Use Extension.newBuilder() to construct. private Extension(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private Extension(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final Extension defaultInstance; public static Extension getDefaultInstance() { return defaultInstance; } public Extension getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private Extension( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000001; id_ = bs; break; } case 18: { bitField0_ |= 0x00000002; data_ = input.readBytes(); break; } case 24: { bitField0_ |= 0x00000004; mandatory_ = input.readBool(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Extension_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Extension_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.Extension.class, org.bitcoinj.wallet.Protos.Extension.Builder.class); } public static com.google.protobuf.Parser<Extension> PARSER = new com.google.protobuf.AbstractParser<Extension>() { public Extension parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new Extension(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<Extension> getParserForType() { return PARSER; } private int bitField0_; public static final int ID_FIELD_NUMBER = 1; private java.lang.Object id_; /** * <code>required string id = 1;</code> * * <pre> * like org.whatever.foo.bar * </pre> */ public boolean hasId() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required string id = 1;</code> * * <pre> * like org.whatever.foo.bar * </pre> */ public java.lang.String getId() { java.lang.Object ref = id_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { id_ = s; } return s; } } /** * <code>required string id = 1;</code> * * <pre> * like org.whatever.foo.bar * </pre> */ public com.google.protobuf.ByteString getIdBytes() { java.lang.Object ref = id_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); id_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int DATA_FIELD_NUMBER = 2; private com.google.protobuf.ByteString data_; /** * <code>required bytes data = 2;</code> */ public boolean hasData() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required bytes data = 2;</code> */ public com.google.protobuf.ByteString getData() { return data_; } public static final int MANDATORY_FIELD_NUMBER = 3; private boolean mandatory_; /** * <code>required bool mandatory = 3;</code> * * <pre> * If we do not understand a mandatory extension, abort to prevent data loss. * For example, this could be applied to a new type of holding, such as a contract, where * dropping of an extension in a read/write cycle could cause loss of value. * </pre> */ public boolean hasMandatory() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>required bool mandatory = 3;</code> * * <pre> * If we do not understand a mandatory extension, abort to prevent data loss. * For example, this could be applied to a new type of holding, such as a contract, where * dropping of an extension in a read/write cycle could cause loss of value. * </pre> */ public boolean getMandatory() { return mandatory_; } private void initFields() { id_ = ""; data_ = com.google.protobuf.ByteString.EMPTY; mandatory_ = false; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasId()) { memoizedIsInitialized = 0; return false; } if (!hasData()) { memoizedIsInitialized = 0; return false; } if (!hasMandatory()) { memoizedIsInitialized = 0; return false; } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeBytes(1, getIdBytes()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeBytes(2, data_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeBool(3, mandatory_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, getIdBytes()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(2, data_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeBoolSize(3, mandatory_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.Extension parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.Extension parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Extension parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.Extension parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Extension parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.Extension parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Extension parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.Extension parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Extension parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.Extension parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.Extension prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.Extension} * * <pre> ** An extension to the wallet * </pre> */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.Extension) org.bitcoinj.wallet.Protos.ExtensionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Extension_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Extension_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.Extension.class, org.bitcoinj.wallet.Protos.Extension.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.Extension.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); id_ = ""; bitField0_ = (bitField0_ & ~0x00000001); data_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000002); mandatory_ = false; bitField0_ = (bitField0_ & ~0x00000004); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Extension_descriptor; } public org.bitcoinj.wallet.Protos.Extension getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.Extension.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.Extension build() { org.bitcoinj.wallet.Protos.Extension result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.Extension buildPartial() { org.bitcoinj.wallet.Protos.Extension result = new org.bitcoinj.wallet.Protos.Extension(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.id_ = id_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.data_ = data_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } result.mandatory_ = mandatory_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.Extension) { return mergeFrom((org.bitcoinj.wallet.Protos.Extension)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.Extension other) { if (other == org.bitcoinj.wallet.Protos.Extension.getDefaultInstance()) return this; if (other.hasId()) { bitField0_ |= 0x00000001; id_ = other.id_; onChanged(); } if (other.hasData()) { setData(other.getData()); } if (other.hasMandatory()) { setMandatory(other.getMandatory()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasId()) { return false; } if (!hasData()) { return false; } if (!hasMandatory()) { return false; } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.Extension parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.Extension) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private java.lang.Object id_ = ""; /** * <code>required string id = 1;</code> * * <pre> * like org.whatever.foo.bar * </pre> */ public boolean hasId() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required string id = 1;</code> * * <pre> * like org.whatever.foo.bar * </pre> */ public java.lang.String getId() { java.lang.Object ref = id_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { id_ = s; } return s; } else { return (java.lang.String) ref; } } /** * <code>required string id = 1;</code> * * <pre> * like org.whatever.foo.bar * </pre> */ public com.google.protobuf.ByteString getIdBytes() { java.lang.Object ref = id_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); id_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * <code>required string id = 1;</code> * * <pre> * like org.whatever.foo.bar * </pre> */ public Builder setId( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; id_ = value; onChanged(); return this; } /** * <code>required string id = 1;</code> * * <pre> * like org.whatever.foo.bar * </pre> */ public Builder clearId() { bitField0_ = (bitField0_ & ~0x00000001); id_ = getDefaultInstance().getId(); onChanged(); return this; } /** * <code>required string id = 1;</code> * * <pre> * like org.whatever.foo.bar * </pre> */ public Builder setIdBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; id_ = value; onChanged(); return this; } private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY; /** * <code>required bytes data = 2;</code> */ public boolean hasData() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required bytes data = 2;</code> */ public com.google.protobuf.ByteString getData() { return data_; } /** * <code>required bytes data = 2;</code> */ public Builder setData(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000002; data_ = value; onChanged(); return this; } /** * <code>required bytes data = 2;</code> */ public Builder clearData() { bitField0_ = (bitField0_ & ~0x00000002); data_ = getDefaultInstance().getData(); onChanged(); return this; } private boolean mandatory_ ; /** * <code>required bool mandatory = 3;</code> * * <pre> * If we do not understand a mandatory extension, abort to prevent data loss. * For example, this could be applied to a new type of holding, such as a contract, where * dropping of an extension in a read/write cycle could cause loss of value. * </pre> */ public boolean hasMandatory() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>required bool mandatory = 3;</code> * * <pre> * If we do not understand a mandatory extension, abort to prevent data loss. * For example, this could be applied to a new type of holding, such as a contract, where * dropping of an extension in a read/write cycle could cause loss of value. * </pre> */ public boolean getMandatory() { return mandatory_; } /** * <code>required bool mandatory = 3;</code> * * <pre> * If we do not understand a mandatory extension, abort to prevent data loss. * For example, this could be applied to a new type of holding, such as a contract, where * dropping of an extension in a read/write cycle could cause loss of value. * </pre> */ public Builder setMandatory(boolean value) { bitField0_ |= 0x00000004; mandatory_ = value; onChanged(); return this; } /** * <code>required bool mandatory = 3;</code> * * <pre> * If we do not understand a mandatory extension, abort to prevent data loss. * For example, this could be applied to a new type of holding, such as a contract, where * dropping of an extension in a read/write cycle could cause loss of value. * </pre> */ public Builder clearMandatory() { bitField0_ = (bitField0_ & ~0x00000004); mandatory_ = false; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.Extension) } static { defaultInstance = new Extension(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.Extension) } public interface TagOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.Tag) com.google.protobuf.MessageOrBuilder { /** * <code>required string tag = 1;</code> */ boolean hasTag(); /** * <code>required string tag = 1;</code> */ java.lang.String getTag(); /** * <code>required string tag = 1;</code> */ com.google.protobuf.ByteString getTagBytes(); /** * <code>required bytes data = 2;</code> */ boolean hasData(); /** * <code>required bytes data = 2;</code> */ com.google.protobuf.ByteString getData(); } /** * Protobuf type {@code wallet.Tag} * * <pre> ** * A simple key->value mapping that has no interpreted content at all. A bit like the extensions mechanism except * an extension is keyed by the ID of a piece of code that's loaded with the given data, and has the concept of * being mandatory if that code isn't found. Whereas this is just a blind key/value store. * </pre> */ public static final class Tag extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.Tag) TagOrBuilder { // Use Tag.newBuilder() to construct. private Tag(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private Tag(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final Tag defaultInstance; public static Tag getDefaultInstance() { return defaultInstance; } public Tag getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private Tag( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000001; tag_ = bs; break; } case 18: { bitField0_ |= 0x00000002; data_ = input.readBytes(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Tag_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Tag_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.Tag.class, org.bitcoinj.wallet.Protos.Tag.Builder.class); } public static com.google.protobuf.Parser<Tag> PARSER = new com.google.protobuf.AbstractParser<Tag>() { public Tag parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new Tag(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<Tag> getParserForType() { return PARSER; } private int bitField0_; public static final int TAG_FIELD_NUMBER = 1; private java.lang.Object tag_; /** * <code>required string tag = 1;</code> */ public boolean hasTag() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required string tag = 1;</code> */ public java.lang.String getTag() { java.lang.Object ref = tag_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { tag_ = s; } return s; } } /** * <code>required string tag = 1;</code> */ public com.google.protobuf.ByteString getTagBytes() { java.lang.Object ref = tag_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); tag_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int DATA_FIELD_NUMBER = 2; private com.google.protobuf.ByteString data_; /** * <code>required bytes data = 2;</code> */ public boolean hasData() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required bytes data = 2;</code> */ public com.google.protobuf.ByteString getData() { return data_; } private void initFields() { tag_ = ""; data_ = com.google.protobuf.ByteString.EMPTY; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasTag()) { memoizedIsInitialized = 0; return false; } if (!hasData()) { memoizedIsInitialized = 0; return false; } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeBytes(1, getTagBytes()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeBytes(2, data_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, getTagBytes()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(2, data_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.Tag parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.Tag parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Tag parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.Tag parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Tag parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.Tag parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Tag parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.Tag parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Tag parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.Tag parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.Tag prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.Tag} * * <pre> ** * A simple key->value mapping that has no interpreted content at all. A bit like the extensions mechanism except * an extension is keyed by the ID of a piece of code that's loaded with the given data, and has the concept of * being mandatory if that code isn't found. Whereas this is just a blind key/value store. * </pre> */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.Tag) org.bitcoinj.wallet.Protos.TagOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Tag_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Tag_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.Tag.class, org.bitcoinj.wallet.Protos.Tag.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.Tag.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); tag_ = ""; bitField0_ = (bitField0_ & ~0x00000001); data_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000002); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Tag_descriptor; } public org.bitcoinj.wallet.Protos.Tag getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.Tag.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.Tag build() { org.bitcoinj.wallet.Protos.Tag result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.Tag buildPartial() { org.bitcoinj.wallet.Protos.Tag result = new org.bitcoinj.wallet.Protos.Tag(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.tag_ = tag_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.data_ = data_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.Tag) { return mergeFrom((org.bitcoinj.wallet.Protos.Tag)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.Tag other) { if (other == org.bitcoinj.wallet.Protos.Tag.getDefaultInstance()) return this; if (other.hasTag()) { bitField0_ |= 0x00000001; tag_ = other.tag_; onChanged(); } if (other.hasData()) { setData(other.getData()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasTag()) { return false; } if (!hasData()) { return false; } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.Tag parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.Tag) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private java.lang.Object tag_ = ""; /** * <code>required string tag = 1;</code> */ public boolean hasTag() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required string tag = 1;</code> */ public java.lang.String getTag() { java.lang.Object ref = tag_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { tag_ = s; } return s; } else { return (java.lang.String) ref; } } /** * <code>required string tag = 1;</code> */ public com.google.protobuf.ByteString getTagBytes() { java.lang.Object ref = tag_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); tag_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * <code>required string tag = 1;</code> */ public Builder setTag( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; tag_ = value; onChanged(); return this; } /** * <code>required string tag = 1;</code> */ public Builder clearTag() { bitField0_ = (bitField0_ & ~0x00000001); tag_ = getDefaultInstance().getTag(); onChanged(); return this; } /** * <code>required string tag = 1;</code> */ public Builder setTagBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; tag_ = value; onChanged(); return this; } private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY; /** * <code>required bytes data = 2;</code> */ public boolean hasData() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required bytes data = 2;</code> */ public com.google.protobuf.ByteString getData() { return data_; } /** * <code>required bytes data = 2;</code> */ public Builder setData(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000002; data_ = value; onChanged(); return this; } /** * <code>required bytes data = 2;</code> */ public Builder clearData() { bitField0_ = (bitField0_ & ~0x00000002); data_ = getDefaultInstance().getData(); onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.Tag) } static { defaultInstance = new Tag(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.Tag) } public interface TransactionSignerOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.TransactionSigner) com.google.protobuf.MessageOrBuilder { /** * <code>required string class_name = 1;</code> * * <pre> * fully qualified class name of TransactionSigner implementation * </pre> */ boolean hasClassName(); /** * <code>required string class_name = 1;</code> * * <pre> * fully qualified class name of TransactionSigner implementation * </pre> */ java.lang.String getClassName(); /** * <code>required string class_name = 1;</code> * * <pre> * fully qualified class name of TransactionSigner implementation * </pre> */ com.google.protobuf.ByteString getClassNameBytes(); /** * <code>optional bytes data = 2;</code> * * <pre> * arbitrary data required for signer to function * </pre> */ boolean hasData(); /** * <code>optional bytes data = 2;</code> * * <pre> * arbitrary data required for signer to function * </pre> */ com.google.protobuf.ByteString getData(); } /** * Protobuf type {@code wallet.TransactionSigner} * * <pre> ** * Data required to reconstruct TransactionSigner. * </pre> */ public static final class TransactionSigner extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.TransactionSigner) TransactionSignerOrBuilder { // Use TransactionSigner.newBuilder() to construct. private TransactionSigner(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private TransactionSigner(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final TransactionSigner defaultInstance; public static TransactionSigner getDefaultInstance() { return defaultInstance; } public TransactionSigner getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private TransactionSigner( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000001; className_ = bs; break; } case 18: { bitField0_ |= 0x00000002; data_ = input.readBytes(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionSigner_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionSigner_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.TransactionSigner.class, org.bitcoinj.wallet.Protos.TransactionSigner.Builder.class); } public static com.google.protobuf.Parser<TransactionSigner> PARSER = new com.google.protobuf.AbstractParser<TransactionSigner>() { public TransactionSigner parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new TransactionSigner(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<TransactionSigner> getParserForType() { return PARSER; } private int bitField0_; public static final int CLASS_NAME_FIELD_NUMBER = 1; private java.lang.Object className_; /** * <code>required string class_name = 1;</code> * * <pre> * fully qualified class name of TransactionSigner implementation * </pre> */ public boolean hasClassName() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required string class_name = 1;</code> * * <pre> * fully qualified class name of TransactionSigner implementation * </pre> */ public java.lang.String getClassName() { java.lang.Object ref = className_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { className_ = s; } return s; } } /** * <code>required string class_name = 1;</code> * * <pre> * fully qualified class name of TransactionSigner implementation * </pre> */ public com.google.protobuf.ByteString getClassNameBytes() { java.lang.Object ref = className_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); className_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int DATA_FIELD_NUMBER = 2; private com.google.protobuf.ByteString data_; /** * <code>optional bytes data = 2;</code> * * <pre> * arbitrary data required for signer to function * </pre> */ public boolean hasData() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>optional bytes data = 2;</code> * * <pre> * arbitrary data required for signer to function * </pre> */ public com.google.protobuf.ByteString getData() { return data_; } private void initFields() { className_ = ""; data_ = com.google.protobuf.ByteString.EMPTY; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasClassName()) { memoizedIsInitialized = 0; return false; } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeBytes(1, getClassNameBytes()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeBytes(2, data_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, getClassNameBytes()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(2, data_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.TransactionSigner parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.TransactionSigner parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionSigner parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.TransactionSigner parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionSigner parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.TransactionSigner parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionSigner parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.TransactionSigner parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.TransactionSigner parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.TransactionSigner parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.TransactionSigner prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.TransactionSigner} * * <pre> ** * Data required to reconstruct TransactionSigner. * </pre> */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.TransactionSigner) org.bitcoinj.wallet.Protos.TransactionSignerOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionSigner_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionSigner_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.TransactionSigner.class, org.bitcoinj.wallet.Protos.TransactionSigner.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.TransactionSigner.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); className_ = ""; bitField0_ = (bitField0_ & ~0x00000001); data_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000002); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_TransactionSigner_descriptor; } public org.bitcoinj.wallet.Protos.TransactionSigner getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.TransactionSigner.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.TransactionSigner build() { org.bitcoinj.wallet.Protos.TransactionSigner result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.TransactionSigner buildPartial() { org.bitcoinj.wallet.Protos.TransactionSigner result = new org.bitcoinj.wallet.Protos.TransactionSigner(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.className_ = className_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.data_ = data_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.TransactionSigner) { return mergeFrom((org.bitcoinj.wallet.Protos.TransactionSigner)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.TransactionSigner other) { if (other == org.bitcoinj.wallet.Protos.TransactionSigner.getDefaultInstance()) return this; if (other.hasClassName()) { bitField0_ |= 0x00000001; className_ = other.className_; onChanged(); } if (other.hasData()) { setData(other.getData()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasClassName()) { return false; } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.TransactionSigner parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.TransactionSigner) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private java.lang.Object className_ = ""; /** * <code>required string class_name = 1;</code> * * <pre> * fully qualified class name of TransactionSigner implementation * </pre> */ public boolean hasClassName() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required string class_name = 1;</code> * * <pre> * fully qualified class name of TransactionSigner implementation * </pre> */ public java.lang.String getClassName() { java.lang.Object ref = className_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { className_ = s; } return s; } else { return (java.lang.String) ref; } } /** * <code>required string class_name = 1;</code> * * <pre> * fully qualified class name of TransactionSigner implementation * </pre> */ public com.google.protobuf.ByteString getClassNameBytes() { java.lang.Object ref = className_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); className_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * <code>required string class_name = 1;</code> * * <pre> * fully qualified class name of TransactionSigner implementation * </pre> */ public Builder setClassName( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; className_ = value; onChanged(); return this; } /** * <code>required string class_name = 1;</code> * * <pre> * fully qualified class name of TransactionSigner implementation * </pre> */ public Builder clearClassName() { bitField0_ = (bitField0_ & ~0x00000001); className_ = getDefaultInstance().getClassName(); onChanged(); return this; } /** * <code>required string class_name = 1;</code> * * <pre> * fully qualified class name of TransactionSigner implementation * </pre> */ public Builder setClassNameBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; className_ = value; onChanged(); return this; } private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY; /** * <code>optional bytes data = 2;</code> * * <pre> * arbitrary data required for signer to function * </pre> */ public boolean hasData() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>optional bytes data = 2;</code> * * <pre> * arbitrary data required for signer to function * </pre> */ public com.google.protobuf.ByteString getData() { return data_; } /** * <code>optional bytes data = 2;</code> * * <pre> * arbitrary data required for signer to function * </pre> */ public Builder setData(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000002; data_ = value; onChanged(); return this; } /** * <code>optional bytes data = 2;</code> * * <pre> * arbitrary data required for signer to function * </pre> */ public Builder clearData() { bitField0_ = (bitField0_ & ~0x00000002); data_ = getDefaultInstance().getData(); onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.TransactionSigner) } static { defaultInstance = new TransactionSigner(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.TransactionSigner) } public interface WalletOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.Wallet) com.google.protobuf.MessageOrBuilder { /** * <code>required string network_identifier = 1;</code> * * <pre> * the network used by this wallet * </pre> */ boolean hasNetworkIdentifier(); /** * <code>required string network_identifier = 1;</code> * * <pre> * the network used by this wallet * </pre> */ java.lang.String getNetworkIdentifier(); /** * <code>required string network_identifier = 1;</code> * * <pre> * the network used by this wallet * </pre> */ com.google.protobuf.ByteString getNetworkIdentifierBytes(); /** * <code>optional bytes last_seen_block_hash = 2;</code> * * <pre> * The SHA256 hash of the head of the best chain seen by this wallet. * </pre> */ boolean hasLastSeenBlockHash(); /** * <code>optional bytes last_seen_block_hash = 2;</code> * * <pre> * The SHA256 hash of the head of the best chain seen by this wallet. * </pre> */ com.google.protobuf.ByteString getLastSeenBlockHash(); /** * <code>optional uint32 last_seen_block_height = 12;</code> * * <pre> * The height in the chain of the last seen block. * </pre> */ boolean hasLastSeenBlockHeight(); /** * <code>optional uint32 last_seen_block_height = 12;</code> * * <pre> * The height in the chain of the last seen block. * </pre> */ int getLastSeenBlockHeight(); /** * <code>optional int64 last_seen_block_time_secs = 14;</code> */ boolean hasLastSeenBlockTimeSecs(); /** * <code>optional int64 last_seen_block_time_secs = 14;</code> */ long getLastSeenBlockTimeSecs(); /** * <code>repeated .wallet.Key key = 3;</code> */ java.util.List<org.bitcoinj.wallet.Protos.Key> getKeyList(); /** * <code>repeated .wallet.Key key = 3;</code> */ org.bitcoinj.wallet.Protos.Key getKey(int index); /** * <code>repeated .wallet.Key key = 3;</code> */ int getKeyCount(); /** * <code>repeated .wallet.Key key = 3;</code> */ java.util.List<? extends org.bitcoinj.wallet.Protos.KeyOrBuilder> getKeyOrBuilderList(); /** * <code>repeated .wallet.Key key = 3;</code> */ org.bitcoinj.wallet.Protos.KeyOrBuilder getKeyOrBuilder( int index); /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ java.util.List<org.bitcoinj.wallet.Protos.Transaction> getTransactionList(); /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ org.bitcoinj.wallet.Protos.Transaction getTransaction(int index); /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ int getTransactionCount(); /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ java.util.List<? extends org.bitcoinj.wallet.Protos.TransactionOrBuilder> getTransactionOrBuilderList(); /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ org.bitcoinj.wallet.Protos.TransactionOrBuilder getTransactionOrBuilder( int index); /** * <code>repeated .wallet.Script watched_script = 15;</code> */ java.util.List<org.bitcoinj.wallet.Protos.Script> getWatchedScriptList(); /** * <code>repeated .wallet.Script watched_script = 15;</code> */ org.bitcoinj.wallet.Protos.Script getWatchedScript(int index); /** * <code>repeated .wallet.Script watched_script = 15;</code> */ int getWatchedScriptCount(); /** * <code>repeated .wallet.Script watched_script = 15;</code> */ java.util.List<? extends org.bitcoinj.wallet.Protos.ScriptOrBuilder> getWatchedScriptOrBuilderList(); /** * <code>repeated .wallet.Script watched_script = 15;</code> */ org.bitcoinj.wallet.Protos.ScriptOrBuilder getWatchedScriptOrBuilder( int index); /** * <code>optional .wallet.Wallet.EncryptionType encryption_type = 5 [default = UNENCRYPTED];</code> */ boolean hasEncryptionType(); /** * <code>optional .wallet.Wallet.EncryptionType encryption_type = 5 [default = UNENCRYPTED];</code> */ org.bitcoinj.wallet.Protos.Wallet.EncryptionType getEncryptionType(); /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ boolean hasEncryptionParameters(); /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ org.bitcoinj.wallet.Protos.ScryptParameters getEncryptionParameters(); /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ org.bitcoinj.wallet.Protos.ScryptParametersOrBuilder getEncryptionParametersOrBuilder(); /** * <code>optional int32 version = 7 [default = 1];</code> * * <pre> * The version number of the wallet - used to detect wallets that were produced in the future * (i.e. the wallet may contain some future format this protobuf or parser code does not know about). * A version that's higher than the default is considered from the future. * </pre> */ boolean hasVersion(); /** * <code>optional int32 version = 7 [default = 1];</code> * * <pre> * The version number of the wallet - used to detect wallets that were produced in the future * (i.e. the wallet may contain some future format this protobuf or parser code does not know about). * A version that's higher than the default is considered from the future. * </pre> */ int getVersion(); /** * <code>repeated .wallet.Extension extension = 10;</code> */ java.util.List<org.bitcoinj.wallet.Protos.Extension> getExtensionList(); /** * <code>repeated .wallet.Extension extension = 10;</code> */ org.bitcoinj.wallet.Protos.Extension getExtension(int index); /** * <code>repeated .wallet.Extension extension = 10;</code> */ int getExtensionCount(); /** * <code>repeated .wallet.Extension extension = 10;</code> */ java.util.List<? extends org.bitcoinj.wallet.Protos.ExtensionOrBuilder> getExtensionOrBuilderList(); /** * <code>repeated .wallet.Extension extension = 10;</code> */ org.bitcoinj.wallet.Protos.ExtensionOrBuilder getExtensionOrBuilder( int index); /** * <code>optional string description = 11;</code> * * <pre> * A UTF8 encoded text description of the wallet that is intended for end user provided text. * </pre> */ boolean hasDescription(); /** * <code>optional string description = 11;</code> * * <pre> * A UTF8 encoded text description of the wallet that is intended for end user provided text. * </pre> */ java.lang.String getDescription(); /** * <code>optional string description = 11;</code> * * <pre> * A UTF8 encoded text description of the wallet that is intended for end user provided text. * </pre> */ com.google.protobuf.ByteString getDescriptionBytes(); /** * <code>optional uint64 key_rotation_time = 13;</code> * * <pre> * UNIX time in seconds since the epoch. If set, then any keys created before this date are assumed to be no longer * wanted. Money sent to them will be re-spent automatically to the first key that was created after this time. It * can be used to recover a compromised wallet, or just as part of preventative defence-in-depth measures. * </pre> */ boolean hasKeyRotationTime(); /** * <code>optional uint64 key_rotation_time = 13;</code> * * <pre> * UNIX time in seconds since the epoch. If set, then any keys created before this date are assumed to be no longer * wanted. Money sent to them will be re-spent automatically to the first key that was created after this time. It * can be used to recover a compromised wallet, or just as part of preventative defence-in-depth measures. * </pre> */ long getKeyRotationTime(); /** * <code>repeated .wallet.Tag tags = 16;</code> */ java.util.List<org.bitcoinj.wallet.Protos.Tag> getTagsList(); /** * <code>repeated .wallet.Tag tags = 16;</code> */ org.bitcoinj.wallet.Protos.Tag getTags(int index); /** * <code>repeated .wallet.Tag tags = 16;</code> */ int getTagsCount(); /** * <code>repeated .wallet.Tag tags = 16;</code> */ java.util.List<? extends org.bitcoinj.wallet.Protos.TagOrBuilder> getTagsOrBuilderList(); /** * <code>repeated .wallet.Tag tags = 16;</code> */ org.bitcoinj.wallet.Protos.TagOrBuilder getTagsOrBuilder( int index); /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ java.util.List<org.bitcoinj.wallet.Protos.TransactionSigner> getTransactionSignersList(); /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ org.bitcoinj.wallet.Protos.TransactionSigner getTransactionSigners(int index); /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ int getTransactionSignersCount(); /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ java.util.List<? extends org.bitcoinj.wallet.Protos.TransactionSignerOrBuilder> getTransactionSignersOrBuilderList(); /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ org.bitcoinj.wallet.Protos.TransactionSignerOrBuilder getTransactionSignersOrBuilder( int index); } /** * Protobuf type {@code wallet.Wallet} * * <pre> ** A bitcoin wallet * </pre> */ public static final class Wallet extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.Wallet) WalletOrBuilder { // Use Wallet.newBuilder() to construct. private Wallet(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private Wallet(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final Wallet defaultInstance; public static Wallet getDefaultInstance() { return defaultInstance; } public Wallet getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private Wallet( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000001; networkIdentifier_ = bs; break; } case 18: { bitField0_ |= 0x00000002; lastSeenBlockHash_ = input.readBytes(); break; } case 26: { if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) { key_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.Key>(); mutable_bitField0_ |= 0x00000010; } key_.add(input.readMessage(org.bitcoinj.wallet.Protos.Key.PARSER, extensionRegistry)); break; } case 34: { if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) { transaction_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.Transaction>(); mutable_bitField0_ |= 0x00000020; } transaction_.add(input.readMessage(org.bitcoinj.wallet.Protos.Transaction.PARSER, extensionRegistry)); break; } case 40: { int rawValue = input.readEnum(); org.bitcoinj.wallet.Protos.Wallet.EncryptionType value = org.bitcoinj.wallet.Protos.Wallet.EncryptionType.valueOf(rawValue); if (value == null) { unknownFields.mergeVarintField(5, rawValue); } else { bitField0_ |= 0x00000010; encryptionType_ = value; } break; } case 50: { org.bitcoinj.wallet.Protos.ScryptParameters.Builder subBuilder = null; if (((bitField0_ & 0x00000020) == 0x00000020)) { subBuilder = encryptionParameters_.toBuilder(); } encryptionParameters_ = input.readMessage(org.bitcoinj.wallet.Protos.ScryptParameters.PARSER, extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(encryptionParameters_); encryptionParameters_ = subBuilder.buildPartial(); } bitField0_ |= 0x00000020; break; } case 56: { bitField0_ |= 0x00000040; version_ = input.readInt32(); break; } case 82: { if (!((mutable_bitField0_ & 0x00000400) == 0x00000400)) { extension_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.Extension>(); mutable_bitField0_ |= 0x00000400; } extension_.add(input.readMessage(org.bitcoinj.wallet.Protos.Extension.PARSER, extensionRegistry)); break; } case 90: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000080; description_ = bs; break; } case 96: { bitField0_ |= 0x00000004; lastSeenBlockHeight_ = input.readUInt32(); break; } case 104: { bitField0_ |= 0x00000100; keyRotationTime_ = input.readUInt64(); break; } case 112: { bitField0_ |= 0x00000008; lastSeenBlockTimeSecs_ = input.readInt64(); break; } case 122: { if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) { watchedScript_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.Script>(); mutable_bitField0_ |= 0x00000040; } watchedScript_.add(input.readMessage(org.bitcoinj.wallet.Protos.Script.PARSER, extensionRegistry)); break; } case 130: { if (!((mutable_bitField0_ & 0x00002000) == 0x00002000)) { tags_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.Tag>(); mutable_bitField0_ |= 0x00002000; } tags_.add(input.readMessage(org.bitcoinj.wallet.Protos.Tag.PARSER, extensionRegistry)); break; } case 138: { if (!((mutable_bitField0_ & 0x00004000) == 0x00004000)) { transactionSigners_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.TransactionSigner>(); mutable_bitField0_ |= 0x00004000; } transactionSigners_.add(input.readMessage(org.bitcoinj.wallet.Protos.TransactionSigner.PARSER, extensionRegistry)); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) { key_ = java.util.Collections.unmodifiableList(key_); } if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) { transaction_ = java.util.Collections.unmodifiableList(transaction_); } if (((mutable_bitField0_ & 0x00000400) == 0x00000400)) { extension_ = java.util.Collections.unmodifiableList(extension_); } if (((mutable_bitField0_ & 0x00000040) == 0x00000040)) { watchedScript_ = java.util.Collections.unmodifiableList(watchedScript_); } if (((mutable_bitField0_ & 0x00002000) == 0x00002000)) { tags_ = java.util.Collections.unmodifiableList(tags_); } if (((mutable_bitField0_ & 0x00004000) == 0x00004000)) { transactionSigners_ = java.util.Collections.unmodifiableList(transactionSigners_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Wallet_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Wallet_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.Wallet.class, org.bitcoinj.wallet.Protos.Wallet.Builder.class); } public static com.google.protobuf.Parser<Wallet> PARSER = new com.google.protobuf.AbstractParser<Wallet>() { public Wallet parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new Wallet(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<Wallet> getParserForType() { return PARSER; } /** * Protobuf enum {@code wallet.Wallet.EncryptionType} * * <pre> ** * The encryption type of the wallet. * The encryption type is UNENCRYPTED for wallets where the wallet does not support encryption - wallets prior to * encryption support are grandfathered in as this wallet type. * When a wallet is ENCRYPTED_SCRYPT_AES the keys are either encrypted with the wallet password or are unencrypted. * </pre> */ public enum EncryptionType implements com.google.protobuf.ProtocolMessageEnum { /** * <code>UNENCRYPTED = 1;</code> * * <pre> * All keys in the wallet are unencrypted * </pre> */ UNENCRYPTED(0, 1), /** * <code>ENCRYPTED_SCRYPT_AES = 2;</code> * * <pre> * All keys are encrypted with a passphrase based KDF of scrypt and AES encryption * </pre> */ ENCRYPTED_SCRYPT_AES(1, 2), ; /** * <code>UNENCRYPTED = 1;</code> * * <pre> * All keys in the wallet are unencrypted * </pre> */ public static final int UNENCRYPTED_VALUE = 1; /** * <code>ENCRYPTED_SCRYPT_AES = 2;</code> * * <pre> * All keys are encrypted with a passphrase based KDF of scrypt and AES encryption * </pre> */ public static final int ENCRYPTED_SCRYPT_AES_VALUE = 2; public final int getNumber() { return value; } public static EncryptionType valueOf(int value) { switch (value) { case 1: return UNENCRYPTED; case 2: return ENCRYPTED_SCRYPT_AES; default: return null; } } public static com.google.protobuf.Internal.EnumLiteMap<EncryptionType> internalGetValueMap() { return internalValueMap; } private static com.google.protobuf.Internal.EnumLiteMap<EncryptionType> internalValueMap = new com.google.protobuf.Internal.EnumLiteMap<EncryptionType>() { public EncryptionType findValueByNumber(int number) { return EncryptionType.valueOf(number); } }; public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { return getDescriptor().getValues().get(index); } public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { return getDescriptor(); } public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { return org.bitcoinj.wallet.Protos.Wallet.getDescriptor().getEnumTypes().get(0); } private static final EncryptionType[] VALUES = values(); public static EncryptionType valueOf( com.google.protobuf.Descriptors.EnumValueDescriptor desc) { if (desc.getType() != getDescriptor()) { throw new java.lang.IllegalArgumentException( "EnumValueDescriptor is not for this type."); } return VALUES[desc.getIndex()]; } private final int index; private final int value; private EncryptionType(int index, int value) { this.index = index; this.value = value; } // @@protoc_insertion_point(enum_scope:wallet.Wallet.EncryptionType) } private int bitField0_; public static final int NETWORK_IDENTIFIER_FIELD_NUMBER = 1; private java.lang.Object networkIdentifier_; /** * <code>required string network_identifier = 1;</code> * * <pre> * the network used by this wallet * </pre> */ public boolean hasNetworkIdentifier() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required string network_identifier = 1;</code> * * <pre> * the network used by this wallet * </pre> */ public java.lang.String getNetworkIdentifier() { java.lang.Object ref = networkIdentifier_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { networkIdentifier_ = s; } return s; } } /** * <code>required string network_identifier = 1;</code> * * <pre> * the network used by this wallet * </pre> */ public com.google.protobuf.ByteString getNetworkIdentifierBytes() { java.lang.Object ref = networkIdentifier_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); networkIdentifier_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int LAST_SEEN_BLOCK_HASH_FIELD_NUMBER = 2; private com.google.protobuf.ByteString lastSeenBlockHash_; /** * <code>optional bytes last_seen_block_hash = 2;</code> * * <pre> * The SHA256 hash of the head of the best chain seen by this wallet. * </pre> */ public boolean hasLastSeenBlockHash() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>optional bytes last_seen_block_hash = 2;</code> * * <pre> * The SHA256 hash of the head of the best chain seen by this wallet. * </pre> */ public com.google.protobuf.ByteString getLastSeenBlockHash() { return lastSeenBlockHash_; } public static final int LAST_SEEN_BLOCK_HEIGHT_FIELD_NUMBER = 12; private int lastSeenBlockHeight_; /** * <code>optional uint32 last_seen_block_height = 12;</code> * * <pre> * The height in the chain of the last seen block. * </pre> */ public boolean hasLastSeenBlockHeight() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional uint32 last_seen_block_height = 12;</code> * * <pre> * The height in the chain of the last seen block. * </pre> */ public int getLastSeenBlockHeight() { return lastSeenBlockHeight_; } public static final int LAST_SEEN_BLOCK_TIME_SECS_FIELD_NUMBER = 14; private long lastSeenBlockTimeSecs_; /** * <code>optional int64 last_seen_block_time_secs = 14;</code> */ public boolean hasLastSeenBlockTimeSecs() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional int64 last_seen_block_time_secs = 14;</code> */ public long getLastSeenBlockTimeSecs() { return lastSeenBlockTimeSecs_; } public static final int KEY_FIELD_NUMBER = 3; private java.util.List<org.bitcoinj.wallet.Protos.Key> key_; /** * <code>repeated .wallet.Key key = 3;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Key> getKeyList() { return key_; } /** * <code>repeated .wallet.Key key = 3;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.KeyOrBuilder> getKeyOrBuilderList() { return key_; } /** * <code>repeated .wallet.Key key = 3;</code> */ public int getKeyCount() { return key_.size(); } /** * <code>repeated .wallet.Key key = 3;</code> */ public org.bitcoinj.wallet.Protos.Key getKey(int index) { return key_.get(index); } /** * <code>repeated .wallet.Key key = 3;</code> */ public org.bitcoinj.wallet.Protos.KeyOrBuilder getKeyOrBuilder( int index) { return key_.get(index); } public static final int TRANSACTION_FIELD_NUMBER = 4; private java.util.List<org.bitcoinj.wallet.Protos.Transaction> transaction_; /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Transaction> getTransactionList() { return transaction_; } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.TransactionOrBuilder> getTransactionOrBuilderList() { return transaction_; } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public int getTransactionCount() { return transaction_.size(); } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public org.bitcoinj.wallet.Protos.Transaction getTransaction(int index) { return transaction_.get(index); } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public org.bitcoinj.wallet.Protos.TransactionOrBuilder getTransactionOrBuilder( int index) { return transaction_.get(index); } public static final int WATCHED_SCRIPT_FIELD_NUMBER = 15; private java.util.List<org.bitcoinj.wallet.Protos.Script> watchedScript_; /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Script> getWatchedScriptList() { return watchedScript_; } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.ScriptOrBuilder> getWatchedScriptOrBuilderList() { return watchedScript_; } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public int getWatchedScriptCount() { return watchedScript_.size(); } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public org.bitcoinj.wallet.Protos.Script getWatchedScript(int index) { return watchedScript_.get(index); } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public org.bitcoinj.wallet.Protos.ScriptOrBuilder getWatchedScriptOrBuilder( int index) { return watchedScript_.get(index); } public static final int ENCRYPTION_TYPE_FIELD_NUMBER = 5; private org.bitcoinj.wallet.Protos.Wallet.EncryptionType encryptionType_; /** * <code>optional .wallet.Wallet.EncryptionType encryption_type = 5 [default = UNENCRYPTED];</code> */ public boolean hasEncryptionType() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * <code>optional .wallet.Wallet.EncryptionType encryption_type = 5 [default = UNENCRYPTED];</code> */ public org.bitcoinj.wallet.Protos.Wallet.EncryptionType getEncryptionType() { return encryptionType_; } public static final int ENCRYPTION_PARAMETERS_FIELD_NUMBER = 6; private org.bitcoinj.wallet.Protos.ScryptParameters encryptionParameters_; /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ public boolean hasEncryptionParameters() { return ((bitField0_ & 0x00000020) == 0x00000020); } /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ public org.bitcoinj.wallet.Protos.ScryptParameters getEncryptionParameters() { return encryptionParameters_; } /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ public org.bitcoinj.wallet.Protos.ScryptParametersOrBuilder getEncryptionParametersOrBuilder() { return encryptionParameters_; } public static final int VERSION_FIELD_NUMBER = 7; private int version_; /** * <code>optional int32 version = 7 [default = 1];</code> * * <pre> * The version number of the wallet - used to detect wallets that were produced in the future * (i.e. the wallet may contain some future format this protobuf or parser code does not know about). * A version that's higher than the default is considered from the future. * </pre> */ public boolean hasVersion() { return ((bitField0_ & 0x00000040) == 0x00000040); } /** * <code>optional int32 version = 7 [default = 1];</code> * * <pre> * The version number of the wallet - used to detect wallets that were produced in the future * (i.e. the wallet may contain some future format this protobuf or parser code does not know about). * A version that's higher than the default is considered from the future. * </pre> */ public int getVersion() { return version_; } public static final int EXTENSION_FIELD_NUMBER = 10; private java.util.List<org.bitcoinj.wallet.Protos.Extension> extension_; /** * <code>repeated .wallet.Extension extension = 10;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Extension> getExtensionList() { return extension_; } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.ExtensionOrBuilder> getExtensionOrBuilderList() { return extension_; } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public int getExtensionCount() { return extension_.size(); } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public org.bitcoinj.wallet.Protos.Extension getExtension(int index) { return extension_.get(index); } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public org.bitcoinj.wallet.Protos.ExtensionOrBuilder getExtensionOrBuilder( int index) { return extension_.get(index); } public static final int DESCRIPTION_FIELD_NUMBER = 11; private java.lang.Object description_; /** * <code>optional string description = 11;</code> * * <pre> * A UTF8 encoded text description of the wallet that is intended for end user provided text. * </pre> */ public boolean hasDescription() { return ((bitField0_ & 0x00000080) == 0x00000080); } /** * <code>optional string description = 11;</code> * * <pre> * A UTF8 encoded text description of the wallet that is intended for end user provided text. * </pre> */ public java.lang.String getDescription() { java.lang.Object ref = description_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { description_ = s; } return s; } } /** * <code>optional string description = 11;</code> * * <pre> * A UTF8 encoded text description of the wallet that is intended for end user provided text. * </pre> */ public com.google.protobuf.ByteString getDescriptionBytes() { java.lang.Object ref = description_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); description_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int KEY_ROTATION_TIME_FIELD_NUMBER = 13; private long keyRotationTime_; /** * <code>optional uint64 key_rotation_time = 13;</code> * * <pre> * UNIX time in seconds since the epoch. If set, then any keys created before this date are assumed to be no longer * wanted. Money sent to them will be re-spent automatically to the first key that was created after this time. It * can be used to recover a compromised wallet, or just as part of preventative defence-in-depth measures. * </pre> */ public boolean hasKeyRotationTime() { return ((bitField0_ & 0x00000100) == 0x00000100); } /** * <code>optional uint64 key_rotation_time = 13;</code> * * <pre> * UNIX time in seconds since the epoch. If set, then any keys created before this date are assumed to be no longer * wanted. Money sent to them will be re-spent automatically to the first key that was created after this time. It * can be used to recover a compromised wallet, or just as part of preventative defence-in-depth measures. * </pre> */ public long getKeyRotationTime() { return keyRotationTime_; } public static final int TAGS_FIELD_NUMBER = 16; private java.util.List<org.bitcoinj.wallet.Protos.Tag> tags_; /** * <code>repeated .wallet.Tag tags = 16;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Tag> getTagsList() { return tags_; } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.TagOrBuilder> getTagsOrBuilderList() { return tags_; } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public int getTagsCount() { return tags_.size(); } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public org.bitcoinj.wallet.Protos.Tag getTags(int index) { return tags_.get(index); } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public org.bitcoinj.wallet.Protos.TagOrBuilder getTagsOrBuilder( int index) { return tags_.get(index); } public static final int TRANSACTION_SIGNERS_FIELD_NUMBER = 17; private java.util.List<org.bitcoinj.wallet.Protos.TransactionSigner> transactionSigners_; /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public java.util.List<org.bitcoinj.wallet.Protos.TransactionSigner> getTransactionSignersList() { return transactionSigners_; } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.TransactionSignerOrBuilder> getTransactionSignersOrBuilderList() { return transactionSigners_; } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public int getTransactionSignersCount() { return transactionSigners_.size(); } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public org.bitcoinj.wallet.Protos.TransactionSigner getTransactionSigners(int index) { return transactionSigners_.get(index); } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public org.bitcoinj.wallet.Protos.TransactionSignerOrBuilder getTransactionSignersOrBuilder( int index) { return transactionSigners_.get(index); } private void initFields() { networkIdentifier_ = ""; lastSeenBlockHash_ = com.google.protobuf.ByteString.EMPTY; lastSeenBlockHeight_ = 0; lastSeenBlockTimeSecs_ = 0L; key_ = java.util.Collections.emptyList(); transaction_ = java.util.Collections.emptyList(); watchedScript_ = java.util.Collections.emptyList(); encryptionType_ = org.bitcoinj.wallet.Protos.Wallet.EncryptionType.UNENCRYPTED; encryptionParameters_ = org.bitcoinj.wallet.Protos.ScryptParameters.getDefaultInstance(); version_ = 1; extension_ = java.util.Collections.emptyList(); description_ = ""; keyRotationTime_ = 0L; tags_ = java.util.Collections.emptyList(); transactionSigners_ = java.util.Collections.emptyList(); } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasNetworkIdentifier()) { memoizedIsInitialized = 0; return false; } for (int i = 0; i < getKeyCount(); i++) { if (!getKey(i).isInitialized()) { memoizedIsInitialized = 0; return false; } } for (int i = 0; i < getTransactionCount(); i++) { if (!getTransaction(i).isInitialized()) { memoizedIsInitialized = 0; return false; } } for (int i = 0; i < getWatchedScriptCount(); i++) { if (!getWatchedScript(i).isInitialized()) { memoizedIsInitialized = 0; return false; } } if (hasEncryptionParameters()) { if (!getEncryptionParameters().isInitialized()) { memoizedIsInitialized = 0; return false; } } for (int i = 0; i < getExtensionCount(); i++) { if (!getExtension(i).isInitialized()) { memoizedIsInitialized = 0; return false; } } for (int i = 0; i < getTagsCount(); i++) { if (!getTags(i).isInitialized()) { memoizedIsInitialized = 0; return false; } } for (int i = 0; i < getTransactionSignersCount(); i++) { if (!getTransactionSigners(i).isInitialized()) { memoizedIsInitialized = 0; return false; } } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeBytes(1, getNetworkIdentifierBytes()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeBytes(2, lastSeenBlockHash_); } for (int i = 0; i < key_.size(); i++) { output.writeMessage(3, key_.get(i)); } for (int i = 0; i < transaction_.size(); i++) { output.writeMessage(4, transaction_.get(i)); } if (((bitField0_ & 0x00000010) == 0x00000010)) { output.writeEnum(5, encryptionType_.getNumber()); } if (((bitField0_ & 0x00000020) == 0x00000020)) { output.writeMessage(6, encryptionParameters_); } if (((bitField0_ & 0x00000040) == 0x00000040)) { output.writeInt32(7, version_); } for (int i = 0; i < extension_.size(); i++) { output.writeMessage(10, extension_.get(i)); } if (((bitField0_ & 0x00000080) == 0x00000080)) { output.writeBytes(11, getDescriptionBytes()); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeUInt32(12, lastSeenBlockHeight_); } if (((bitField0_ & 0x00000100) == 0x00000100)) { output.writeUInt64(13, keyRotationTime_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { output.writeInt64(14, lastSeenBlockTimeSecs_); } for (int i = 0; i < watchedScript_.size(); i++) { output.writeMessage(15, watchedScript_.get(i)); } for (int i = 0; i < tags_.size(); i++) { output.writeMessage(16, tags_.get(i)); } for (int i = 0; i < transactionSigners_.size(); i++) { output.writeMessage(17, transactionSigners_.get(i)); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, getNetworkIdentifierBytes()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(2, lastSeenBlockHash_); } for (int i = 0; i < key_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(3, key_.get(i)); } for (int i = 0; i < transaction_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(4, transaction_.get(i)); } if (((bitField0_ & 0x00000010) == 0x00000010)) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(5, encryptionType_.getNumber()); } if (((bitField0_ & 0x00000020) == 0x00000020)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(6, encryptionParameters_); } if (((bitField0_ & 0x00000040) == 0x00000040)) { size += com.google.protobuf.CodedOutputStream .computeInt32Size(7, version_); } for (int i = 0; i < extension_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(10, extension_.get(i)); } if (((bitField0_ & 0x00000080) == 0x00000080)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(11, getDescriptionBytes()); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeUInt32Size(12, lastSeenBlockHeight_); } if (((bitField0_ & 0x00000100) == 0x00000100)) { size += com.google.protobuf.CodedOutputStream .computeUInt64Size(13, keyRotationTime_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(14, lastSeenBlockTimeSecs_); } for (int i = 0; i < watchedScript_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(15, watchedScript_.get(i)); } for (int i = 0; i < tags_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(16, tags_.get(i)); } for (int i = 0; i < transactionSigners_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(17, transactionSigners_.get(i)); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.Wallet parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.Wallet parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Wallet parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.Wallet parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Wallet parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.Wallet parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Wallet parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.Wallet parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.Wallet parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.Wallet parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.Wallet prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.Wallet} * * <pre> ** A bitcoin wallet * </pre> */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.Wallet) org.bitcoinj.wallet.Protos.WalletOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Wallet_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Wallet_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.Wallet.class, org.bitcoinj.wallet.Protos.Wallet.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.Wallet.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { getKeyFieldBuilder(); getTransactionFieldBuilder(); getWatchedScriptFieldBuilder(); getEncryptionParametersFieldBuilder(); getExtensionFieldBuilder(); getTagsFieldBuilder(); getTransactionSignersFieldBuilder(); } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); networkIdentifier_ = ""; bitField0_ = (bitField0_ & ~0x00000001); lastSeenBlockHash_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000002); lastSeenBlockHeight_ = 0; bitField0_ = (bitField0_ & ~0x00000004); lastSeenBlockTimeSecs_ = 0L; bitField0_ = (bitField0_ & ~0x00000008); if (keyBuilder_ == null) { key_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000010); } else { keyBuilder_.clear(); } if (transactionBuilder_ == null) { transaction_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000020); } else { transactionBuilder_.clear(); } if (watchedScriptBuilder_ == null) { watchedScript_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000040); } else { watchedScriptBuilder_.clear(); } encryptionType_ = org.bitcoinj.wallet.Protos.Wallet.EncryptionType.UNENCRYPTED; bitField0_ = (bitField0_ & ~0x00000080); if (encryptionParametersBuilder_ == null) { encryptionParameters_ = org.bitcoinj.wallet.Protos.ScryptParameters.getDefaultInstance(); } else { encryptionParametersBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000100); version_ = 1; bitField0_ = (bitField0_ & ~0x00000200); if (extensionBuilder_ == null) { extension_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000400); } else { extensionBuilder_.clear(); } description_ = ""; bitField0_ = (bitField0_ & ~0x00000800); keyRotationTime_ = 0L; bitField0_ = (bitField0_ & ~0x00001000); if (tagsBuilder_ == null) { tags_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00002000); } else { tagsBuilder_.clear(); } if (transactionSignersBuilder_ == null) { transactionSigners_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00004000); } else { transactionSignersBuilder_.clear(); } return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_Wallet_descriptor; } public org.bitcoinj.wallet.Protos.Wallet getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.Wallet.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.Wallet build() { org.bitcoinj.wallet.Protos.Wallet result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.Wallet buildPartial() { org.bitcoinj.wallet.Protos.Wallet result = new org.bitcoinj.wallet.Protos.Wallet(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.networkIdentifier_ = networkIdentifier_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.lastSeenBlockHash_ = lastSeenBlockHash_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } result.lastSeenBlockHeight_ = lastSeenBlockHeight_; if (((from_bitField0_ & 0x00000008) == 0x00000008)) { to_bitField0_ |= 0x00000008; } result.lastSeenBlockTimeSecs_ = lastSeenBlockTimeSecs_; if (keyBuilder_ == null) { if (((bitField0_ & 0x00000010) == 0x00000010)) { key_ = java.util.Collections.unmodifiableList(key_); bitField0_ = (bitField0_ & ~0x00000010); } result.key_ = key_; } else { result.key_ = keyBuilder_.build(); } if (transactionBuilder_ == null) { if (((bitField0_ & 0x00000020) == 0x00000020)) { transaction_ = java.util.Collections.unmodifiableList(transaction_); bitField0_ = (bitField0_ & ~0x00000020); } result.transaction_ = transaction_; } else { result.transaction_ = transactionBuilder_.build(); } if (watchedScriptBuilder_ == null) { if (((bitField0_ & 0x00000040) == 0x00000040)) { watchedScript_ = java.util.Collections.unmodifiableList(watchedScript_); bitField0_ = (bitField0_ & ~0x00000040); } result.watchedScript_ = watchedScript_; } else { result.watchedScript_ = watchedScriptBuilder_.build(); } if (((from_bitField0_ & 0x00000080) == 0x00000080)) { to_bitField0_ |= 0x00000010; } result.encryptionType_ = encryptionType_; if (((from_bitField0_ & 0x00000100) == 0x00000100)) { to_bitField0_ |= 0x00000020; } if (encryptionParametersBuilder_ == null) { result.encryptionParameters_ = encryptionParameters_; } else { result.encryptionParameters_ = encryptionParametersBuilder_.build(); } if (((from_bitField0_ & 0x00000200) == 0x00000200)) { to_bitField0_ |= 0x00000040; } result.version_ = version_; if (extensionBuilder_ == null) { if (((bitField0_ & 0x00000400) == 0x00000400)) { extension_ = java.util.Collections.unmodifiableList(extension_); bitField0_ = (bitField0_ & ~0x00000400); } result.extension_ = extension_; } else { result.extension_ = extensionBuilder_.build(); } if (((from_bitField0_ & 0x00000800) == 0x00000800)) { to_bitField0_ |= 0x00000080; } result.description_ = description_; if (((from_bitField0_ & 0x00001000) == 0x00001000)) { to_bitField0_ |= 0x00000100; } result.keyRotationTime_ = keyRotationTime_; if (tagsBuilder_ == null) { if (((bitField0_ & 0x00002000) == 0x00002000)) { tags_ = java.util.Collections.unmodifiableList(tags_); bitField0_ = (bitField0_ & ~0x00002000); } result.tags_ = tags_; } else { result.tags_ = tagsBuilder_.build(); } if (transactionSignersBuilder_ == null) { if (((bitField0_ & 0x00004000) == 0x00004000)) { transactionSigners_ = java.util.Collections.unmodifiableList(transactionSigners_); bitField0_ = (bitField0_ & ~0x00004000); } result.transactionSigners_ = transactionSigners_; } else { result.transactionSigners_ = transactionSignersBuilder_.build(); } result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.Wallet) { return mergeFrom((org.bitcoinj.wallet.Protos.Wallet)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.Wallet other) { if (other == org.bitcoinj.wallet.Protos.Wallet.getDefaultInstance()) return this; if (other.hasNetworkIdentifier()) { bitField0_ |= 0x00000001; networkIdentifier_ = other.networkIdentifier_; onChanged(); } if (other.hasLastSeenBlockHash()) { setLastSeenBlockHash(other.getLastSeenBlockHash()); } if (other.hasLastSeenBlockHeight()) { setLastSeenBlockHeight(other.getLastSeenBlockHeight()); } if (other.hasLastSeenBlockTimeSecs()) { setLastSeenBlockTimeSecs(other.getLastSeenBlockTimeSecs()); } if (keyBuilder_ == null) { if (!other.key_.isEmpty()) { if (key_.isEmpty()) { key_ = other.key_; bitField0_ = (bitField0_ & ~0x00000010); } else { ensureKeyIsMutable(); key_.addAll(other.key_); } onChanged(); } } else { if (!other.key_.isEmpty()) { if (keyBuilder_.isEmpty()) { keyBuilder_.dispose(); keyBuilder_ = null; key_ = other.key_; bitField0_ = (bitField0_ & ~0x00000010); keyBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getKeyFieldBuilder() : null; } else { keyBuilder_.addAllMessages(other.key_); } } } if (transactionBuilder_ == null) { if (!other.transaction_.isEmpty()) { if (transaction_.isEmpty()) { transaction_ = other.transaction_; bitField0_ = (bitField0_ & ~0x00000020); } else { ensureTransactionIsMutable(); transaction_.addAll(other.transaction_); } onChanged(); } } else { if (!other.transaction_.isEmpty()) { if (transactionBuilder_.isEmpty()) { transactionBuilder_.dispose(); transactionBuilder_ = null; transaction_ = other.transaction_; bitField0_ = (bitField0_ & ~0x00000020); transactionBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getTransactionFieldBuilder() : null; } else { transactionBuilder_.addAllMessages(other.transaction_); } } } if (watchedScriptBuilder_ == null) { if (!other.watchedScript_.isEmpty()) { if (watchedScript_.isEmpty()) { watchedScript_ = other.watchedScript_; bitField0_ = (bitField0_ & ~0x00000040); } else { ensureWatchedScriptIsMutable(); watchedScript_.addAll(other.watchedScript_); } onChanged(); } } else { if (!other.watchedScript_.isEmpty()) { if (watchedScriptBuilder_.isEmpty()) { watchedScriptBuilder_.dispose(); watchedScriptBuilder_ = null; watchedScript_ = other.watchedScript_; bitField0_ = (bitField0_ & ~0x00000040); watchedScriptBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getWatchedScriptFieldBuilder() : null; } else { watchedScriptBuilder_.addAllMessages(other.watchedScript_); } } } if (other.hasEncryptionType()) { setEncryptionType(other.getEncryptionType()); } if (other.hasEncryptionParameters()) { mergeEncryptionParameters(other.getEncryptionParameters()); } if (other.hasVersion()) { setVersion(other.getVersion()); } if (extensionBuilder_ == null) { if (!other.extension_.isEmpty()) { if (extension_.isEmpty()) { extension_ = other.extension_; bitField0_ = (bitField0_ & ~0x00000400); } else { ensureExtensionIsMutable(); extension_.addAll(other.extension_); } onChanged(); } } else { if (!other.extension_.isEmpty()) { if (extensionBuilder_.isEmpty()) { extensionBuilder_.dispose(); extensionBuilder_ = null; extension_ = other.extension_; bitField0_ = (bitField0_ & ~0x00000400); extensionBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getExtensionFieldBuilder() : null; } else { extensionBuilder_.addAllMessages(other.extension_); } } } if (other.hasDescription()) { bitField0_ |= 0x00000800; description_ = other.description_; onChanged(); } if (other.hasKeyRotationTime()) { setKeyRotationTime(other.getKeyRotationTime()); } if (tagsBuilder_ == null) { if (!other.tags_.isEmpty()) { if (tags_.isEmpty()) { tags_ = other.tags_; bitField0_ = (bitField0_ & ~0x00002000); } else { ensureTagsIsMutable(); tags_.addAll(other.tags_); } onChanged(); } } else { if (!other.tags_.isEmpty()) { if (tagsBuilder_.isEmpty()) { tagsBuilder_.dispose(); tagsBuilder_ = null; tags_ = other.tags_; bitField0_ = (bitField0_ & ~0x00002000); tagsBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getTagsFieldBuilder() : null; } else { tagsBuilder_.addAllMessages(other.tags_); } } } if (transactionSignersBuilder_ == null) { if (!other.transactionSigners_.isEmpty()) { if (transactionSigners_.isEmpty()) { transactionSigners_ = other.transactionSigners_; bitField0_ = (bitField0_ & ~0x00004000); } else { ensureTransactionSignersIsMutable(); transactionSigners_.addAll(other.transactionSigners_); } onChanged(); } } else { if (!other.transactionSigners_.isEmpty()) { if (transactionSignersBuilder_.isEmpty()) { transactionSignersBuilder_.dispose(); transactionSignersBuilder_ = null; transactionSigners_ = other.transactionSigners_; bitField0_ = (bitField0_ & ~0x00004000); transactionSignersBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getTransactionSignersFieldBuilder() : null; } else { transactionSignersBuilder_.addAllMessages(other.transactionSigners_); } } } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasNetworkIdentifier()) { return false; } for (int i = 0; i < getKeyCount(); i++) { if (!getKey(i).isInitialized()) { return false; } } for (int i = 0; i < getTransactionCount(); i++) { if (!getTransaction(i).isInitialized()) { return false; } } for (int i = 0; i < getWatchedScriptCount(); i++) { if (!getWatchedScript(i).isInitialized()) { return false; } } if (hasEncryptionParameters()) { if (!getEncryptionParameters().isInitialized()) { return false; } } for (int i = 0; i < getExtensionCount(); i++) { if (!getExtension(i).isInitialized()) { return false; } } for (int i = 0; i < getTagsCount(); i++) { if (!getTags(i).isInitialized()) { return false; } } for (int i = 0; i < getTransactionSignersCount(); i++) { if (!getTransactionSigners(i).isInitialized()) { return false; } } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.Wallet parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.Wallet) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private java.lang.Object networkIdentifier_ = ""; /** * <code>required string network_identifier = 1;</code> * * <pre> * the network used by this wallet * </pre> */ public boolean hasNetworkIdentifier() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required string network_identifier = 1;</code> * * <pre> * the network used by this wallet * </pre> */ public java.lang.String getNetworkIdentifier() { java.lang.Object ref = networkIdentifier_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { networkIdentifier_ = s; } return s; } else { return (java.lang.String) ref; } } /** * <code>required string network_identifier = 1;</code> * * <pre> * the network used by this wallet * </pre> */ public com.google.protobuf.ByteString getNetworkIdentifierBytes() { java.lang.Object ref = networkIdentifier_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); networkIdentifier_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * <code>required string network_identifier = 1;</code> * * <pre> * the network used by this wallet * </pre> */ public Builder setNetworkIdentifier( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; networkIdentifier_ = value; onChanged(); return this; } /** * <code>required string network_identifier = 1;</code> * * <pre> * the network used by this wallet * </pre> */ public Builder clearNetworkIdentifier() { bitField0_ = (bitField0_ & ~0x00000001); networkIdentifier_ = getDefaultInstance().getNetworkIdentifier(); onChanged(); return this; } /** * <code>required string network_identifier = 1;</code> * * <pre> * the network used by this wallet * </pre> */ public Builder setNetworkIdentifierBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; networkIdentifier_ = value; onChanged(); return this; } private com.google.protobuf.ByteString lastSeenBlockHash_ = com.google.protobuf.ByteString.EMPTY; /** * <code>optional bytes last_seen_block_hash = 2;</code> * * <pre> * The SHA256 hash of the head of the best chain seen by this wallet. * </pre> */ public boolean hasLastSeenBlockHash() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>optional bytes last_seen_block_hash = 2;</code> * * <pre> * The SHA256 hash of the head of the best chain seen by this wallet. * </pre> */ public com.google.protobuf.ByteString getLastSeenBlockHash() { return lastSeenBlockHash_; } /** * <code>optional bytes last_seen_block_hash = 2;</code> * * <pre> * The SHA256 hash of the head of the best chain seen by this wallet. * </pre> */ public Builder setLastSeenBlockHash(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000002; lastSeenBlockHash_ = value; onChanged(); return this; } /** * <code>optional bytes last_seen_block_hash = 2;</code> * * <pre> * The SHA256 hash of the head of the best chain seen by this wallet. * </pre> */ public Builder clearLastSeenBlockHash() { bitField0_ = (bitField0_ & ~0x00000002); lastSeenBlockHash_ = getDefaultInstance().getLastSeenBlockHash(); onChanged(); return this; } private int lastSeenBlockHeight_ ; /** * <code>optional uint32 last_seen_block_height = 12;</code> * * <pre> * The height in the chain of the last seen block. * </pre> */ public boolean hasLastSeenBlockHeight() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>optional uint32 last_seen_block_height = 12;</code> * * <pre> * The height in the chain of the last seen block. * </pre> */ public int getLastSeenBlockHeight() { return lastSeenBlockHeight_; } /** * <code>optional uint32 last_seen_block_height = 12;</code> * * <pre> * The height in the chain of the last seen block. * </pre> */ public Builder setLastSeenBlockHeight(int value) { bitField0_ |= 0x00000004; lastSeenBlockHeight_ = value; onChanged(); return this; } /** * <code>optional uint32 last_seen_block_height = 12;</code> * * <pre> * The height in the chain of the last seen block. * </pre> */ public Builder clearLastSeenBlockHeight() { bitField0_ = (bitField0_ & ~0x00000004); lastSeenBlockHeight_ = 0; onChanged(); return this; } private long lastSeenBlockTimeSecs_ ; /** * <code>optional int64 last_seen_block_time_secs = 14;</code> */ public boolean hasLastSeenBlockTimeSecs() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * <code>optional int64 last_seen_block_time_secs = 14;</code> */ public long getLastSeenBlockTimeSecs() { return lastSeenBlockTimeSecs_; } /** * <code>optional int64 last_seen_block_time_secs = 14;</code> */ public Builder setLastSeenBlockTimeSecs(long value) { bitField0_ |= 0x00000008; lastSeenBlockTimeSecs_ = value; onChanged(); return this; } /** * <code>optional int64 last_seen_block_time_secs = 14;</code> */ public Builder clearLastSeenBlockTimeSecs() { bitField0_ = (bitField0_ & ~0x00000008); lastSeenBlockTimeSecs_ = 0L; onChanged(); return this; } private java.util.List<org.bitcoinj.wallet.Protos.Key> key_ = java.util.Collections.emptyList(); private void ensureKeyIsMutable() { if (!((bitField0_ & 0x00000010) == 0x00000010)) { key_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.Key>(key_); bitField0_ |= 0x00000010; } } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Key, org.bitcoinj.wallet.Protos.Key.Builder, org.bitcoinj.wallet.Protos.KeyOrBuilder> keyBuilder_; /** * <code>repeated .wallet.Key key = 3;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Key> getKeyList() { if (keyBuilder_ == null) { return java.util.Collections.unmodifiableList(key_); } else { return keyBuilder_.getMessageList(); } } /** * <code>repeated .wallet.Key key = 3;</code> */ public int getKeyCount() { if (keyBuilder_ == null) { return key_.size(); } else { return keyBuilder_.getCount(); } } /** * <code>repeated .wallet.Key key = 3;</code> */ public org.bitcoinj.wallet.Protos.Key getKey(int index) { if (keyBuilder_ == null) { return key_.get(index); } else { return keyBuilder_.getMessage(index); } } /** * <code>repeated .wallet.Key key = 3;</code> */ public Builder setKey( int index, org.bitcoinj.wallet.Protos.Key value) { if (keyBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureKeyIsMutable(); key_.set(index, value); onChanged(); } else { keyBuilder_.setMessage(index, value); } return this; } /** * <code>repeated .wallet.Key key = 3;</code> */ public Builder setKey( int index, org.bitcoinj.wallet.Protos.Key.Builder builderForValue) { if (keyBuilder_ == null) { ensureKeyIsMutable(); key_.set(index, builderForValue.build()); onChanged(); } else { keyBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.Key key = 3;</code> */ public Builder addKey(org.bitcoinj.wallet.Protos.Key value) { if (keyBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureKeyIsMutable(); key_.add(value); onChanged(); } else { keyBuilder_.addMessage(value); } return this; } /** * <code>repeated .wallet.Key key = 3;</code> */ public Builder addKey( int index, org.bitcoinj.wallet.Protos.Key value) { if (keyBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureKeyIsMutable(); key_.add(index, value); onChanged(); } else { keyBuilder_.addMessage(index, value); } return this; } /** * <code>repeated .wallet.Key key = 3;</code> */ public Builder addKey( org.bitcoinj.wallet.Protos.Key.Builder builderForValue) { if (keyBuilder_ == null) { ensureKeyIsMutable(); key_.add(builderForValue.build()); onChanged(); } else { keyBuilder_.addMessage(builderForValue.build()); } return this; } /** * <code>repeated .wallet.Key key = 3;</code> */ public Builder addKey( int index, org.bitcoinj.wallet.Protos.Key.Builder builderForValue) { if (keyBuilder_ == null) { ensureKeyIsMutable(); key_.add(index, builderForValue.build()); onChanged(); } else { keyBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.Key key = 3;</code> */ public Builder addAllKey( java.lang.Iterable<? extends org.bitcoinj.wallet.Protos.Key> values) { if (keyBuilder_ == null) { ensureKeyIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, key_); onChanged(); } else { keyBuilder_.addAllMessages(values); } return this; } /** * <code>repeated .wallet.Key key = 3;</code> */ public Builder clearKey() { if (keyBuilder_ == null) { key_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000010); onChanged(); } else { keyBuilder_.clear(); } return this; } /** * <code>repeated .wallet.Key key = 3;</code> */ public Builder removeKey(int index) { if (keyBuilder_ == null) { ensureKeyIsMutable(); key_.remove(index); onChanged(); } else { keyBuilder_.remove(index); } return this; } /** * <code>repeated .wallet.Key key = 3;</code> */ public org.bitcoinj.wallet.Protos.Key.Builder getKeyBuilder( int index) { return getKeyFieldBuilder().getBuilder(index); } /** * <code>repeated .wallet.Key key = 3;</code> */ public org.bitcoinj.wallet.Protos.KeyOrBuilder getKeyOrBuilder( int index) { if (keyBuilder_ == null) { return key_.get(index); } else { return keyBuilder_.getMessageOrBuilder(index); } } /** * <code>repeated .wallet.Key key = 3;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.KeyOrBuilder> getKeyOrBuilderList() { if (keyBuilder_ != null) { return keyBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(key_); } } /** * <code>repeated .wallet.Key key = 3;</code> */ public org.bitcoinj.wallet.Protos.Key.Builder addKeyBuilder() { return getKeyFieldBuilder().addBuilder( org.bitcoinj.wallet.Protos.Key.getDefaultInstance()); } /** * <code>repeated .wallet.Key key = 3;</code> */ public org.bitcoinj.wallet.Protos.Key.Builder addKeyBuilder( int index) { return getKeyFieldBuilder().addBuilder( index, org.bitcoinj.wallet.Protos.Key.getDefaultInstance()); } /** * <code>repeated .wallet.Key key = 3;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Key.Builder> getKeyBuilderList() { return getKeyFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Key, org.bitcoinj.wallet.Protos.Key.Builder, org.bitcoinj.wallet.Protos.KeyOrBuilder> getKeyFieldBuilder() { if (keyBuilder_ == null) { keyBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Key, org.bitcoinj.wallet.Protos.Key.Builder, org.bitcoinj.wallet.Protos.KeyOrBuilder>( key_, ((bitField0_ & 0x00000010) == 0x00000010), getParentForChildren(), isClean()); key_ = null; } return keyBuilder_; } private java.util.List<org.bitcoinj.wallet.Protos.Transaction> transaction_ = java.util.Collections.emptyList(); private void ensureTransactionIsMutable() { if (!((bitField0_ & 0x00000020) == 0x00000020)) { transaction_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.Transaction>(transaction_); bitField0_ |= 0x00000020; } } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Transaction, org.bitcoinj.wallet.Protos.Transaction.Builder, org.bitcoinj.wallet.Protos.TransactionOrBuilder> transactionBuilder_; /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Transaction> getTransactionList() { if (transactionBuilder_ == null) { return java.util.Collections.unmodifiableList(transaction_); } else { return transactionBuilder_.getMessageList(); } } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public int getTransactionCount() { if (transactionBuilder_ == null) { return transaction_.size(); } else { return transactionBuilder_.getCount(); } } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public org.bitcoinj.wallet.Protos.Transaction getTransaction(int index) { if (transactionBuilder_ == null) { return transaction_.get(index); } else { return transactionBuilder_.getMessage(index); } } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public Builder setTransaction( int index, org.bitcoinj.wallet.Protos.Transaction value) { if (transactionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTransactionIsMutable(); transaction_.set(index, value); onChanged(); } else { transactionBuilder_.setMessage(index, value); } return this; } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public Builder setTransaction( int index, org.bitcoinj.wallet.Protos.Transaction.Builder builderForValue) { if (transactionBuilder_ == null) { ensureTransactionIsMutable(); transaction_.set(index, builderForValue.build()); onChanged(); } else { transactionBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public Builder addTransaction(org.bitcoinj.wallet.Protos.Transaction value) { if (transactionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTransactionIsMutable(); transaction_.add(value); onChanged(); } else { transactionBuilder_.addMessage(value); } return this; } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public Builder addTransaction( int index, org.bitcoinj.wallet.Protos.Transaction value) { if (transactionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTransactionIsMutable(); transaction_.add(index, value); onChanged(); } else { transactionBuilder_.addMessage(index, value); } return this; } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public Builder addTransaction( org.bitcoinj.wallet.Protos.Transaction.Builder builderForValue) { if (transactionBuilder_ == null) { ensureTransactionIsMutable(); transaction_.add(builderForValue.build()); onChanged(); } else { transactionBuilder_.addMessage(builderForValue.build()); } return this; } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public Builder addTransaction( int index, org.bitcoinj.wallet.Protos.Transaction.Builder builderForValue) { if (transactionBuilder_ == null) { ensureTransactionIsMutable(); transaction_.add(index, builderForValue.build()); onChanged(); } else { transactionBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public Builder addAllTransaction( java.lang.Iterable<? extends org.bitcoinj.wallet.Protos.Transaction> values) { if (transactionBuilder_ == null) { ensureTransactionIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, transaction_); onChanged(); } else { transactionBuilder_.addAllMessages(values); } return this; } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public Builder clearTransaction() { if (transactionBuilder_ == null) { transaction_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000020); onChanged(); } else { transactionBuilder_.clear(); } return this; } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public Builder removeTransaction(int index) { if (transactionBuilder_ == null) { ensureTransactionIsMutable(); transaction_.remove(index); onChanged(); } else { transactionBuilder_.remove(index); } return this; } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public org.bitcoinj.wallet.Protos.Transaction.Builder getTransactionBuilder( int index) { return getTransactionFieldBuilder().getBuilder(index); } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public org.bitcoinj.wallet.Protos.TransactionOrBuilder getTransactionOrBuilder( int index) { if (transactionBuilder_ == null) { return transaction_.get(index); } else { return transactionBuilder_.getMessageOrBuilder(index); } } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.TransactionOrBuilder> getTransactionOrBuilderList() { if (transactionBuilder_ != null) { return transactionBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(transaction_); } } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public org.bitcoinj.wallet.Protos.Transaction.Builder addTransactionBuilder() { return getTransactionFieldBuilder().addBuilder( org.bitcoinj.wallet.Protos.Transaction.getDefaultInstance()); } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public org.bitcoinj.wallet.Protos.Transaction.Builder addTransactionBuilder( int index) { return getTransactionFieldBuilder().addBuilder( index, org.bitcoinj.wallet.Protos.Transaction.getDefaultInstance()); } /** * <code>repeated .wallet.Transaction transaction = 4;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Transaction.Builder> getTransactionBuilderList() { return getTransactionFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Transaction, org.bitcoinj.wallet.Protos.Transaction.Builder, org.bitcoinj.wallet.Protos.TransactionOrBuilder> getTransactionFieldBuilder() { if (transactionBuilder_ == null) { transactionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Transaction, org.bitcoinj.wallet.Protos.Transaction.Builder, org.bitcoinj.wallet.Protos.TransactionOrBuilder>( transaction_, ((bitField0_ & 0x00000020) == 0x00000020), getParentForChildren(), isClean()); transaction_ = null; } return transactionBuilder_; } private java.util.List<org.bitcoinj.wallet.Protos.Script> watchedScript_ = java.util.Collections.emptyList(); private void ensureWatchedScriptIsMutable() { if (!((bitField0_ & 0x00000040) == 0x00000040)) { watchedScript_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.Script>(watchedScript_); bitField0_ |= 0x00000040; } } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Script, org.bitcoinj.wallet.Protos.Script.Builder, org.bitcoinj.wallet.Protos.ScriptOrBuilder> watchedScriptBuilder_; /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Script> getWatchedScriptList() { if (watchedScriptBuilder_ == null) { return java.util.Collections.unmodifiableList(watchedScript_); } else { return watchedScriptBuilder_.getMessageList(); } } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public int getWatchedScriptCount() { if (watchedScriptBuilder_ == null) { return watchedScript_.size(); } else { return watchedScriptBuilder_.getCount(); } } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public org.bitcoinj.wallet.Protos.Script getWatchedScript(int index) { if (watchedScriptBuilder_ == null) { return watchedScript_.get(index); } else { return watchedScriptBuilder_.getMessage(index); } } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public Builder setWatchedScript( int index, org.bitcoinj.wallet.Protos.Script value) { if (watchedScriptBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureWatchedScriptIsMutable(); watchedScript_.set(index, value); onChanged(); } else { watchedScriptBuilder_.setMessage(index, value); } return this; } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public Builder setWatchedScript( int index, org.bitcoinj.wallet.Protos.Script.Builder builderForValue) { if (watchedScriptBuilder_ == null) { ensureWatchedScriptIsMutable(); watchedScript_.set(index, builderForValue.build()); onChanged(); } else { watchedScriptBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public Builder addWatchedScript(org.bitcoinj.wallet.Protos.Script value) { if (watchedScriptBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureWatchedScriptIsMutable(); watchedScript_.add(value); onChanged(); } else { watchedScriptBuilder_.addMessage(value); } return this; } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public Builder addWatchedScript( int index, org.bitcoinj.wallet.Protos.Script value) { if (watchedScriptBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureWatchedScriptIsMutable(); watchedScript_.add(index, value); onChanged(); } else { watchedScriptBuilder_.addMessage(index, value); } return this; } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public Builder addWatchedScript( org.bitcoinj.wallet.Protos.Script.Builder builderForValue) { if (watchedScriptBuilder_ == null) { ensureWatchedScriptIsMutable(); watchedScript_.add(builderForValue.build()); onChanged(); } else { watchedScriptBuilder_.addMessage(builderForValue.build()); } return this; } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public Builder addWatchedScript( int index, org.bitcoinj.wallet.Protos.Script.Builder builderForValue) { if (watchedScriptBuilder_ == null) { ensureWatchedScriptIsMutable(); watchedScript_.add(index, builderForValue.build()); onChanged(); } else { watchedScriptBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public Builder addAllWatchedScript( java.lang.Iterable<? extends org.bitcoinj.wallet.Protos.Script> values) { if (watchedScriptBuilder_ == null) { ensureWatchedScriptIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, watchedScript_); onChanged(); } else { watchedScriptBuilder_.addAllMessages(values); } return this; } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public Builder clearWatchedScript() { if (watchedScriptBuilder_ == null) { watchedScript_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000040); onChanged(); } else { watchedScriptBuilder_.clear(); } return this; } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public Builder removeWatchedScript(int index) { if (watchedScriptBuilder_ == null) { ensureWatchedScriptIsMutable(); watchedScript_.remove(index); onChanged(); } else { watchedScriptBuilder_.remove(index); } return this; } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public org.bitcoinj.wallet.Protos.Script.Builder getWatchedScriptBuilder( int index) { return getWatchedScriptFieldBuilder().getBuilder(index); } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public org.bitcoinj.wallet.Protos.ScriptOrBuilder getWatchedScriptOrBuilder( int index) { if (watchedScriptBuilder_ == null) { return watchedScript_.get(index); } else { return watchedScriptBuilder_.getMessageOrBuilder(index); } } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.ScriptOrBuilder> getWatchedScriptOrBuilderList() { if (watchedScriptBuilder_ != null) { return watchedScriptBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(watchedScript_); } } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public org.bitcoinj.wallet.Protos.Script.Builder addWatchedScriptBuilder() { return getWatchedScriptFieldBuilder().addBuilder( org.bitcoinj.wallet.Protos.Script.getDefaultInstance()); } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public org.bitcoinj.wallet.Protos.Script.Builder addWatchedScriptBuilder( int index) { return getWatchedScriptFieldBuilder().addBuilder( index, org.bitcoinj.wallet.Protos.Script.getDefaultInstance()); } /** * <code>repeated .wallet.Script watched_script = 15;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Script.Builder> getWatchedScriptBuilderList() { return getWatchedScriptFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Script, org.bitcoinj.wallet.Protos.Script.Builder, org.bitcoinj.wallet.Protos.ScriptOrBuilder> getWatchedScriptFieldBuilder() { if (watchedScriptBuilder_ == null) { watchedScriptBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Script, org.bitcoinj.wallet.Protos.Script.Builder, org.bitcoinj.wallet.Protos.ScriptOrBuilder>( watchedScript_, ((bitField0_ & 0x00000040) == 0x00000040), getParentForChildren(), isClean()); watchedScript_ = null; } return watchedScriptBuilder_; } private org.bitcoinj.wallet.Protos.Wallet.EncryptionType encryptionType_ = org.bitcoinj.wallet.Protos.Wallet.EncryptionType.UNENCRYPTED; /** * <code>optional .wallet.Wallet.EncryptionType encryption_type = 5 [default = UNENCRYPTED];</code> */ public boolean hasEncryptionType() { return ((bitField0_ & 0x00000080) == 0x00000080); } /** * <code>optional .wallet.Wallet.EncryptionType encryption_type = 5 [default = UNENCRYPTED];</code> */ public org.bitcoinj.wallet.Protos.Wallet.EncryptionType getEncryptionType() { return encryptionType_; } /** * <code>optional .wallet.Wallet.EncryptionType encryption_type = 5 [default = UNENCRYPTED];</code> */ public Builder setEncryptionType(org.bitcoinj.wallet.Protos.Wallet.EncryptionType value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000080; encryptionType_ = value; onChanged(); return this; } /** * <code>optional .wallet.Wallet.EncryptionType encryption_type = 5 [default = UNENCRYPTED];</code> */ public Builder clearEncryptionType() { bitField0_ = (bitField0_ & ~0x00000080); encryptionType_ = org.bitcoinj.wallet.Protos.Wallet.EncryptionType.UNENCRYPTED; onChanged(); return this; } private org.bitcoinj.wallet.Protos.ScryptParameters encryptionParameters_ = org.bitcoinj.wallet.Protos.ScryptParameters.getDefaultInstance(); private com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.ScryptParameters, org.bitcoinj.wallet.Protos.ScryptParameters.Builder, org.bitcoinj.wallet.Protos.ScryptParametersOrBuilder> encryptionParametersBuilder_; /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ public boolean hasEncryptionParameters() { return ((bitField0_ & 0x00000100) == 0x00000100); } /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ public org.bitcoinj.wallet.Protos.ScryptParameters getEncryptionParameters() { if (encryptionParametersBuilder_ == null) { return encryptionParameters_; } else { return encryptionParametersBuilder_.getMessage(); } } /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ public Builder setEncryptionParameters(org.bitcoinj.wallet.Protos.ScryptParameters value) { if (encryptionParametersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } encryptionParameters_ = value; onChanged(); } else { encryptionParametersBuilder_.setMessage(value); } bitField0_ |= 0x00000100; return this; } /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ public Builder setEncryptionParameters( org.bitcoinj.wallet.Protos.ScryptParameters.Builder builderForValue) { if (encryptionParametersBuilder_ == null) { encryptionParameters_ = builderForValue.build(); onChanged(); } else { encryptionParametersBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000100; return this; } /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ public Builder mergeEncryptionParameters(org.bitcoinj.wallet.Protos.ScryptParameters value) { if (encryptionParametersBuilder_ == null) { if (((bitField0_ & 0x00000100) == 0x00000100) && encryptionParameters_ != org.bitcoinj.wallet.Protos.ScryptParameters.getDefaultInstance()) { encryptionParameters_ = org.bitcoinj.wallet.Protos.ScryptParameters.newBuilder(encryptionParameters_).mergeFrom(value).buildPartial(); } else { encryptionParameters_ = value; } onChanged(); } else { encryptionParametersBuilder_.mergeFrom(value); } bitField0_ |= 0x00000100; return this; } /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ public Builder clearEncryptionParameters() { if (encryptionParametersBuilder_ == null) { encryptionParameters_ = org.bitcoinj.wallet.Protos.ScryptParameters.getDefaultInstance(); onChanged(); } else { encryptionParametersBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000100); return this; } /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ public org.bitcoinj.wallet.Protos.ScryptParameters.Builder getEncryptionParametersBuilder() { bitField0_ |= 0x00000100; onChanged(); return getEncryptionParametersFieldBuilder().getBuilder(); } /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ public org.bitcoinj.wallet.Protos.ScryptParametersOrBuilder getEncryptionParametersOrBuilder() { if (encryptionParametersBuilder_ != null) { return encryptionParametersBuilder_.getMessageOrBuilder(); } else { return encryptionParameters_; } } /** * <code>optional .wallet.ScryptParameters encryption_parameters = 6;</code> */ private com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.ScryptParameters, org.bitcoinj.wallet.Protos.ScryptParameters.Builder, org.bitcoinj.wallet.Protos.ScryptParametersOrBuilder> getEncryptionParametersFieldBuilder() { if (encryptionParametersBuilder_ == null) { encryptionParametersBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.bitcoinj.wallet.Protos.ScryptParameters, org.bitcoinj.wallet.Protos.ScryptParameters.Builder, org.bitcoinj.wallet.Protos.ScryptParametersOrBuilder>( getEncryptionParameters(), getParentForChildren(), isClean()); encryptionParameters_ = null; } return encryptionParametersBuilder_; } private int version_ = 1; /** * <code>optional int32 version = 7 [default = 1];</code> * * <pre> * The version number of the wallet - used to detect wallets that were produced in the future * (i.e. the wallet may contain some future format this protobuf or parser code does not know about). * A version that's higher than the default is considered from the future. * </pre> */ public boolean hasVersion() { return ((bitField0_ & 0x00000200) == 0x00000200); } /** * <code>optional int32 version = 7 [default = 1];</code> * * <pre> * The version number of the wallet - used to detect wallets that were produced in the future * (i.e. the wallet may contain some future format this protobuf or parser code does not know about). * A version that's higher than the default is considered from the future. * </pre> */ public int getVersion() { return version_; } /** * <code>optional int32 version = 7 [default = 1];</code> * * <pre> * The version number of the wallet - used to detect wallets that were produced in the future * (i.e. the wallet may contain some future format this protobuf or parser code does not know about). * A version that's higher than the default is considered from the future. * </pre> */ public Builder setVersion(int value) { bitField0_ |= 0x00000200; version_ = value; onChanged(); return this; } /** * <code>optional int32 version = 7 [default = 1];</code> * * <pre> * The version number of the wallet - used to detect wallets that were produced in the future * (i.e. the wallet may contain some future format this protobuf or parser code does not know about). * A version that's higher than the default is considered from the future. * </pre> */ public Builder clearVersion() { bitField0_ = (bitField0_ & ~0x00000200); version_ = 1; onChanged(); return this; } private java.util.List<org.bitcoinj.wallet.Protos.Extension> extension_ = java.util.Collections.emptyList(); private void ensureExtensionIsMutable() { if (!((bitField0_ & 0x00000400) == 0x00000400)) { extension_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.Extension>(extension_); bitField0_ |= 0x00000400; } } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Extension, org.bitcoinj.wallet.Protos.Extension.Builder, org.bitcoinj.wallet.Protos.ExtensionOrBuilder> extensionBuilder_; /** * <code>repeated .wallet.Extension extension = 10;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Extension> getExtensionList() { if (extensionBuilder_ == null) { return java.util.Collections.unmodifiableList(extension_); } else { return extensionBuilder_.getMessageList(); } } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public int getExtensionCount() { if (extensionBuilder_ == null) { return extension_.size(); } else { return extensionBuilder_.getCount(); } } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public org.bitcoinj.wallet.Protos.Extension getExtension(int index) { if (extensionBuilder_ == null) { return extension_.get(index); } else { return extensionBuilder_.getMessage(index); } } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public Builder setExtension( int index, org.bitcoinj.wallet.Protos.Extension value) { if (extensionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureExtensionIsMutable(); extension_.set(index, value); onChanged(); } else { extensionBuilder_.setMessage(index, value); } return this; } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public Builder setExtension( int index, org.bitcoinj.wallet.Protos.Extension.Builder builderForValue) { if (extensionBuilder_ == null) { ensureExtensionIsMutable(); extension_.set(index, builderForValue.build()); onChanged(); } else { extensionBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public Builder addExtension(org.bitcoinj.wallet.Protos.Extension value) { if (extensionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureExtensionIsMutable(); extension_.add(value); onChanged(); } else { extensionBuilder_.addMessage(value); } return this; } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public Builder addExtension( int index, org.bitcoinj.wallet.Protos.Extension value) { if (extensionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureExtensionIsMutable(); extension_.add(index, value); onChanged(); } else { extensionBuilder_.addMessage(index, value); } return this; } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public Builder addExtension( org.bitcoinj.wallet.Protos.Extension.Builder builderForValue) { if (extensionBuilder_ == null) { ensureExtensionIsMutable(); extension_.add(builderForValue.build()); onChanged(); } else { extensionBuilder_.addMessage(builderForValue.build()); } return this; } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public Builder addExtension( int index, org.bitcoinj.wallet.Protos.Extension.Builder builderForValue) { if (extensionBuilder_ == null) { ensureExtensionIsMutable(); extension_.add(index, builderForValue.build()); onChanged(); } else { extensionBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public Builder addAllExtension( java.lang.Iterable<? extends org.bitcoinj.wallet.Protos.Extension> values) { if (extensionBuilder_ == null) { ensureExtensionIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, extension_); onChanged(); } else { extensionBuilder_.addAllMessages(values); } return this; } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public Builder clearExtension() { if (extensionBuilder_ == null) { extension_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000400); onChanged(); } else { extensionBuilder_.clear(); } return this; } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public Builder removeExtension(int index) { if (extensionBuilder_ == null) { ensureExtensionIsMutable(); extension_.remove(index); onChanged(); } else { extensionBuilder_.remove(index); } return this; } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public org.bitcoinj.wallet.Protos.Extension.Builder getExtensionBuilder( int index) { return getExtensionFieldBuilder().getBuilder(index); } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public org.bitcoinj.wallet.Protos.ExtensionOrBuilder getExtensionOrBuilder( int index) { if (extensionBuilder_ == null) { return extension_.get(index); } else { return extensionBuilder_.getMessageOrBuilder(index); } } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.ExtensionOrBuilder> getExtensionOrBuilderList() { if (extensionBuilder_ != null) { return extensionBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(extension_); } } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public org.bitcoinj.wallet.Protos.Extension.Builder addExtensionBuilder() { return getExtensionFieldBuilder().addBuilder( org.bitcoinj.wallet.Protos.Extension.getDefaultInstance()); } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public org.bitcoinj.wallet.Protos.Extension.Builder addExtensionBuilder( int index) { return getExtensionFieldBuilder().addBuilder( index, org.bitcoinj.wallet.Protos.Extension.getDefaultInstance()); } /** * <code>repeated .wallet.Extension extension = 10;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Extension.Builder> getExtensionBuilderList() { return getExtensionFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Extension, org.bitcoinj.wallet.Protos.Extension.Builder, org.bitcoinj.wallet.Protos.ExtensionOrBuilder> getExtensionFieldBuilder() { if (extensionBuilder_ == null) { extensionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Extension, org.bitcoinj.wallet.Protos.Extension.Builder, org.bitcoinj.wallet.Protos.ExtensionOrBuilder>( extension_, ((bitField0_ & 0x00000400) == 0x00000400), getParentForChildren(), isClean()); extension_ = null; } return extensionBuilder_; } private java.lang.Object description_ = ""; /** * <code>optional string description = 11;</code> * * <pre> * A UTF8 encoded text description of the wallet that is intended for end user provided text. * </pre> */ public boolean hasDescription() { return ((bitField0_ & 0x00000800) == 0x00000800); } /** * <code>optional string description = 11;</code> * * <pre> * A UTF8 encoded text description of the wallet that is intended for end user provided text. * </pre> */ public java.lang.String getDescription() { java.lang.Object ref = description_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { description_ = s; } return s; } else { return (java.lang.String) ref; } } /** * <code>optional string description = 11;</code> * * <pre> * A UTF8 encoded text description of the wallet that is intended for end user provided text. * </pre> */ public com.google.protobuf.ByteString getDescriptionBytes() { java.lang.Object ref = description_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); description_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * <code>optional string description = 11;</code> * * <pre> * A UTF8 encoded text description of the wallet that is intended for end user provided text. * </pre> */ public Builder setDescription( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000800; description_ = value; onChanged(); return this; } /** * <code>optional string description = 11;</code> * * <pre> * A UTF8 encoded text description of the wallet that is intended for end user provided text. * </pre> */ public Builder clearDescription() { bitField0_ = (bitField0_ & ~0x00000800); description_ = getDefaultInstance().getDescription(); onChanged(); return this; } /** * <code>optional string description = 11;</code> * * <pre> * A UTF8 encoded text description of the wallet that is intended for end user provided text. * </pre> */ public Builder setDescriptionBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000800; description_ = value; onChanged(); return this; } private long keyRotationTime_ ; /** * <code>optional uint64 key_rotation_time = 13;</code> * * <pre> * UNIX time in seconds since the epoch. If set, then any keys created before this date are assumed to be no longer * wanted. Money sent to them will be re-spent automatically to the first key that was created after this time. It * can be used to recover a compromised wallet, or just as part of preventative defence-in-depth measures. * </pre> */ public boolean hasKeyRotationTime() { return ((bitField0_ & 0x00001000) == 0x00001000); } /** * <code>optional uint64 key_rotation_time = 13;</code> * * <pre> * UNIX time in seconds since the epoch. If set, then any keys created before this date are assumed to be no longer * wanted. Money sent to them will be re-spent automatically to the first key that was created after this time. It * can be used to recover a compromised wallet, or just as part of preventative defence-in-depth measures. * </pre> */ public long getKeyRotationTime() { return keyRotationTime_; } /** * <code>optional uint64 key_rotation_time = 13;</code> * * <pre> * UNIX time in seconds since the epoch. If set, then any keys created before this date are assumed to be no longer * wanted. Money sent to them will be re-spent automatically to the first key that was created after this time. It * can be used to recover a compromised wallet, or just as part of preventative defence-in-depth measures. * </pre> */ public Builder setKeyRotationTime(long value) { bitField0_ |= 0x00001000; keyRotationTime_ = value; onChanged(); return this; } /** * <code>optional uint64 key_rotation_time = 13;</code> * * <pre> * UNIX time in seconds since the epoch. If set, then any keys created before this date are assumed to be no longer * wanted. Money sent to them will be re-spent automatically to the first key that was created after this time. It * can be used to recover a compromised wallet, or just as part of preventative defence-in-depth measures. * </pre> */ public Builder clearKeyRotationTime() { bitField0_ = (bitField0_ & ~0x00001000); keyRotationTime_ = 0L; onChanged(); return this; } private java.util.List<org.bitcoinj.wallet.Protos.Tag> tags_ = java.util.Collections.emptyList(); private void ensureTagsIsMutable() { if (!((bitField0_ & 0x00002000) == 0x00002000)) { tags_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.Tag>(tags_); bitField0_ |= 0x00002000; } } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Tag, org.bitcoinj.wallet.Protos.Tag.Builder, org.bitcoinj.wallet.Protos.TagOrBuilder> tagsBuilder_; /** * <code>repeated .wallet.Tag tags = 16;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Tag> getTagsList() { if (tagsBuilder_ == null) { return java.util.Collections.unmodifiableList(tags_); } else { return tagsBuilder_.getMessageList(); } } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public int getTagsCount() { if (tagsBuilder_ == null) { return tags_.size(); } else { return tagsBuilder_.getCount(); } } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public org.bitcoinj.wallet.Protos.Tag getTags(int index) { if (tagsBuilder_ == null) { return tags_.get(index); } else { return tagsBuilder_.getMessage(index); } } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public Builder setTags( int index, org.bitcoinj.wallet.Protos.Tag value) { if (tagsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTagsIsMutable(); tags_.set(index, value); onChanged(); } else { tagsBuilder_.setMessage(index, value); } return this; } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public Builder setTags( int index, org.bitcoinj.wallet.Protos.Tag.Builder builderForValue) { if (tagsBuilder_ == null) { ensureTagsIsMutable(); tags_.set(index, builderForValue.build()); onChanged(); } else { tagsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public Builder addTags(org.bitcoinj.wallet.Protos.Tag value) { if (tagsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTagsIsMutable(); tags_.add(value); onChanged(); } else { tagsBuilder_.addMessage(value); } return this; } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public Builder addTags( int index, org.bitcoinj.wallet.Protos.Tag value) { if (tagsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTagsIsMutable(); tags_.add(index, value); onChanged(); } else { tagsBuilder_.addMessage(index, value); } return this; } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public Builder addTags( org.bitcoinj.wallet.Protos.Tag.Builder builderForValue) { if (tagsBuilder_ == null) { ensureTagsIsMutable(); tags_.add(builderForValue.build()); onChanged(); } else { tagsBuilder_.addMessage(builderForValue.build()); } return this; } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public Builder addTags( int index, org.bitcoinj.wallet.Protos.Tag.Builder builderForValue) { if (tagsBuilder_ == null) { ensureTagsIsMutable(); tags_.add(index, builderForValue.build()); onChanged(); } else { tagsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public Builder addAllTags( java.lang.Iterable<? extends org.bitcoinj.wallet.Protos.Tag> values) { if (tagsBuilder_ == null) { ensureTagsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, tags_); onChanged(); } else { tagsBuilder_.addAllMessages(values); } return this; } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public Builder clearTags() { if (tagsBuilder_ == null) { tags_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00002000); onChanged(); } else { tagsBuilder_.clear(); } return this; } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public Builder removeTags(int index) { if (tagsBuilder_ == null) { ensureTagsIsMutable(); tags_.remove(index); onChanged(); } else { tagsBuilder_.remove(index); } return this; } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public org.bitcoinj.wallet.Protos.Tag.Builder getTagsBuilder( int index) { return getTagsFieldBuilder().getBuilder(index); } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public org.bitcoinj.wallet.Protos.TagOrBuilder getTagsOrBuilder( int index) { if (tagsBuilder_ == null) { return tags_.get(index); } else { return tagsBuilder_.getMessageOrBuilder(index); } } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.TagOrBuilder> getTagsOrBuilderList() { if (tagsBuilder_ != null) { return tagsBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(tags_); } } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public org.bitcoinj.wallet.Protos.Tag.Builder addTagsBuilder() { return getTagsFieldBuilder().addBuilder( org.bitcoinj.wallet.Protos.Tag.getDefaultInstance()); } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public org.bitcoinj.wallet.Protos.Tag.Builder addTagsBuilder( int index) { return getTagsFieldBuilder().addBuilder( index, org.bitcoinj.wallet.Protos.Tag.getDefaultInstance()); } /** * <code>repeated .wallet.Tag tags = 16;</code> */ public java.util.List<org.bitcoinj.wallet.Protos.Tag.Builder> getTagsBuilderList() { return getTagsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Tag, org.bitcoinj.wallet.Protos.Tag.Builder, org.bitcoinj.wallet.Protos.TagOrBuilder> getTagsFieldBuilder() { if (tagsBuilder_ == null) { tagsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.Tag, org.bitcoinj.wallet.Protos.Tag.Builder, org.bitcoinj.wallet.Protos.TagOrBuilder>( tags_, ((bitField0_ & 0x00002000) == 0x00002000), getParentForChildren(), isClean()); tags_ = null; } return tagsBuilder_; } private java.util.List<org.bitcoinj.wallet.Protos.TransactionSigner> transactionSigners_ = java.util.Collections.emptyList(); private void ensureTransactionSignersIsMutable() { if (!((bitField0_ & 0x00004000) == 0x00004000)) { transactionSigners_ = new java.util.ArrayList<org.bitcoinj.wallet.Protos.TransactionSigner>(transactionSigners_); bitField0_ |= 0x00004000; } } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.TransactionSigner, org.bitcoinj.wallet.Protos.TransactionSigner.Builder, org.bitcoinj.wallet.Protos.TransactionSignerOrBuilder> transactionSignersBuilder_; /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public java.util.List<org.bitcoinj.wallet.Protos.TransactionSigner> getTransactionSignersList() { if (transactionSignersBuilder_ == null) { return java.util.Collections.unmodifiableList(transactionSigners_); } else { return transactionSignersBuilder_.getMessageList(); } } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public int getTransactionSignersCount() { if (transactionSignersBuilder_ == null) { return transactionSigners_.size(); } else { return transactionSignersBuilder_.getCount(); } } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public org.bitcoinj.wallet.Protos.TransactionSigner getTransactionSigners(int index) { if (transactionSignersBuilder_ == null) { return transactionSigners_.get(index); } else { return transactionSignersBuilder_.getMessage(index); } } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public Builder setTransactionSigners( int index, org.bitcoinj.wallet.Protos.TransactionSigner value) { if (transactionSignersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTransactionSignersIsMutable(); transactionSigners_.set(index, value); onChanged(); } else { transactionSignersBuilder_.setMessage(index, value); } return this; } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public Builder setTransactionSigners( int index, org.bitcoinj.wallet.Protos.TransactionSigner.Builder builderForValue) { if (transactionSignersBuilder_ == null) { ensureTransactionSignersIsMutable(); transactionSigners_.set(index, builderForValue.build()); onChanged(); } else { transactionSignersBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public Builder addTransactionSigners(org.bitcoinj.wallet.Protos.TransactionSigner value) { if (transactionSignersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTransactionSignersIsMutable(); transactionSigners_.add(value); onChanged(); } else { transactionSignersBuilder_.addMessage(value); } return this; } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public Builder addTransactionSigners( int index, org.bitcoinj.wallet.Protos.TransactionSigner value) { if (transactionSignersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTransactionSignersIsMutable(); transactionSigners_.add(index, value); onChanged(); } else { transactionSignersBuilder_.addMessage(index, value); } return this; } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public Builder addTransactionSigners( org.bitcoinj.wallet.Protos.TransactionSigner.Builder builderForValue) { if (transactionSignersBuilder_ == null) { ensureTransactionSignersIsMutable(); transactionSigners_.add(builderForValue.build()); onChanged(); } else { transactionSignersBuilder_.addMessage(builderForValue.build()); } return this; } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public Builder addTransactionSigners( int index, org.bitcoinj.wallet.Protos.TransactionSigner.Builder builderForValue) { if (transactionSignersBuilder_ == null) { ensureTransactionSignersIsMutable(); transactionSigners_.add(index, builderForValue.build()); onChanged(); } else { transactionSignersBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public Builder addAllTransactionSigners( java.lang.Iterable<? extends org.bitcoinj.wallet.Protos.TransactionSigner> values) { if (transactionSignersBuilder_ == null) { ensureTransactionSignersIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, transactionSigners_); onChanged(); } else { transactionSignersBuilder_.addAllMessages(values); } return this; } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public Builder clearTransactionSigners() { if (transactionSignersBuilder_ == null) { transactionSigners_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00004000); onChanged(); } else { transactionSignersBuilder_.clear(); } return this; } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public Builder removeTransactionSigners(int index) { if (transactionSignersBuilder_ == null) { ensureTransactionSignersIsMutable(); transactionSigners_.remove(index); onChanged(); } else { transactionSignersBuilder_.remove(index); } return this; } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public org.bitcoinj.wallet.Protos.TransactionSigner.Builder getTransactionSignersBuilder( int index) { return getTransactionSignersFieldBuilder().getBuilder(index); } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public org.bitcoinj.wallet.Protos.TransactionSignerOrBuilder getTransactionSignersOrBuilder( int index) { if (transactionSignersBuilder_ == null) { return transactionSigners_.get(index); } else { return transactionSignersBuilder_.getMessageOrBuilder(index); } } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public java.util.List<? extends org.bitcoinj.wallet.Protos.TransactionSignerOrBuilder> getTransactionSignersOrBuilderList() { if (transactionSignersBuilder_ != null) { return transactionSignersBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(transactionSigners_); } } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public org.bitcoinj.wallet.Protos.TransactionSigner.Builder addTransactionSignersBuilder() { return getTransactionSignersFieldBuilder().addBuilder( org.bitcoinj.wallet.Protos.TransactionSigner.getDefaultInstance()); } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public org.bitcoinj.wallet.Protos.TransactionSigner.Builder addTransactionSignersBuilder( int index) { return getTransactionSignersFieldBuilder().addBuilder( index, org.bitcoinj.wallet.Protos.TransactionSigner.getDefaultInstance()); } /** * <code>repeated .wallet.TransactionSigner transaction_signers = 17;</code> * * <pre> * transaction signers added to the wallet * </pre> */ public java.util.List<org.bitcoinj.wallet.Protos.TransactionSigner.Builder> getTransactionSignersBuilderList() { return getTransactionSignersFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.TransactionSigner, org.bitcoinj.wallet.Protos.TransactionSigner.Builder, org.bitcoinj.wallet.Protos.TransactionSignerOrBuilder> getTransactionSignersFieldBuilder() { if (transactionSignersBuilder_ == null) { transactionSignersBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.bitcoinj.wallet.Protos.TransactionSigner, org.bitcoinj.wallet.Protos.TransactionSigner.Builder, org.bitcoinj.wallet.Protos.TransactionSignerOrBuilder>( transactionSigners_, ((bitField0_ & 0x00004000) == 0x00004000), getParentForChildren(), isClean()); transactionSigners_ = null; } return transactionSignersBuilder_; } // @@protoc_insertion_point(builder_scope:wallet.Wallet) } static { defaultInstance = new Wallet(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.Wallet) } public interface ExchangeRateOrBuilder extends // @@protoc_insertion_point(interface_extends:wallet.ExchangeRate) com.google.protobuf.MessageOrBuilder { /** * <code>required int64 coin_value = 1;</code> * * <pre> * This much of satoshis (1E-8 fractions)… * </pre> */ boolean hasCoinValue(); /** * <code>required int64 coin_value = 1;</code> * * <pre> * This much of satoshis (1E-8 fractions)… * </pre> */ long getCoinValue(); /** * <code>required int64 fiat_value = 2;</code> * * <pre> * …is worth this much of fiat (1E-4 fractions). * </pre> */ boolean hasFiatValue(); /** * <code>required int64 fiat_value = 2;</code> * * <pre> * …is worth this much of fiat (1E-4 fractions). * </pre> */ long getFiatValue(); /** * <code>required string fiat_currency_code = 3;</code> * * <pre> * ISO 4217 currency code (if available) of the fiat currency. * </pre> */ boolean hasFiatCurrencyCode(); /** * <code>required string fiat_currency_code = 3;</code> * * <pre> * ISO 4217 currency code (if available) of the fiat currency. * </pre> */ java.lang.String getFiatCurrencyCode(); /** * <code>required string fiat_currency_code = 3;</code> * * <pre> * ISO 4217 currency code (if available) of the fiat currency. * </pre> */ com.google.protobuf.ByteString getFiatCurrencyCodeBytes(); } /** * Protobuf type {@code wallet.ExchangeRate} * * <pre> ** An exchange rate between Bitcoin and some fiat currency. * </pre> */ public static final class ExchangeRate extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:wallet.ExchangeRate) ExchangeRateOrBuilder { // Use ExchangeRate.newBuilder() to construct. private ExchangeRate(com.google.protobuf.GeneratedMessage.Builder<?> builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private ExchangeRate(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final ExchangeRate defaultInstance; public static ExchangeRate getDefaultInstance() { return defaultInstance; } public ExchangeRate getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private ExchangeRate( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 8: { bitField0_ |= 0x00000001; coinValue_ = input.readInt64(); break; } case 16: { bitField0_ |= 0x00000002; fiatValue_ = input.readInt64(); break; } case 26: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000004; fiatCurrencyCode_ = bs; break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_ExchangeRate_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_ExchangeRate_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.ExchangeRate.class, org.bitcoinj.wallet.Protos.ExchangeRate.Builder.class); } public static com.google.protobuf.Parser<ExchangeRate> PARSER = new com.google.protobuf.AbstractParser<ExchangeRate>() { public ExchangeRate parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new ExchangeRate(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser<ExchangeRate> getParserForType() { return PARSER; } private int bitField0_; public static final int COIN_VALUE_FIELD_NUMBER = 1; private long coinValue_; /** * <code>required int64 coin_value = 1;</code> * * <pre> * This much of satoshis (1E-8 fractions)… * </pre> */ public boolean hasCoinValue() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required int64 coin_value = 1;</code> * * <pre> * This much of satoshis (1E-8 fractions)… * </pre> */ public long getCoinValue() { return coinValue_; } public static final int FIAT_VALUE_FIELD_NUMBER = 2; private long fiatValue_; /** * <code>required int64 fiat_value = 2;</code> * * <pre> * …is worth this much of fiat (1E-4 fractions). * </pre> */ public boolean hasFiatValue() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required int64 fiat_value = 2;</code> * * <pre> * …is worth this much of fiat (1E-4 fractions). * </pre> */ public long getFiatValue() { return fiatValue_; } public static final int FIAT_CURRENCY_CODE_FIELD_NUMBER = 3; private java.lang.Object fiatCurrencyCode_; /** * <code>required string fiat_currency_code = 3;</code> * * <pre> * ISO 4217 currency code (if available) of the fiat currency. * </pre> */ public boolean hasFiatCurrencyCode() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>required string fiat_currency_code = 3;</code> * * <pre> * ISO 4217 currency code (if available) of the fiat currency. * </pre> */ public java.lang.String getFiatCurrencyCode() { java.lang.Object ref = fiatCurrencyCode_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { fiatCurrencyCode_ = s; } return s; } } /** * <code>required string fiat_currency_code = 3;</code> * * <pre> * ISO 4217 currency code (if available) of the fiat currency. * </pre> */ public com.google.protobuf.ByteString getFiatCurrencyCodeBytes() { java.lang.Object ref = fiatCurrencyCode_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); fiatCurrencyCode_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } private void initFields() { coinValue_ = 0L; fiatValue_ = 0L; fiatCurrencyCode_ = ""; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; if (!hasCoinValue()) { memoizedIsInitialized = 0; return false; } if (!hasFiatValue()) { memoizedIsInitialized = 0; return false; } if (!hasFiatCurrencyCode()) { memoizedIsInitialized = 0; return false; } memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeInt64(1, coinValue_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeInt64(2, fiatValue_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeBytes(3, getFiatCurrencyCodeBytes()); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(1, coinValue_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(2, fiatValue_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(3, getFiatCurrencyCodeBytes()); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.bitcoinj.wallet.Protos.ExchangeRate parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.ExchangeRate parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.ExchangeRate parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.bitcoinj.wallet.Protos.ExchangeRate parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.bitcoinj.wallet.Protos.ExchangeRate parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.ExchangeRate parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.ExchangeRate parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.bitcoinj.wallet.Protos.ExchangeRate parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.bitcoinj.wallet.Protos.ExchangeRate parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.bitcoinj.wallet.Protos.ExchangeRate parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.bitcoinj.wallet.Protos.ExchangeRate prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code wallet.ExchangeRate} * * <pre> ** An exchange rate between Bitcoin and some fiat currency. * </pre> */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder<Builder> implements // @@protoc_insertion_point(builder_implements:wallet.ExchangeRate) org.bitcoinj.wallet.Protos.ExchangeRateOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.bitcoinj.wallet.Protos.internal_static_wallet_ExchangeRate_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.bitcoinj.wallet.Protos.internal_static_wallet_ExchangeRate_fieldAccessorTable .ensureFieldAccessorsInitialized( org.bitcoinj.wallet.Protos.ExchangeRate.class, org.bitcoinj.wallet.Protos.ExchangeRate.Builder.class); } // Construct using org.bitcoinj.wallet.Protos.ExchangeRate.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); coinValue_ = 0L; bitField0_ = (bitField0_ & ~0x00000001); fiatValue_ = 0L; bitField0_ = (bitField0_ & ~0x00000002); fiatCurrencyCode_ = ""; bitField0_ = (bitField0_ & ~0x00000004); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.bitcoinj.wallet.Protos.internal_static_wallet_ExchangeRate_descriptor; } public org.bitcoinj.wallet.Protos.ExchangeRate getDefaultInstanceForType() { return org.bitcoinj.wallet.Protos.ExchangeRate.getDefaultInstance(); } public org.bitcoinj.wallet.Protos.ExchangeRate build() { org.bitcoinj.wallet.Protos.ExchangeRate result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.bitcoinj.wallet.Protos.ExchangeRate buildPartial() { org.bitcoinj.wallet.Protos.ExchangeRate result = new org.bitcoinj.wallet.Protos.ExchangeRate(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.coinValue_ = coinValue_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.fiatValue_ = fiatValue_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } result.fiatCurrencyCode_ = fiatCurrencyCode_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.bitcoinj.wallet.Protos.ExchangeRate) { return mergeFrom((org.bitcoinj.wallet.Protos.ExchangeRate)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.bitcoinj.wallet.Protos.ExchangeRate other) { if (other == org.bitcoinj.wallet.Protos.ExchangeRate.getDefaultInstance()) return this; if (other.hasCoinValue()) { setCoinValue(other.getCoinValue()); } if (other.hasFiatValue()) { setFiatValue(other.getFiatValue()); } if (other.hasFiatCurrencyCode()) { bitField0_ |= 0x00000004; fiatCurrencyCode_ = other.fiatCurrencyCode_; onChanged(); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { if (!hasCoinValue()) { return false; } if (!hasFiatValue()) { return false; } if (!hasFiatCurrencyCode()) { return false; } return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.bitcoinj.wallet.Protos.ExchangeRate parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.bitcoinj.wallet.Protos.ExchangeRate) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private long coinValue_ ; /** * <code>required int64 coin_value = 1;</code> * * <pre> * This much of satoshis (1E-8 fractions)… * </pre> */ public boolean hasCoinValue() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * <code>required int64 coin_value = 1;</code> * * <pre> * This much of satoshis (1E-8 fractions)… * </pre> */ public long getCoinValue() { return coinValue_; } /** * <code>required int64 coin_value = 1;</code> * * <pre> * This much of satoshis (1E-8 fractions)… * </pre> */ public Builder setCoinValue(long value) { bitField0_ |= 0x00000001; coinValue_ = value; onChanged(); return this; } /** * <code>required int64 coin_value = 1;</code> * * <pre> * This much of satoshis (1E-8 fractions)… * </pre> */ public Builder clearCoinValue() { bitField0_ = (bitField0_ & ~0x00000001); coinValue_ = 0L; onChanged(); return this; } private long fiatValue_ ; /** * <code>required int64 fiat_value = 2;</code> * * <pre> * …is worth this much of fiat (1E-4 fractions). * </pre> */ public boolean hasFiatValue() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * <code>required int64 fiat_value = 2;</code> * * <pre> * …is worth this much of fiat (1E-4 fractions). * </pre> */ public long getFiatValue() { return fiatValue_; } /** * <code>required int64 fiat_value = 2;</code> * * <pre> * …is worth this much of fiat (1E-4 fractions). * </pre> */ public Builder setFiatValue(long value) { bitField0_ |= 0x00000002; fiatValue_ = value; onChanged(); return this; } /** * <code>required int64 fiat_value = 2;</code> * * <pre> * …is worth this much of fiat (1E-4 fractions). * </pre> */ public Builder clearFiatValue() { bitField0_ = (bitField0_ & ~0x00000002); fiatValue_ = 0L; onChanged(); return this; } private java.lang.Object fiatCurrencyCode_ = ""; /** * <code>required string fiat_currency_code = 3;</code> * * <pre> * ISO 4217 currency code (if available) of the fiat currency. * </pre> */ public boolean hasFiatCurrencyCode() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * <code>required string fiat_currency_code = 3;</code> * * <pre> * ISO 4217 currency code (if available) of the fiat currency. * </pre> */ public java.lang.String getFiatCurrencyCode() { java.lang.Object ref = fiatCurrencyCode_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { fiatCurrencyCode_ = s; } return s; } else { return (java.lang.String) ref; } } /** * <code>required string fiat_currency_code = 3;</code> * * <pre> * ISO 4217 currency code (if available) of the fiat currency. * </pre> */ public com.google.protobuf.ByteString getFiatCurrencyCodeBytes() { java.lang.Object ref = fiatCurrencyCode_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); fiatCurrencyCode_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * <code>required string fiat_currency_code = 3;</code> * * <pre> * ISO 4217 currency code (if available) of the fiat currency. * </pre> */ public Builder setFiatCurrencyCode( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000004; fiatCurrencyCode_ = value; onChanged(); return this; } /** * <code>required string fiat_currency_code = 3;</code> * * <pre> * ISO 4217 currency code (if available) of the fiat currency. * </pre> */ public Builder clearFiatCurrencyCode() { bitField0_ = (bitField0_ & ~0x00000004); fiatCurrencyCode_ = getDefaultInstance().getFiatCurrencyCode(); onChanged(); return this; } /** * <code>required string fiat_currency_code = 3;</code> * * <pre> * ISO 4217 currency code (if available) of the fiat currency. * </pre> */ public Builder setFiatCurrencyCodeBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000004; fiatCurrencyCode_ = value; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:wallet.ExchangeRate) } static { defaultInstance = new ExchangeRate(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:wallet.ExchangeRate) } private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_PeerAddress_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_PeerAddress_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_EncryptedData_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_EncryptedData_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_DeterministicKey_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_DeterministicKey_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_Key_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_Key_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_Script_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_Script_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_TransactionInput_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_TransactionInput_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_TransactionOutput_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_TransactionOutput_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_TransactionConfidence_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_TransactionConfidence_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_Transaction_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_Transaction_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_ScryptParameters_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_ScryptParameters_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_Extension_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_Extension_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_Tag_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_Tag_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_TransactionSigner_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_TransactionSigner_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_Wallet_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_Wallet_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_wallet_ExchangeRate_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_wallet_ExchangeRate_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { return descriptor; } private static com.google.protobuf.Descriptors.FileDescriptor descriptor; static { java.lang.String[] descriptorData = { "\n\014wallet.proto\022\006wallet\"A\n\013PeerAddress\022\022\n" + "\nip_address\030\001 \002(\014\022\014\n\004port\030\002 \002(\r\022\020\n\010servi" + "ces\030\003 \002(\004\"M\n\rEncryptedData\022\035\n\025initialisa" + "tion_vector\030\001 \002(\014\022\035\n\025encrypted_private_k" + "ey\030\002 \002(\014\"\231\001\n\020DeterministicKey\022\022\n\nchain_c" + "ode\030\001 \002(\014\022\014\n\004path\030\002 \003(\r\022\026\n\016issued_subkey" + "s\030\003 \001(\r\022\026\n\016lookahead_size\030\004 \001(\r\022\023\n\013isFol" + "lowing\030\005 \001(\010\022\036\n\023sigsRequiredToSpend\030\006 \001(" + "\r:\0011\"\232\003\n\003Key\022\036\n\004type\030\001 \002(\0162\020.wallet.Key." + "Type\022\024\n\014secret_bytes\030\002 \001(\014\022-\n\016encrypted_", "data\030\006 \001(\0132\025.wallet.EncryptedData\022\022\n\npub" + "lic_key\030\003 \001(\014\022\r\n\005label\030\004 \001(\t\022\032\n\022creation" + "_timestamp\030\005 \001(\003\0223\n\021deterministic_key\030\007 " + "\001(\0132\030.wallet.DeterministicKey\022\032\n\022determi" + "nistic_seed\030\010 \001(\014\022;\n\034encrypted_determini" + "stic_seed\030\t \001(\0132\025.wallet.EncryptedData\"a" + "\n\004Type\022\014\n\010ORIGINAL\020\001\022\030\n\024ENCRYPTED_SCRYPT" + "_AES\020\002\022\032\n\026DETERMINISTIC_MNEMONIC\020\003\022\025\n\021DE" + "TERMINISTIC_KEY\020\004\"5\n\006Script\022\017\n\007program\030\001" + " \002(\014\022\032\n\022creation_timestamp\030\002 \002(\003\"\222\001\n\020Tra", "nsactionInput\022\"\n\032transaction_out_point_h" + "ash\030\001 \002(\014\022#\n\033transaction_out_point_index" + "\030\002 \002(\r\022\024\n\014script_bytes\030\003 \002(\014\022\020\n\010sequence" + "\030\004 \001(\r\022\r\n\005value\030\005 \001(\003\"\177\n\021TransactionOutp" + "ut\022\r\n\005value\030\001 \002(\003\022\024\n\014script_bytes\030\002 \002(\014\022" + "!\n\031spent_by_transaction_hash\030\003 \001(\014\022\"\n\032sp" + "ent_by_transaction_index\030\004 \001(\005\"\267\003\n\025Trans" + "actionConfidence\0220\n\004type\030\001 \001(\0162\".wallet." + "TransactionConfidence.Type\022\032\n\022appeared_a" + "t_height\030\002 \001(\005\022\036\n\026overriding_transaction", "\030\003 \001(\014\022\r\n\005depth\030\004 \001(\005\022)\n\014broadcast_by\030\006 " + "\003(\0132\023.wallet.PeerAddress\022\033\n\023last_broadca" + "sted_at\030\010 \001(\003\0224\n\006source\030\007 \001(\0162$.wallet.T" + "ransactionConfidence.Source\"`\n\004Type\022\013\n\007U" + "NKNOWN\020\000\022\014\n\010BUILDING\020\001\022\013\n\007PENDING\020\002\022\025\n\021N" + "OT_IN_BEST_CHAIN\020\003\022\010\n\004DEAD\020\004\022\017\n\013IN_CONFL" + "ICT\020\005\"A\n\006Source\022\022\n\016SOURCE_UNKNOWN\020\000\022\022\n\016S" + "OURCE_NETWORK\020\001\022\017\n\013SOURCE_SELF\020\002\"\303\005\n\013Tra" + "nsaction\022\017\n\007version\030\001 \002(\005\022\014\n\004hash\030\002 \002(\014\022" + "&\n\004pool\030\003 \001(\0162\030.wallet.Transaction.Pool\022", "\021\n\tlock_time\030\004 \001(\r\022\022\n\nupdated_at\030\005 \001(\003\0223" + "\n\021transaction_input\030\006 \003(\0132\030.wallet.Trans" + "actionInput\0225\n\022transaction_output\030\007 \003(\0132" + "\031.wallet.TransactionOutput\022\022\n\nblock_hash" + "\030\010 \003(\014\022 \n\030block_relativity_offsets\030\013 \003(\005" + "\0221\n\nconfidence\030\t \001(\0132\035.wallet.Transactio" + "nConfidence\0225\n\007purpose\030\n \001(\0162\033.wallet.Tr" + "ansaction.Purpose:\007UNKNOWN\022+\n\rexchange_r" + "ate\030\014 \001(\0132\024.wallet.ExchangeRate\022\014\n\004memo\030" + "\r \001(\t\"Y\n\004Pool\022\013\n\007UNSPENT\020\004\022\t\n\005SPENT\020\005\022\014\n", "\010INACTIVE\020\002\022\010\n\004DEAD\020\n\022\013\n\007PENDING\020\020\022\024\n\020PE" + "NDING_INACTIVE\020\022\"\243\001\n\007Purpose\022\013\n\007UNKNOWN\020" + "\000\022\020\n\014USER_PAYMENT\020\001\022\020\n\014KEY_ROTATION\020\002\022\034\n" + "\030ASSURANCE_CONTRACT_CLAIM\020\003\022\035\n\031ASSURANCE" + "_CONTRACT_PLEDGE\020\004\022\033\n\027ASSURANCE_CONTRACT" + "_STUB\020\005\022\r\n\tRAISE_FEE\020\006\"N\n\020ScryptParamete" + "rs\022\014\n\004salt\030\001 \002(\014\022\020\n\001n\030\002 \001(\003:\00516384\022\014\n\001r\030" + "\003 \001(\005:\0018\022\014\n\001p\030\004 \001(\005:\0011\"8\n\tExtension\022\n\n\002i" + "d\030\001 \002(\t\022\014\n\004data\030\002 \002(\014\022\021\n\tmandatory\030\003 \002(\010" + "\" \n\003Tag\022\013\n\003tag\030\001 \002(\t\022\014\n\004data\030\002 \002(\014\"5\n\021Tr", "ansactionSigner\022\022\n\nclass_name\030\001 \002(\t\022\014\n\004d" + "ata\030\002 \001(\014\"\351\004\n\006Wallet\022\032\n\022network_identifi" + "er\030\001 \002(\t\022\034\n\024last_seen_block_hash\030\002 \001(\014\022\036" + "\n\026last_seen_block_height\030\014 \001(\r\022!\n\031last_s" + "een_block_time_secs\030\016 \001(\003\022\030\n\003key\030\003 \003(\0132\013" + ".wallet.Key\022(\n\013transaction\030\004 \003(\0132\023.walle" + "t.Transaction\022&\n\016watched_script\030\017 \003(\0132\016." + "wallet.Script\022C\n\017encryption_type\030\005 \001(\0162\035" + ".wallet.Wallet.EncryptionType:\013UNENCRYPT" + "ED\0227\n\025encryption_parameters\030\006 \001(\0132\030.wall", "et.ScryptParameters\022\022\n\007version\030\007 \001(\005:\0011\022" + "$\n\textension\030\n \003(\0132\021.wallet.Extension\022\023\n" + "\013description\030\013 \001(\t\022\031\n\021key_rotation_time\030" + "\r \001(\004\022\031\n\004tags\030\020 \003(\0132\013.wallet.Tag\0226\n\023tran" + "saction_signers\030\021 \003(\0132\031.wallet.Transacti" + "onSigner\";\n\016EncryptionType\022\017\n\013UNENCRYPTE" + "D\020\001\022\030\n\024ENCRYPTED_SCRYPT_AES\020\002\"R\n\014Exchang" + "eRate\022\022\n\ncoin_value\030\001 \002(\003\022\022\n\nfiat_value\030" + "\002 \002(\003\022\032\n\022fiat_currency_code\030\003 \002(\tB\035\n\023org" + ".bitcoinj.walletB\006Protos" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { public com.google.protobuf.ExtensionRegistry assignDescriptors( com.google.protobuf.Descriptors.FileDescriptor root) { descriptor = root; return null; } }; com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] { }, assigner); internal_static_wallet_PeerAddress_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_wallet_PeerAddress_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_PeerAddress_descriptor, new java.lang.String[] { "IpAddress", "Port", "Services", }); internal_static_wallet_EncryptedData_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_wallet_EncryptedData_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_EncryptedData_descriptor, new java.lang.String[] { "InitialisationVector", "EncryptedPrivateKey", }); internal_static_wallet_DeterministicKey_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_wallet_DeterministicKey_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_DeterministicKey_descriptor, new java.lang.String[] { "ChainCode", "Path", "IssuedSubkeys", "LookaheadSize", "IsFollowing", "SigsRequiredToSpend", }); internal_static_wallet_Key_descriptor = getDescriptor().getMessageTypes().get(3); internal_static_wallet_Key_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_Key_descriptor, new java.lang.String[] { "Type", "SecretBytes", "EncryptedData", "PublicKey", "Label", "CreationTimestamp", "DeterministicKey", "DeterministicSeed", "EncryptedDeterministicSeed", }); internal_static_wallet_Script_descriptor = getDescriptor().getMessageTypes().get(4); internal_static_wallet_Script_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_Script_descriptor, new java.lang.String[] { "Program", "CreationTimestamp", }); internal_static_wallet_TransactionInput_descriptor = getDescriptor().getMessageTypes().get(5); internal_static_wallet_TransactionInput_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_TransactionInput_descriptor, new java.lang.String[] { "TransactionOutPointHash", "TransactionOutPointIndex", "ScriptBytes", "Sequence", "Value", }); internal_static_wallet_TransactionOutput_descriptor = getDescriptor().getMessageTypes().get(6); internal_static_wallet_TransactionOutput_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_TransactionOutput_descriptor, new java.lang.String[] { "Value", "ScriptBytes", "SpentByTransactionHash", "SpentByTransactionIndex", }); internal_static_wallet_TransactionConfidence_descriptor = getDescriptor().getMessageTypes().get(7); internal_static_wallet_TransactionConfidence_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_TransactionConfidence_descriptor, new java.lang.String[] { "Type", "AppearedAtHeight", "OverridingTransaction", "Depth", "BroadcastBy", "LastBroadcastedAt", "Source", }); internal_static_wallet_Transaction_descriptor = getDescriptor().getMessageTypes().get(8); internal_static_wallet_Transaction_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_Transaction_descriptor, new java.lang.String[] { "Version", "Hash", "Pool", "LockTime", "UpdatedAt", "TransactionInput", "TransactionOutput", "BlockHash", "BlockRelativityOffsets", "Confidence", "Purpose", "ExchangeRate", "Memo", }); internal_static_wallet_ScryptParameters_descriptor = getDescriptor().getMessageTypes().get(9); internal_static_wallet_ScryptParameters_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_ScryptParameters_descriptor, new java.lang.String[] { "Salt", "N", "R", "P", }); internal_static_wallet_Extension_descriptor = getDescriptor().getMessageTypes().get(10); internal_static_wallet_Extension_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_Extension_descriptor, new java.lang.String[] { "Id", "Data", "Mandatory", }); internal_static_wallet_Tag_descriptor = getDescriptor().getMessageTypes().get(11); internal_static_wallet_Tag_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_Tag_descriptor, new java.lang.String[] { "Tag", "Data", }); internal_static_wallet_TransactionSigner_descriptor = getDescriptor().getMessageTypes().get(12); internal_static_wallet_TransactionSigner_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_TransactionSigner_descriptor, new java.lang.String[] { "ClassName", "Data", }); internal_static_wallet_Wallet_descriptor = getDescriptor().getMessageTypes().get(13); internal_static_wallet_Wallet_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_Wallet_descriptor, new java.lang.String[] { "NetworkIdentifier", "LastSeenBlockHash", "LastSeenBlockHeight", "LastSeenBlockTimeSecs", "Key", "Transaction", "WatchedScript", "EncryptionType", "EncryptionParameters", "Version", "Extension", "Description", "KeyRotationTime", "Tags", "TransactionSigners", }); internal_static_wallet_ExchangeRate_descriptor = getDescriptor().getMessageTypes().get(14); internal_static_wallet_ExchangeRate_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_wallet_ExchangeRate_descriptor, new java.lang.String[] { "CoinValue", "FiatValue", "FiatCurrencyCode", }); } // @@protoc_insertion_point(outer_class_scope) }