actualParticipants = FlexibleUtil.decodeList(rlpEncodedOneParticipant);
+
+ assertThat(actualParticipants).isEqualTo(Arrays.asList(EXPECTED_EC_PARTICIPANT_1));
+
+ final Bytes wrongBytes =
+ Bytes.fromBase64String(
+ "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==");
+
+ actualParticipants = FlexibleUtil.decodeList(wrongBytes);
+ assertThat(actualParticipants).isEmpty();
+ }
+}
diff --git a/privacy-contracts/src/main/java/org/hyperledger/besu/privacy/contracts/generated/DefaultFlexiblePrivacyGroupManagementContract.java b/privacy-contracts/src/main/java/org/hyperledger/besu/privacy/contracts/generated/DefaultFlexiblePrivacyGroupManagementContract.java
index 73bfd458687..c098ed55e2d 100644
--- a/privacy-contracts/src/main/java/org/hyperledger/besu/privacy/contracts/generated/DefaultFlexiblePrivacyGroupManagementContract.java
+++ b/privacy-contracts/src/main/java/org/hyperledger/besu/privacy/contracts/generated/DefaultFlexiblePrivacyGroupManagementContract.java
@@ -27,6 +27,7 @@
import org.web3j.abi.TypeReference;
import org.web3j.abi.datatypes.Bool;
import org.web3j.abi.datatypes.DynamicArray;
+import org.web3j.abi.datatypes.DynamicBytes;
import org.web3j.abi.datatypes.Event;
import org.web3j.abi.datatypes.Type;
import org.web3j.abi.datatypes.Utf8String;
@@ -53,12 +54,12 @@
* or the org.web3j.codegen.SolidityFunctionWrapperGenerator in the codegen module to update.
*
- * Generated with web3j version 4.5.16.
+ *
Generated with web3j version 1.4.1.
*/
@SuppressWarnings("rawtypes")
public class DefaultFlexiblePrivacyGroupManagementContract extends Contract {
public static final String BINARY =
- "608060405234801561001057600080fd5b50610c6e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a69df4b51161005b578063a69df4b51461014a578063b4926e2514610154578063f83d08ba14610222578063fd0177971461022c57610088565b80630d8e6e2c1461008d5780635aa68ac0146100ab57806378b903371461010a5780639738968c1461012a575b600080fd5b610095610270565b6040518082815260200191505060405180910390f35b6100b361027a565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156100f65780820151818401526020810190506100db565b505050509050019250505060405180910390f35b6101126102d2565b60405180821515815260200191505060405180910390f35b6101326102e8565b60405180821515815260200191505060405180910390f35b61015261033f565b005b61020a6004803603602081101561016a57600080fd5b810190808035906020019064010000000081111561018757600080fd5b82018360208201111561019957600080fd5b803590602001918460208302840111640100000000831117156101bb57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050610437565b60405180821515815260200191505060405180910390f35b61022a6105e3565b005b6102586004803603602081101561024257600080fd5b81019080803590602001909291905050506106d9565b60405180821515815260200191505060405180910390f35b6000600154905090565b606060028054806020026020016040519081016040528092919081815260200182805480156102c857602002820191906000526020600020905b8154815260200190600101908083116102b4575b5050505050905090565b60008060149054906101000a900460ff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614905090565b600060149054906101000a900460ff161561035957600080fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff161461041a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f726967696e206e6f7420746865206f776e65722e000000000000000000000081525060200191505060405180910390fd5b6001600060146101000a81548160ff021916908315150217905550565b60008060149054906101000a900460ff161561045257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156104e857326000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16146105a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f726967696e206e6f7420746865206f776e65722e000000000000000000000081525060200191505060405180910390fd5b60006105b4836107d3565b90506001600060146101000a81548160ff0219169083151502179055506105d9610a0c565b5080915050919050565b600060149054906101000a900460ff166105fc57600080fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16146106bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f726967696e206e6f7420746865206f776e65722e000000000000000000000081525060200191505060405180910390fd5b60008060146101000a81548160ff021916908315150217905550565b60008060149054906101000a900460ff166106f357600080fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16146107b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f726967696e206e6f7420746865206f776e65722e000000000000000000000081525060200191505060405180910390fd5b60006107bf83610a96565b90506107c9610a0c565b5080915050919050565b6000806001905060005b8351811015610a02576108028482815181106107f557fe5b6020026020010151610b81565b156108a7577fcc7365305ae5f16c463d1383713d699f43c5548bbda5537ee61373ceb9aaf213600085838151811061083657fe5b6020026020010151604051808315158152602001828152602001806020018281038252601b8152602001807f4163636f756e7420697320616c72656164792061204d656d6265720000000000815250602001935050505060405180910390a18180156108a0575060005b91506109f5565b60006108c58583815181106108b857fe5b6020026020010151610ba1565b9050606081610909576040518060400160405280601b81526020017f4163636f756e7420697320616c72656164792061204d656d6265720000000000815250610923565b604051806060016040528060218152602001610c18602191395b90507fcc7365305ae5f16c463d1383713d699f43c5548bbda5537ee61373ceb9aaf2138287858151811061095357fe5b60200260200101518360405180841515815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156109aa57808201518184015260208101905061098f565b50505050905090810190601f1680156109d75780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a18380156109f05750815b935050505b80806001019150506107dd565b5080915050919050565b60006001430340416002604051602001808481526020018373ffffffffffffffffffffffffffffffffffffffff1660601b81526014018280548015610a7057602002820191906000526020600020905b815481526020019060010190808311610a5c575b505093505050506040516020818303038152906040528051906020012060018190555090565b60008060036000848152602001908152602001600020549050600081118015610ac457506002805490508111155b15610b76576002805490508114610b32576000600260016002805490500381548110610aec57fe5b906000526020600020015490508060026001840381548110610b0a57fe5b9060005260206000200181905550816003600083815260200190815260200160002081905550505b6002805480610b3d57fe5b60019003818190600052602060002001600090559055600060036000858152602001908152602001600020819055506001915050610b7c565b60009150505b919050565b600080600360008481526020019081526020016000205414159050919050565b60008060036000848152602001908152602001600020541415610c0d576002829080600181540180825580915050600190039060005260206000200160009091909190915055600280549050600360008481526020019081526020016000208190555060019050610c12565b600090505b91905056fe4d656d626572206163636f756e74206164646564207375636365737366756c6c79a2646970667358221220aaa2dd79ed65e1a55d25832a79d0bd9f47b1b0bae7b719d96723f776987a93b264736f6c634300060c0033";
+ "608060405234801561001057600080fd5b50611719806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063965a25ef1161005b578063965a25ef146101175780639738968c14610147578063a69df4b514610165578063f83d08ba1461016f57610088565b80630d8e6e2c1461008d5780631f52a8ee146100ab5780635aa68ac0146100db57806378b90337146100f9575b600080fd5b610095610179565b6040516100a29190610c18565b60405180910390f35b6100c560048036038101906100c09190610d8d565b610183565b6040516100d29190610df1565b60405180910390f35b6100e3610249565b6040516100f09190610f56565b60405180910390f35b610101610322565b60405161010e9190610df1565b60405180910390f35b610131600480360381019061012c919061105e565b610338565b60405161013e9190610df1565b60405180910390f35b61014f6104b0565b60405161015c9190610df1565b60405180910390f35b61016d610507565b005b6101776105cc565b005b6000600154905090565b60008060149054906101000a900460ff1661019d57600080fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff161461022b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161022290611104565b60405180910390fd5b60006102368361068f565b90506102406107dd565b80915050919050565b60606002805480602002602001604051908101604052809291908181526020016000905b8282101561031957838290600052602060002001805461028c90611153565b80601f01602080910402602001604051908101604052809291908181526020018280546102b890611153565b80156103055780601f106102da57610100808354040283529160200191610305565b820191906000526020600020905b8154815290600101906020018083116102e857829003601f168201915b50505050508152602001906001019061026d565b50505050905090565b60008060149054906101000a900460ff16905090565b60008060149054906101000a900460ff161561035357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156103e957326000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614610477576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161046e90611104565b60405180910390fd5b60006104828361081e565b90506001600060146101000a81548160ff0219169083151502179055506104a76107dd565b80915050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614905090565b600060149054906101000a900460ff161561052157600080fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16146105af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a690611104565b60405180910390fd5b6001600060146101000a81548160ff021916908315150217905550565b600060149054906101000a900460ff166105e557600080fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614610673576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161066a90611104565b60405180910390fd5b60008060146101000a81548160ff021916908315150217905550565b6000806003836040516106a291906111c1565b90815260200160405180910390205490506000811180156106c857506002805490508111155b156107d2576002805490508114610774576000600260016002805490506106ef9190611211565b81548110610700576106ff611245565b5b90600052602060002001905080600260018461071c9190611211565b8154811061072d5761072c611245565b5b9060005260206000200190805461074390611153565b61074e929190610a8f565b50816003826040516107609190611308565b908152602001604051809103902081905550505b60028054806107865761078561131f565b5b6001900381819060005260206000200160006107a29190610b1c565b905560006003846040516107b691906111c1565b90815260200160405180910390208190555060019150506107d8565b60009150505b919050565b6001436107ea9190611211565b40416002604051602001610800939291906114d9565b60405160208183030381529060405280519060200120600181905550565b6000806001905060005b83518110156109bb5761085484828151811061084757610846611245565b5b60200260200101516109c5565b156108bf577f1673b13ca99fc5f5d54f8ebc163339b3c03f5f661cec3f5dfe506fdbd2602de6600085838151811061088f5761088e611245565b5b60200260200101516040516108a59291906115ad565b60405180910390a18180156108b8575060005b91506109a8565b60006108e48583815181106108d7576108d6611245565b5b60200260200101516109f0565b9050600081610928576040518060400160405280601b81526020017f4163636f756e7420697320616c72656164792061204d656d6265720000000000815250610942565b6040518060600160405280602181526020016116c3602191395b90507f1673b13ca99fc5f5d54f8ebc163339b3c03f5f661cec3f5dfe506fdbd2602de68287858151811061097957610978611245565b5b60200260200101518360405161099193929190611634565b60405180910390a18380156109a35750815b935050505b80806109b390611679565b915050610828565b5080915050919050565b6000806003836040516109d891906111c1565b90815260200160405180910390205414159050919050565b600080600383604051610a0391906111c1565b9081526020016040518091039020541415610a8557600282908060018154018082558091505060019003906000526020600020016000909190919091509080519060200190610a53929190610b5c565b50600280549050600383604051610a6a91906111c1565b90815260200160405180910390208190555060019050610a8a565b600090505b919050565b828054610a9b90611153565b90600052602060002090601f016020900481019282610abd5760008555610b0b565b82601f10610ace5780548555610b0b565b82800160010185558215610b0b57600052602060002091601f016020900482015b82811115610b0a578254825591600101919060010190610aef565b5b509050610b189190610be2565b5090565b508054610b2890611153565b6000825580601f10610b3a5750610b59565b601f016020900490600052602060002090810190610b589190610be2565b5b50565b828054610b6890611153565b90600052602060002090601f016020900481019282610b8a5760008555610bd1565b82601f10610ba357805160ff1916838001178555610bd1565b82800160010185558215610bd1579182015b82811115610bd0578251825591602001919060010190610bb5565b5b509050610bde9190610be2565b5090565b5b80821115610bfb576000816000905550600101610be3565b5090565b6000819050919050565b610c1281610bff565b82525050565b6000602082019050610c2d6000830184610c09565b92915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610c9a82610c51565b810181811067ffffffffffffffff82111715610cb957610cb8610c62565b5b80604052505050565b6000610ccc610c33565b9050610cd88282610c91565b919050565b600067ffffffffffffffff821115610cf857610cf7610c62565b5b610d0182610c51565b9050602081019050919050565b82818337600083830152505050565b6000610d30610d2b84610cdd565b610cc2565b905082815260208101848484011115610d4c57610d4b610c4c565b5b610d57848285610d0e565b509392505050565b600082601f830112610d7457610d73610c47565b5b8135610d84848260208601610d1d565b91505092915050565b600060208284031215610da357610da2610c3d565b5b600082013567ffffffffffffffff811115610dc157610dc0610c42565b5b610dcd84828501610d5f565b91505092915050565b60008115159050919050565b610deb81610dd6565b82525050565b6000602082019050610e066000830184610de2565b92915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610e72578082015181840152602081019050610e57565b83811115610e81576000848401525b50505050565b6000610e9282610e38565b610e9c8185610e43565b9350610eac818560208601610e54565b610eb581610c51565b840191505092915050565b6000610ecc8383610e87565b905092915050565b6000602082019050919050565b6000610eec82610e0c565b610ef68185610e17565b935083602082028501610f0885610e28565b8060005b85811015610f445784840389528151610f258582610ec0565b9450610f3083610ed4565b925060208a01995050600181019050610f0c565b50829750879550505050505092915050565b60006020820190508181036000830152610f708184610ee1565b905092915050565b600067ffffffffffffffff821115610f9357610f92610c62565b5b602082029050602081019050919050565b600080fd5b6000610fbc610fb784610f78565b610cc2565b90508083825260208201905060208402830185811115610fdf57610fde610fa4565b5b835b8181101561102657803567ffffffffffffffff81111561100457611003610c47565b5b8086016110118982610d5f565b85526020850194505050602081019050610fe1565b5050509392505050565b600082601f83011261104557611044610c47565b5b8135611055848260208601610fa9565b91505092915050565b60006020828403121561107457611073610c3d565b5b600082013567ffffffffffffffff81111561109257611091610c42565b5b61109e84828501611030565b91505092915050565b600082825260208201905092915050565b7f4f726967696e206e6f7420746865206f776e65722e0000000000000000000000600082015250565b60006110ee6015836110a7565b91506110f9826110b8565b602082019050919050565b6000602082019050818103600083015261111d816110e1565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061116b57607f821691505b6020821081141561117f5761117e611124565b5b50919050565b600081905092915050565b600061119b82610e38565b6111a58185611185565b93506111b5818560208601610e54565b80840191505092915050565b60006111cd8284611190565b915081905092915050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061121c826111d8565b9150611227836111d8565b92508282101561123a576112396111e2565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008190508160005260206000209050919050565b6000815461129681611153565b6112a08186611185565b945060018216600081146112bb57600181146112cc576112ff565b60ff198316865281860193506112ff565b6112d585611274565b60005b838110156112f7578154818901526001820191506020810190506112d8565b838801955050505b50505092915050565b60006113148284611289565b915081905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006113798261134e565b9050919050565b6113898161136e565b82525050565b600081549050919050565b60008190508160005260206000209050919050565b60008190508160005260206000209050919050565b600081546113d181611153565b6113db8186610e43565b945060018216600081146113f657600181146114085761143b565b60ff198316865260208601935061143b565b611411856113af565b60005b8381101561143357815481890152600182019150602081019050611414565b808801955050505b50505092915050565b600061145083836113c4565b905092915050565b6000600182019050919050565b60006114708261138f565b61147a8185610e17565b93508360208202850161148c8561139a565b8060005b858110156114c7578484038952816114a88582611444565b94506114b383611458565b925060208a01995050600181019050611490565b50829750879550505050505092915050565b60006060820190506114ee6000830186610c09565b6114fb6020830185611380565b818103604083015261150d8184611465565b9050949350505050565b600082825260208201905092915050565b600061153382610e38565b61153d8185611517565b935061154d818560208601610e54565b61155681610c51565b840191505092915050565b7f4163636f756e7420697320616c72656164792061204d656d6265720000000000600082015250565b6000611597601b836110a7565b91506115a282611561565b602082019050919050565b60006060820190506115c26000830185610de2565b81810360208301526115d48184611528565b905081810360408301526115e78161158a565b90509392505050565b600081519050919050565b6000611606826115f0565b61161081856110a7565b9350611620818560208601610e54565b61162981610c51565b840191505092915050565b60006060820190506116496000830186610de2565b818103602083015261165b8185611528565b9050818103604083015261166f81846115fb565b9050949350505050565b6000611684826111d8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156116b7576116b66111e2565b5b60018201905091905056fe4d656d626572206163636f756e74206164646564207375636365737366756c6c79a26469706673582212209609f1a5cb6e2f48cc955820079a7ccc398144555e6ad4b22d2092ee447da95a64736f6c634300080c0033";
public static final String FUNC_ADDPARTICIPANTS = "addParticipants";
@@ -81,8 +82,9 @@ public class DefaultFlexiblePrivacyGroupManagementContract extends Contract {
"ParticipantAdded",
Arrays.>asList(
new TypeReference() {},
- new TypeReference() {},
+ new TypeReference() {},
new TypeReference() {}));
+ ;
@Deprecated
protected DefaultFlexiblePrivacyGroupManagementContract(
@@ -171,10 +173,10 @@ public RemoteFunctionCall addParticipants(List _publ
new org.web3j.abi.datatypes.Function(
FUNC_ADDPARTICIPANTS,
Arrays.asList(
- new org.web3j.abi.datatypes.DynamicArray(
- org.web3j.abi.datatypes.generated.Bytes32.class,
+ new org.web3j.abi.datatypes.DynamicArray(
+ org.web3j.abi.datatypes.DynamicBytes.class,
org.web3j.abi.Utils.typeMap(
- _publicEnclaveKeys, org.web3j.abi.datatypes.generated.Bytes32.class))),
+ _publicEnclaveKeys, org.web3j.abi.datatypes.DynamicBytes.class))),
Collections.>emptyList());
return executeRemoteCallTransaction(function);
}
@@ -188,11 +190,13 @@ public RemoteFunctionCall canExecute() {
return executeRemoteCallSingleValueReturn(function, Boolean.class);
}
- public RemoteFunctionCall canUpgrade() {
+ public RemoteFunctionCall canUpgrade() {
final org.web3j.abi.datatypes.Function function =
new org.web3j.abi.datatypes.Function(
- FUNC_CANUPGRADE, Arrays.asList(), Collections.>emptyList());
- return executeRemoteCallTransaction(function);
+ FUNC_CANUPGRADE,
+ Arrays.asList(),
+ Arrays.>asList(new TypeReference() {}));
+ return executeRemoteCallSingleValueReturn(function, Boolean.class);
}
public RemoteFunctionCall getParticipants() {
@@ -200,7 +204,7 @@ public RemoteFunctionCall getParticipants() {
new org.web3j.abi.datatypes.Function(
FUNC_GETPARTICIPANTS,
Arrays.asList(),
- Arrays.>asList(new TypeReference>() {}));
+ Arrays.>asList(new TypeReference>() {}));
return new RemoteFunctionCall(
function,
new Callable() {
@@ -233,7 +237,7 @@ public RemoteFunctionCall removeParticipant(byte[] _particip
final org.web3j.abi.datatypes.Function function =
new org.web3j.abi.datatypes.Function(
FUNC_REMOVEPARTICIPANT,
- Arrays.asList(new org.web3j.abi.datatypes.generated.Bytes32(_participant)),
+ Arrays.asList(new org.web3j.abi.datatypes.DynamicBytes(_participant)),
Collections.>emptyList());
return executeRemoteCallTransaction(function);
}
diff --git a/privacy-contracts/src/main/java/org/hyperledger/besu/privacy/contracts/generated/FlexiblePrivacyGroupManagementInterface.java b/privacy-contracts/src/main/java/org/hyperledger/besu/privacy/contracts/generated/FlexiblePrivacyGroupManagementInterface.java
index 76738026cd8..dff393c2a16 100644
--- a/privacy-contracts/src/main/java/org/hyperledger/besu/privacy/contracts/generated/FlexiblePrivacyGroupManagementInterface.java
+++ b/privacy-contracts/src/main/java/org/hyperledger/besu/privacy/contracts/generated/FlexiblePrivacyGroupManagementInterface.java
@@ -23,6 +23,7 @@
import org.web3j.abi.TypeReference;
import org.web3j.abi.datatypes.Bool;
import org.web3j.abi.datatypes.DynamicArray;
+import org.web3j.abi.datatypes.DynamicBytes;
import org.web3j.abi.datatypes.Function;
import org.web3j.abi.datatypes.Type;
import org.web3j.abi.datatypes.generated.Bytes32;
@@ -44,7 +45,7 @@
* or the org.web3j.codegen.SolidityFunctionWrapperGenerator in the codegen module to update.
*
- * Generated with web3j version 4.5.16.
+ *
Generated with web3j version 1.4.1.
*/
@SuppressWarnings("rawtypes")
public class FlexiblePrivacyGroupManagementInterface extends Contract {
@@ -107,10 +108,10 @@ public RemoteFunctionCall addParticipants(List publi
new Function(
FUNC_ADDPARTICIPANTS,
Arrays.asList(
- new org.web3j.abi.datatypes.DynamicArray(
- org.web3j.abi.datatypes.generated.Bytes32.class,
+ new org.web3j.abi.datatypes.DynamicArray(
+ org.web3j.abi.datatypes.DynamicBytes.class,
org.web3j.abi.Utils.typeMap(
- publicEnclaveKeys, org.web3j.abi.datatypes.generated.Bytes32.class))),
+ publicEnclaveKeys, org.web3j.abi.datatypes.DynamicBytes.class))),
Collections.>emptyList());
return executeRemoteCallTransaction(function);
}
@@ -136,7 +137,7 @@ public RemoteFunctionCall getParticipants() {
new Function(
FUNC_GETPARTICIPANTS,
Arrays.asList(),
- Arrays.>asList(new TypeReference>() {}));
+ Arrays.>asList(new TypeReference>() {}));
return new RemoteFunctionCall(
function,
new Callable() {
@@ -168,7 +169,7 @@ public RemoteFunctionCall removeParticipant(byte[] participa
final Function function =
new Function(
FUNC_REMOVEPARTICIPANT,
- Arrays.asList(new org.web3j.abi.datatypes.generated.Bytes32(participant)),
+ Arrays.asList(new org.web3j.abi.datatypes.DynamicBytes(participant)),
Collections.>emptyList());
return executeRemoteCallTransaction(function);
}
diff --git a/privacy-contracts/src/main/java/org/hyperledger/besu/privacy/contracts/generated/FlexiblePrivacyGroupManagementProxy.java b/privacy-contracts/src/main/java/org/hyperledger/besu/privacy/contracts/generated/FlexiblePrivacyGroupManagementProxy.java
index 96b22afe95c..e596a5cd4aa 100644
--- a/privacy-contracts/src/main/java/org/hyperledger/besu/privacy/contracts/generated/FlexiblePrivacyGroupManagementProxy.java
+++ b/privacy-contracts/src/main/java/org/hyperledger/besu/privacy/contracts/generated/FlexiblePrivacyGroupManagementProxy.java
@@ -29,6 +29,7 @@
import org.web3j.abi.datatypes.Address;
import org.web3j.abi.datatypes.Bool;
import org.web3j.abi.datatypes.DynamicArray;
+import org.web3j.abi.datatypes.DynamicBytes;
import org.web3j.abi.datatypes.Event;
import org.web3j.abi.datatypes.Type;
import org.web3j.abi.datatypes.generated.Bytes32;
@@ -54,12 +55,12 @@
* or the org.web3j.codegen.SolidityFunctionWrapperGenerator in the codegen module to update.
*
- * Generated with web3j version 4.5.16.
+ *
Generated with web3j version 1.4.1.
*/
@SuppressWarnings("rawtypes")
public class FlexiblePrivacyGroupManagementProxy extends Contract {
public static final String BINARY =
- "608060405234801561001057600080fd5b50604051610fa6380380610fa68339818101604052602081101561003357600080fd5b8101908080519060200190929190505050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610f12806100946000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80639738968c116100665780639738968c146101b8578063a69df4b5146101d8578063b4926e25146101e2578063f83d08ba146102b0578063fd017797146102ba5761009e565b80630d8e6e2c146100a35780633659cfe6146100c15780635aa68ac0146101055780635c60da1b1461016457806378b9033714610198575b600080fd5b6100ab6102fe565b6040518082815260200191505060405180910390f35b610103600480360360208110156100d757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103ab565b005b61010d61083e565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610150578082015181840152602081019050610135565b505050509050019250505060405180910390f35b61016c610987565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101a06109ab565b60405180821515815260200191505060405180910390f35b6101c0610a58565b60405180821515815260200191505060405180910390f35b6101e0610b07565b005b610298600480360360208110156101f857600080fd5b810190808035906020019064010000000081111561021557600080fd5b82018360208201111561022757600080fd5b8035906020019184602083028401116401000000008311171561024957600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050610b90565b60405180821515815260200191505060405180910390f35b6102b8610c8d565b005b6102e6600480360360208110156102d057600080fd5b8101908080359060200190929190505050610d16565b60405180821515815260200191505060405180910390f35b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff16630d8e6e2c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561036a57600080fd5b505afa15801561037e573d6000803e3d6000fd5b505050506040513d602081101561039457600080fd5b810190808051906020019092919050505091505090565b3073ffffffffffffffffffffffffffffffffffffffff166378b903376040518163ffffffff1660e01b815260040160206040518083038186803b1580156103f157600080fd5b505afa158015610405573d6000803e3d6000fd5b505050506040513d602081101561041b57600080fd5b810190808051906020019092919050505061049e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f54686520636f6e7472616374206973206c6f636b65642e00000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610543576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526054815260200180610e5a6054913960600191505060405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff16639738968c6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561058b57600080fd5b505af115801561059f573d6000803e3d6000fd5b505050506040513d60208110156105b557600080fd5b810190808051906020019092919050505061061b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602f815260200180610eae602f913960400191505060405180910390fd5b60603073ffffffffffffffffffffffffffffffffffffffff16635aa68ac06040518163ffffffff1660e01b815260040160006040518083038186803b15801561066357600080fd5b505afa158015610677573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060208110156106a157600080fd5b81019080805160405193929190846401000000008211156106c157600080fd5b838201915060208201858111156106d757600080fd5b82518660208202830111640100000000821117156106f457600080fd5b8083526020830192505050908051906020019060200280838360005b8381101561072b578082015181840152602081019050610710565b50505050905001604052505050905061074382610e16565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663b4926e25836040518263ffffffff1660e01b81526004018080602001828103825283818151815260200191508051906020019060200280838360005b838110156107d85780820151818401526020810190506107bd565b5050505090500192505050602060405180830381600087803b1580156107fd57600080fd5b505af1158015610811573d6000803e3d6000fd5b505050506040513d602081101561082757600080fd5b810190808051906020019092919050505050505050565b606060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff16635aa68ac06040518163ffffffff1660e01b815260040160006040518083038186803b1580156108ac57600080fd5b505afa1580156108c0573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060208110156108ea57600080fd5b810190808051604051939291908464010000000082111561090a57600080fd5b8382019150602082018581111561092057600080fd5b825186602082028301116401000000008211171561093d57600080fd5b8083526020830192505050908051906020019060200280838360005b83811015610974578082015181840152602081019050610959565b5050505090500160405250505091505090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff166378b903376040518163ffffffff1660e01b815260040160206040518083038186803b158015610a1757600080fd5b505afa158015610a2b573d6000803e3d6000fd5b505050506040513d6020811015610a4157600080fd5b810190808051906020019092919050505091505090565b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff16639738968c6040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610ac657600080fd5b505af1158015610ada573d6000803e3d6000fd5b505050506040513d6020811015610af057600080fd5b810190808051906020019092919050505091505090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663a69df4b56040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610b7557600080fd5b505af1158015610b89573d6000803e3d6000fd5b5050505050565b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663b4926e25846040518263ffffffff1660e01b81526004018080602001828103825283818151815260200191508051906020019060200280838360005b83811015610c25578082015181840152602081019050610c0a565b5050505090500192505050602060405180830381600087803b158015610c4a57600080fd5b505af1158015610c5e573d6000803e3d6000fd5b505050506040513d6020811015610c7457600080fd5b8101908080519060200190929190505050915050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663f83d08ba6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610cfb57600080fd5b505af1158015610d0f573d6000803e3d6000fd5b5050505050565b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060008173ffffffffffffffffffffffffffffffffffffffff1663fd017797856040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b158015610d9157600080fd5b505af1158015610da5573d6000803e3d6000fd5b505050506040513d6020811015610dbb57600080fd5b810190808051906020019092919050505090508015610e0c577fef2df0cc0f44b5a36a7de9951ef49ba4d861649244ff89bcf7ffaa1ac7291e89846040518082815260200191505060405180910390a15b8092505050919050565b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505056fe54686520636f6e747261637420746f207570677261646520746f2068617320746f20626520646966666572656e742066726f6d207468652063757272656e74206d616e6167656d656e7420636f6e74726163742e4e6f7420616c6c6f77656420746f207570677261646520746865206d616e6167656d656e7420636f6e74726163742ea26469706673582212207d77b2288fb78b354ca3a252d7513de3d808fcaa42e73f475b95f412c24a314f64736f6c634300060c0033";
+ "60806040523480156200001157600080fd5b5060405162001575380380620015758339818101604052810190620000379190620000e8565b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506200011a565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620000b08262000083565b9050919050565b620000c281620000a3565b8114620000ce57600080fd5b50565b600081519050620000e281620000b7565b92915050565b6000602082840312156200010157620001006200007e565b5b60006200011184828501620000d1565b91505092915050565b61144b806200012a6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c806378b903371161006657806378b9033714610149578063965a25ef146101675780639738968c14610197578063a69df4b5146101b5578063f83d08ba146101bf5761009e565b80630d8e6e2c146100a35780631f52a8ee146100c15780633659cfe6146100f15780635aa68ac01461010d5780635c60da1b1461012b575b600080fd5b6100ab6101c9565b6040516100b89190610a7e565b60405180910390f35b6100db60048036038101906100d69190610bf3565b610264565b6040516100e89190610c57565b60405180910390f35b61010b60048036038101906101069190610cd0565b610352565b005b610115610668565b6040516101229190610e47565b60405180910390f35b61013361070a565b6040516101409190610e78565b60405180910390f35b61015161072e565b60405161015e9190610c57565b60405180910390f35b610181600480360381019061017c9190610f79565b6107c9565b60405161018e9190610c57565b60405180910390f35b61019f610873565b6040516101ac9190610c57565b60405180910390f35b6101bd610910565b005b6101c7610999565b005b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff16630d8e6e2c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561023a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061025e9190610fee565b91505090565b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060008173ffffffffffffffffffffffffffffffffffffffff16631f52a8ee856040518263ffffffff1660e01b81526004016102c59190611065565b6020604051808303816000875af11580156102e4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061030891906110b3565b90508015610348577f52213552a930e6de0c0d7df74ece31dac1306b2c7e200ceded7a4442853189b58460405161033f9190611065565b60405180910390a15b8092505050919050565b3073ffffffffffffffffffffffffffffffffffffffff166378b903376040518163ffffffff1660e01b8152600401602060405180830381865afa15801561039d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c191906110b3565b610400576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103f79061113d565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561048f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610486906111f5565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff16639738968c6040518163ffffffff1660e01b81526004016020604051808303816000875af11580156104dc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061050091906110b3565b61053f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161053690611287565b60405180910390fd5b60003073ffffffffffffffffffffffffffffffffffffffff16635aa68ac06040518163ffffffff1660e01b8152600401600060405180830381865afa15801561058c573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906105b591906113cc565b90506105c082610a22565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663965a25ef836040518263ffffffff1660e01b815260040161061f9190610e47565b6020604051808303816000875af115801561063e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066291906110b3565b50505050565b606060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff16635aa68ac06040518163ffffffff1660e01b8152600401600060405180830381865afa1580156106db573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061070491906113cc565b91505090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff166378b903376040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c391906110b3565b91505090565b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663965a25ef846040518263ffffffff1660e01b81526004016108289190610e47565b6020604051808303816000875af1158015610847573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086b91906110b3565b915050919050565b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff16639738968c6040518163ffffffff1660e01b81526004016020604051808303816000875af11580156108e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090a91906110b3565b91505090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663a69df4b56040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561097e57600080fd5b505af1158015610992573d6000803e3d6000fd5b5050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663f83d08ba6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610a0757600080fd5b505af1158015610a1b573d6000803e3d6000fd5b5050505050565b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000819050919050565b610a7881610a65565b82525050565b6000602082019050610a936000830184610a6f565b92915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610b0082610ab7565b810181811067ffffffffffffffff82111715610b1f57610b1e610ac8565b5b80604052505050565b6000610b32610a99565b9050610b3e8282610af7565b919050565b600067ffffffffffffffff821115610b5e57610b5d610ac8565b5b610b6782610ab7565b9050602081019050919050565b82818337600083830152505050565b6000610b96610b9184610b43565b610b28565b905082815260208101848484011115610bb257610bb1610ab2565b5b610bbd848285610b74565b509392505050565b600082601f830112610bda57610bd9610aad565b5b8135610bea848260208601610b83565b91505092915050565b600060208284031215610c0957610c08610aa3565b5b600082013567ffffffffffffffff811115610c2757610c26610aa8565b5b610c3384828501610bc5565b91505092915050565b60008115159050919050565b610c5181610c3c565b82525050565b6000602082019050610c6c6000830184610c48565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610c9d82610c72565b9050919050565b610cad81610c92565b8114610cb857600080fd5b50565b600081359050610cca81610ca4565b92915050565b600060208284031215610ce657610ce5610aa3565b5b6000610cf484828501610cbb565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d63578082015181840152602081019050610d48565b83811115610d72576000848401525b50505050565b6000610d8382610d29565b610d8d8185610d34565b9350610d9d818560208601610d45565b610da681610ab7565b840191505092915050565b6000610dbd8383610d78565b905092915050565b6000602082019050919050565b6000610ddd82610cfd565b610de78185610d08565b935083602082028501610df985610d19565b8060005b85811015610e355784840389528151610e168582610db1565b9450610e2183610dc5565b925060208a01995050600181019050610dfd565b50829750879550505050505092915050565b60006020820190508181036000830152610e618184610dd2565b905092915050565b610e7281610c92565b82525050565b6000602082019050610e8d6000830184610e69565b92915050565b600067ffffffffffffffff821115610eae57610ead610ac8565b5b602082029050602081019050919050565b600080fd5b6000610ed7610ed284610e93565b610b28565b90508083825260208201905060208402830185811115610efa57610ef9610ebf565b5b835b81811015610f4157803567ffffffffffffffff811115610f1f57610f1e610aad565b5b808601610f2c8982610bc5565b85526020850194505050602081019050610efc565b5050509392505050565b600082601f830112610f6057610f5f610aad565b5b8135610f70848260208601610ec4565b91505092915050565b600060208284031215610f8f57610f8e610aa3565b5b600082013567ffffffffffffffff811115610fad57610fac610aa8565b5b610fb984828501610f4b565b91505092915050565b610fcb81610a65565b8114610fd657600080fd5b50565b600081519050610fe881610fc2565b92915050565b60006020828403121561100457611003610aa3565b5b600061101284828501610fd9565b91505092915050565b600082825260208201905092915050565b600061103782610d29565b611041818561101b565b9350611051818560208601610d45565b61105a81610ab7565b840191505092915050565b6000602082019050818103600083015261107f818461102c565b905092915050565b61109081610c3c565b811461109b57600080fd5b50565b6000815190506110ad81611087565b92915050565b6000602082840312156110c9576110c8610aa3565b5b60006110d78482850161109e565b91505092915050565b600082825260208201905092915050565b7f54686520636f6e7472616374206973206c6f636b65642e000000000000000000600082015250565b60006111276017836110e0565b9150611132826110f1565b602082019050919050565b600060208201905081810360008301526111568161111a565b9050919050565b7f54686520636f6e747261637420746f207570677261646520746f20686173207460008201527f6f20626520646966666572656e742066726f6d207468652063757272656e742060208201527f6d616e6167656d656e7420636f6e74726163742e000000000000000000000000604082015250565b60006111df6054836110e0565b91506111ea8261115d565b606082019050919050565b6000602082019050818103600083015261120e816111d2565b9050919050565b7f4e6f7420616c6c6f77656420746f207570677261646520746865206d616e616760008201527f656d656e7420636f6e74726163742e0000000000000000000000000000000000602082015250565b6000611271602f836110e0565b915061127c82611215565b604082019050919050565b600060208201905081810360008301526112a081611264565b9050919050565b60006112ba6112b584610b43565b610b28565b9050828152602081018484840111156112d6576112d5610ab2565b5b6112e1848285610d45565b509392505050565b600082601f8301126112fe576112fd610aad565b5b815161130e8482602086016112a7565b91505092915050565b600061132a61132584610e93565b610b28565b9050808382526020820190506020840283018581111561134d5761134c610ebf565b5b835b8181101561139457805167ffffffffffffffff81111561137257611371610aad565b5b80860161137f89826112e9565b8552602085019450505060208101905061134f565b5050509392505050565b600082601f8301126113b3576113b2610aad565b5b81516113c3848260208601611317565b91505092915050565b6000602082840312156113e2576113e1610aa3565b5b600082015167ffffffffffffffff811115611400576113ff610aa8565b5b61140c8482850161139e565b9150509291505056fea26469706673582212204124f39a2be595e1342726249c5797782cd26b3fc6fdc2430537b7a34228ada564736f6c634300080c0033";
public static final String FUNC_ADDPARTICIPANTS = "addParticipants";
@@ -83,7 +84,9 @@ public class FlexiblePrivacyGroupManagementProxy extends Contract {
public static final Event PARTICIPANTREMOVED_EVENT =
new Event(
- "ParticipantRemoved", Arrays.>asList(new TypeReference() {}));
+ "ParticipantRemoved",
+ Arrays.>asList(new TypeReference() {}));
+ ;
@Deprecated
protected FlexiblePrivacyGroupManagementProxy(
@@ -168,10 +171,10 @@ public RemoteFunctionCall addParticipants(List _publ
new org.web3j.abi.datatypes.Function(
FUNC_ADDPARTICIPANTS,
Arrays.asList(
- new org.web3j.abi.datatypes.DynamicArray(
- org.web3j.abi.datatypes.generated.Bytes32.class,
+ new org.web3j.abi.datatypes.DynamicArray(
+ org.web3j.abi.datatypes.DynamicBytes.class,
org.web3j.abi.Utils.typeMap(
- _publicEnclaveKeys, org.web3j.abi.datatypes.generated.Bytes32.class))),
+ _publicEnclaveKeys, org.web3j.abi.datatypes.DynamicBytes.class))),
Collections.>emptyList());
return executeRemoteCallTransaction(function);
}
@@ -197,7 +200,7 @@ public RemoteFunctionCall getParticipants() {
new org.web3j.abi.datatypes.Function(
FUNC_GETPARTICIPANTS,
Arrays.asList(),
- Arrays.>asList(new TypeReference>() {}));
+ Arrays.>asList(new TypeReference>() {}));
return new RemoteFunctionCall(
function,
new Callable() {
@@ -239,7 +242,7 @@ public RemoteFunctionCall removeParticipant(byte[] _particip
final org.web3j.abi.datatypes.Function function =
new org.web3j.abi.datatypes.Function(
FUNC_REMOVEPARTICIPANT,
- Arrays.asList(new org.web3j.abi.datatypes.generated.Bytes32(_participant)),
+ Arrays.asList(new org.web3j.abi.datatypes.DynamicBytes(_participant)),
Collections.>emptyList());
return executeRemoteCallTransaction(function);
}
diff --git a/privacy-contracts/src/main/solidity/DefaultFlexiblePrivacyGroupManagementContract.sol b/privacy-contracts/src/main/solidity/DefaultFlexiblePrivacyGroupManagementContract.sol
index 2ca8a511ece..ad088203c6e 100644
--- a/privacy-contracts/src/main/solidity/DefaultFlexiblePrivacyGroupManagementContract.sol
+++ b/privacy-contracts/src/main/solidity/DefaultFlexiblePrivacyGroupManagementContract.sol
@@ -12,7 +12,8 @@
*
* SPDX-License-Identifier: Apache-2.0
*/
-pragma solidity ^0.6.0;
+pragma solidity >=0.7.0 <0.9.0;
+pragma experimental ABIEncoderV2;
import "./FlexiblePrivacyGroupManagementInterface.sol";
contract DefaultFlexiblePrivacyGroupManagementContract is FlexiblePrivacyGroupManagementInterface {
@@ -20,8 +21,8 @@ contract DefaultFlexiblePrivacyGroupManagementContract is FlexiblePrivacyGroupMa
address private _owner;
bool private _canExecute;
bytes32 private _version;
- bytes32[] private distributionList;
- mapping(bytes32 => uint256) private distributionIndexOf;
+ bytes[] private distributionList;
+ mapping(bytes => uint256) private distributionIndexOf;
function getVersion() external view override returns (bytes32) {
return _version;
@@ -43,10 +44,10 @@ contract DefaultFlexiblePrivacyGroupManagementContract is FlexiblePrivacyGroupMa
_canExecute = true;
}
- function addParticipants(bytes32[] memory _publicEnclaveKeys) public override returns (bool) {
+ function addParticipants(bytes[] memory _publicEnclaveKeys) public override returns (bool) {
require(!_canExecute);
if (_owner == address(0x0)) {
- // The account creating this group is set to be the owner
+ // The account creating this group is set to be the owner
_owner = tx.origin;
}
require(tx.origin == _owner, "Origin not the owner.");
@@ -56,7 +57,7 @@ contract DefaultFlexiblePrivacyGroupManagementContract is FlexiblePrivacyGroupMa
return result;
}
- function removeParticipant(bytes32 _participant) public override returns (bool) {
+ function removeParticipant(bytes memory _participant) public override returns (bool) {
require(_canExecute);
require(tx.origin == _owner, "Origin not the owner.");
bool result = removeInternal(_participant);
@@ -64,17 +65,17 @@ contract DefaultFlexiblePrivacyGroupManagementContract is FlexiblePrivacyGroupMa
return result;
}
- function getParticipants() public view override returns (bytes32[] memory) {
+ function getParticipants() public view override returns (bytes[] memory) {
return distributionList;
}
- function canUpgrade() external override returns (bool) {
+ function canUpgrade() external view override returns (bool) {
return tx.origin == _owner;
}
//internal functions
- function addAll(bytes32[] memory _publicEnclaveKeys) internal returns (bool) {
+ function addAll(bytes[] memory _publicEnclaveKeys) internal returns (bool) {
bool allAdded = true;
for (uint i = 0; i < _publicEnclaveKeys.length; i++) {
if (isMember(_publicEnclaveKeys[i])) {
@@ -90,11 +91,11 @@ contract DefaultFlexiblePrivacyGroupManagementContract is FlexiblePrivacyGroupMa
return allAdded;
}
- function isMember(bytes32 _publicEnclaveKey) internal view returns (bool) {
+ function isMember(bytes memory _publicEnclaveKey) internal view returns (bool) {
return distributionIndexOf[_publicEnclaveKey] != 0;
}
- function addParticipant(bytes32 _publicEnclaveKey) internal returns (bool) {
+ function addParticipant(bytes memory _publicEnclaveKey) internal returns (bool) {
if (distributionIndexOf[_publicEnclaveKey] == 0) {
distributionList.push(_publicEnclaveKey);
distributionIndexOf[_publicEnclaveKey] = distributionList.length;
@@ -103,12 +104,12 @@ contract DefaultFlexiblePrivacyGroupManagementContract is FlexiblePrivacyGroupMa
return false;
}
- function removeInternal(bytes32 _participant) internal returns (bool) {
+ function removeInternal(bytes memory _participant) internal returns (bool) {
uint256 index = distributionIndexOf[_participant];
if (index > 0 && index <= distributionList.length) {
//move last address into index being vacated (unless we are dealing with last index)
if (index != distributionList.length) {
- bytes32 lastPublicKey = distributionList[distributionList.length - 1];
+ bytes storage lastPublicKey = distributionList[distributionList.length - 1];
distributionList[index - 1] = lastPublicKey;
distributionIndexOf[lastPublicKey] = index;
}
@@ -119,13 +120,13 @@ contract DefaultFlexiblePrivacyGroupManagementContract is FlexiblePrivacyGroupMa
return false;
}
- function updateVersion() internal returns (int) {
- _version = keccak256(abi.encodePacked(blockhash(block.number-1), block.coinbase, distributionList));
+ function updateVersion() internal {
+ _version = keccak256(abi.encode(blockhash(block.number-1), block.coinbase, distributionList));
}
event ParticipantAdded(
bool success,
- bytes32 publicEnclaveKey,
+ bytes publicEnclaveKey,
string message
);
}
diff --git a/privacy-contracts/src/main/solidity/FlexiblePrivacyGroupManagementInterface.sol b/privacy-contracts/src/main/solidity/FlexiblePrivacyGroupManagementInterface.sol
index 45a4104347e..0b3131bef9f 100644
--- a/privacy-contracts/src/main/solidity/FlexiblePrivacyGroupManagementInterface.sol
+++ b/privacy-contracts/src/main/solidity/FlexiblePrivacyGroupManagementInterface.sol
@@ -12,14 +12,16 @@
*
* SPDX-License-Identifier: Apache-2.0
*/
-pragma solidity ^0.6.0;
+pragma solidity >=0.7.0 <0.9.0;
+pragma experimental ABIEncoderV2;
+
interface FlexiblePrivacyGroupManagementInterface {
- function addParticipants(bytes32[] calldata publicEnclaveKeys) external returns (bool);
+ function addParticipants(bytes[] calldata publicEnclaveKeys) external returns (bool);
- function removeParticipant(bytes32 participant) external returns (bool);
+ function removeParticipant(bytes calldata participant) external returns (bool);
- function getParticipants() external view returns (bytes32[] memory);
+ function getParticipants() external view returns (bytes[] memory);
function lock() external;
diff --git a/privacy-contracts/src/main/solidity/FlexiblePrivacyGroupManagementProxy.sol b/privacy-contracts/src/main/solidity/FlexiblePrivacyGroupManagementProxy.sol
index 28f47c973ff..0ff047679f6 100644
--- a/privacy-contracts/src/main/solidity/FlexiblePrivacyGroupManagementProxy.sol
+++ b/privacy-contracts/src/main/solidity/FlexiblePrivacyGroupManagementProxy.sol
@@ -12,14 +12,15 @@
*
* SPDX-License-Identifier: Apache-2.0
*/
-pragma solidity ^0.6.0;
+pragma solidity >=0.7.0 <0.9.0;
+pragma experimental ABIEncoderV2;
import "./FlexiblePrivacyGroupManagementInterface.sol";
contract FlexiblePrivacyGroupManagementProxy is FlexiblePrivacyGroupManagementInterface {
address public implementation;
- constructor(address _implementation) public {
+ constructor(address _implementation) {
implementation = _implementation;
}
@@ -27,23 +28,23 @@ contract FlexiblePrivacyGroupManagementProxy is FlexiblePrivacyGroupManagementIn
implementation = _newImp;
}
- function addParticipants(bytes32[] memory _publicEnclaveKeys) public override returns (bool) {
+ function addParticipants(bytes[] memory _publicEnclaveKeys) public override returns (bool) {
FlexiblePrivacyGroupManagementInterface privacyInterface = FlexiblePrivacyGroupManagementInterface(implementation);
return privacyInterface.addParticipants(_publicEnclaveKeys);
}
- function getParticipants() view public override returns (bytes32[] memory) {
+ function getParticipants() view public override returns (bytes[] memory) {
FlexiblePrivacyGroupManagementInterface privacyInterface = FlexiblePrivacyGroupManagementInterface(implementation);
return privacyInterface.getParticipants();
}
- function removeParticipant(bytes32 _participant) public override returns (bool) {
+ function removeParticipant(bytes memory _participant) public override returns (bool) {
FlexiblePrivacyGroupManagementInterface privacyInterface = FlexiblePrivacyGroupManagementInterface(implementation);
bool result = privacyInterface.removeParticipant(_participant);
if (result) {
emit ParticipantRemoved(_participant);
}
- return result;
+ return result;
}
function lock() public override {
@@ -75,15 +76,14 @@ contract FlexiblePrivacyGroupManagementProxy is FlexiblePrivacyGroupManagementIn
require(this.canExecute(), "The contract is locked.");
require(implementation != _newImplementation, "The contract to upgrade to has to be different from the current management contract.");
require(this.canUpgrade(), "Not allowed to upgrade the management contract.");
- bytes32[] memory participants = this.getParticipants();
+ bytes[] memory participants = this.getParticipants();
_setImplementation(_newImplementation);
FlexiblePrivacyGroupManagementInterface privacyInterface = FlexiblePrivacyGroupManagementInterface(implementation);
privacyInterface.addParticipants(participants);
}
event ParticipantRemoved(
- bytes32 publicEnclaveKey
+ bytes publicEnclaveKey
);
-
}
diff --git a/privacy-contracts/src/main/solidity/generateWrappers.sh b/privacy-contracts/src/main/solidity/generateWrappers.sh
index a78f3781c24..068d7a1e3ac 100755
--- a/privacy-contracts/src/main/solidity/generateWrappers.sh
+++ b/privacy-contracts/src/main/solidity/generateWrappers.sh
@@ -16,7 +16,7 @@ done
for target in ${targets}; do
- web3j solidity generate \
+ web3j generate solidity \
-b build/${target}.bin \
-a build/${target}.abi \
-o ../java \
diff --git a/testutil/src/main/java/org/hyperledger/enclave/testutil/EnclaveKeyConfiguration.java b/testutil/src/main/java/org/hyperledger/enclave/testutil/EnclaveKeyConfiguration.java
index 929f2ac489e..846378995a6 100644
--- a/testutil/src/main/java/org/hyperledger/enclave/testutil/EnclaveKeyConfiguration.java
+++ b/testutil/src/main/java/org/hyperledger/enclave/testutil/EnclaveKeyConfiguration.java
@@ -33,10 +33,6 @@ public EnclaveKeyConfiguration(
this.enclaveEncryptorType = enclaveEncryptorType;
}
- public EnclaveKeyConfiguration(final String[] pubKeyPaths, final String[] privKeyPaths) {
- this(pubKeyPaths, privKeyPaths, EnclaveEncryptorType.NACL);
- }
-
public String[] getPubKeyPaths() {
return pubKeyPaths;
}