1#![allow(clippy::new_without_default)]
3#![allow(clippy::needless_pass_by_value)]
4#![allow(clippy::too_many_arguments)]
5#![allow(unused_imports)]
6
7use fixer::message::Message;
8use fixer::fix_string::FIXString;
9use fixer::errors::MessageRejectErrorEnum;
10use fixer::session::session_id::SessionID;
11
12use rust_decimal::Decimal;
13
14
15use jiff::Timestamp;
16
17use crate::field;
18use crate::tag;
19
20pub struct CollateralRequest {
22 pub message: Message,
23}
24
25impl CollateralRequest {
26 pub fn new(coll_req_id: field::CollReqIDField, coll_asgn_reason: field::CollAsgnReasonField, transact_time: field::TransactTimeField) -> Self {
28 let mut msg = Message::new();
29 msg.header.set_field(tag::MSG_TYPE, FIXString::from("AX".to_string()));
30
31 msg.body.set_field(tag::COLL_REQ_ID, coll_req_id.0);
32
33 msg.body.set_field(tag::COLL_ASGN_REASON, coll_asgn_reason.0);
34
35 msg.body.set_field(tag::TRANSACT_TIME, transact_time.0);
36
37 Self { message: msg }
38 }
39
40 pub fn from_message(msg: Message) -> Self {
42 Self { message: msg }
43 }
44
45 pub fn to_message(self) -> Message {
47 self.message
48 }
49
50
51
52
53 pub fn set_account(&mut self, v: String) {
55 self.message.body.set_field(tag::ACCOUNT, FIXString::from(v));
56 }
57
58 pub fn get_account(&self) -> Result<String, MessageRejectErrorEnum> {
60 let mut fld = field::AccountField::new(String::new());
61 self.message.body.get_field(tag::ACCOUNT, &mut fld.0)?;
62 Ok(fld.value().to_string())
63 }
64
65
66 pub fn has_account(&self) -> bool {
68 self.message.body.has(tag::ACCOUNT)
69 }
70
71
72
73
74 pub fn set_account_type(&mut self, v: isize) {
76 self.message.body.set_field(tag::ACCOUNT_TYPE, fixer::fix_int::FIXInt::from(v));
77 }
78
79 pub fn get_account_type(&self) -> Result<isize, MessageRejectErrorEnum> {
81 let mut fld = field::AccountTypeField::new(0);
82 self.message.body.get_field(tag::ACCOUNT_TYPE, &mut fld.0)?;
83 Ok(fld.value())
84 }
85
86
87 pub fn has_account_type(&self) -> bool {
89 self.message.body.has(tag::ACCOUNT_TYPE)
90 }
91
92
93
94
95 pub fn set_accrued_interest_amt(&mut self, val: Decimal, scale: i32) {
97 self.message.body.set_field(tag::ACCRUED_INTEREST_AMT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
98 }
99
100 pub fn get_accrued_interest_amt(&self) -> Result<Decimal, MessageRejectErrorEnum> {
102 let mut fld = field::AccruedInterestAmtField::new(Decimal::ZERO, 0);
103 self.message.body.get_field(tag::ACCRUED_INTEREST_AMT, &mut fld.0)?;
104 Ok(fld.value())
105 }
106
107
108 pub fn has_accrued_interest_amt(&self) -> bool {
110 self.message.body.has(tag::ACCRUED_INTEREST_AMT)
111 }
112
113
114
115
116 pub fn set_agreement_currency(&mut self, v: String) {
118 self.message.body.set_field(tag::AGREEMENT_CURRENCY, FIXString::from(v));
119 }
120
121 pub fn get_agreement_currency(&self) -> Result<String, MessageRejectErrorEnum> {
123 let mut fld = field::AgreementCurrencyField::new(String::new());
124 self.message.body.get_field(tag::AGREEMENT_CURRENCY, &mut fld.0)?;
125 Ok(fld.value().to_string())
126 }
127
128
129 pub fn has_agreement_currency(&self) -> bool {
131 self.message.body.has(tag::AGREEMENT_CURRENCY)
132 }
133
134
135
136
137 pub fn set_agreement_date(&mut self, v: String) {
139 self.message.body.set_field(tag::AGREEMENT_DATE, FIXString::from(v));
140 }
141
142 pub fn get_agreement_date(&self) -> Result<String, MessageRejectErrorEnum> {
144 let mut fld = field::AgreementDateField::new(String::new());
145 self.message.body.get_field(tag::AGREEMENT_DATE, &mut fld.0)?;
146 Ok(fld.value().to_string())
147 }
148
149
150 pub fn has_agreement_date(&self) -> bool {
152 self.message.body.has(tag::AGREEMENT_DATE)
153 }
154
155
156
157
158 pub fn set_agreement_desc(&mut self, v: String) {
160 self.message.body.set_field(tag::AGREEMENT_DESC, FIXString::from(v));
161 }
162
163 pub fn get_agreement_desc(&self) -> Result<String, MessageRejectErrorEnum> {
165 let mut fld = field::AgreementDescField::new(String::new());
166 self.message.body.get_field(tag::AGREEMENT_DESC, &mut fld.0)?;
167 Ok(fld.value().to_string())
168 }
169
170
171 pub fn has_agreement_desc(&self) -> bool {
173 self.message.body.has(tag::AGREEMENT_DESC)
174 }
175
176
177
178
179 pub fn set_agreement_id(&mut self, v: String) {
181 self.message.body.set_field(tag::AGREEMENT_ID, FIXString::from(v));
182 }
183
184 pub fn get_agreement_id(&self) -> Result<String, MessageRejectErrorEnum> {
186 let mut fld = field::AgreementIDField::new(String::new());
187 self.message.body.get_field(tag::AGREEMENT_ID, &mut fld.0)?;
188 Ok(fld.value().to_string())
189 }
190
191
192 pub fn has_agreement_id(&self) -> bool {
194 self.message.body.has(tag::AGREEMENT_ID)
195 }
196
197
198
199
200 pub fn set_benchmark_curve_currency(&mut self, v: String) {
202 self.message.body.set_field(tag::BENCHMARK_CURVE_CURRENCY, FIXString::from(v));
203 }
204
205 pub fn get_benchmark_curve_currency(&self) -> Result<String, MessageRejectErrorEnum> {
207 let mut fld = field::BenchmarkCurveCurrencyField::new(String::new());
208 self.message.body.get_field(tag::BENCHMARK_CURVE_CURRENCY, &mut fld.0)?;
209 Ok(fld.value().to_string())
210 }
211
212
213 pub fn has_benchmark_curve_currency(&self) -> bool {
215 self.message.body.has(tag::BENCHMARK_CURVE_CURRENCY)
216 }
217
218
219
220
221 pub fn set_benchmark_curve_name(&mut self, v: String) {
223 self.message.body.set_field(tag::BENCHMARK_CURVE_NAME, FIXString::from(v));
224 }
225
226 pub fn get_benchmark_curve_name(&self) -> Result<String, MessageRejectErrorEnum> {
228 let mut fld = field::BenchmarkCurveNameField::new(String::new());
229 self.message.body.get_field(tag::BENCHMARK_CURVE_NAME, &mut fld.0)?;
230 Ok(fld.value().to_string())
231 }
232
233
234 pub fn has_benchmark_curve_name(&self) -> bool {
236 self.message.body.has(tag::BENCHMARK_CURVE_NAME)
237 }
238
239
240
241
242 pub fn set_benchmark_curve_point(&mut self, v: String) {
244 self.message.body.set_field(tag::BENCHMARK_CURVE_POINT, FIXString::from(v));
245 }
246
247 pub fn get_benchmark_curve_point(&self) -> Result<String, MessageRejectErrorEnum> {
249 let mut fld = field::BenchmarkCurvePointField::new(String::new());
250 self.message.body.get_field(tag::BENCHMARK_CURVE_POINT, &mut fld.0)?;
251 Ok(fld.value().to_string())
252 }
253
254
255 pub fn has_benchmark_curve_point(&self) -> bool {
257 self.message.body.has(tag::BENCHMARK_CURVE_POINT)
258 }
259
260
261
262
263 pub fn set_benchmark_price(&mut self, val: Decimal, scale: i32) {
265 self.message.body.set_field(tag::BENCHMARK_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
266 }
267
268 pub fn get_benchmark_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
270 let mut fld = field::BenchmarkPriceField::new(Decimal::ZERO, 0);
271 self.message.body.get_field(tag::BENCHMARK_PRICE, &mut fld.0)?;
272 Ok(fld.value())
273 }
274
275
276 pub fn has_benchmark_price(&self) -> bool {
278 self.message.body.has(tag::BENCHMARK_PRICE)
279 }
280
281
282
283
284 pub fn set_benchmark_price_type(&mut self, v: isize) {
286 self.message.body.set_field(tag::BENCHMARK_PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
287 }
288
289 pub fn get_benchmark_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
291 let mut fld = field::BenchmarkPriceTypeField::new(0);
292 self.message.body.get_field(tag::BENCHMARK_PRICE_TYPE, &mut fld.0)?;
293 Ok(fld.value())
294 }
295
296
297 pub fn has_benchmark_price_type(&self) -> bool {
299 self.message.body.has(tag::BENCHMARK_PRICE_TYPE)
300 }
301
302
303
304
305 pub fn set_benchmark_security_id(&mut self, v: String) {
307 self.message.body.set_field(tag::BENCHMARK_SECURITY_ID, FIXString::from(v));
308 }
309
310 pub fn get_benchmark_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
312 let mut fld = field::BenchmarkSecurityIDField::new(String::new());
313 self.message.body.get_field(tag::BENCHMARK_SECURITY_ID, &mut fld.0)?;
314 Ok(fld.value().to_string())
315 }
316
317
318 pub fn has_benchmark_security_id(&self) -> bool {
320 self.message.body.has(tag::BENCHMARK_SECURITY_ID)
321 }
322
323
324
325
326 pub fn set_benchmark_security_id_source(&mut self, v: String) {
328 self.message.body.set_field(tag::BENCHMARK_SECURITY_ID_SOURCE, FIXString::from(v));
329 }
330
331 pub fn get_benchmark_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
333 let mut fld = field::BenchmarkSecurityIDSourceField::new(String::new());
334 self.message.body.get_field(tag::BENCHMARK_SECURITY_ID_SOURCE, &mut fld.0)?;
335 Ok(fld.value().to_string())
336 }
337
338
339 pub fn has_benchmark_security_id_source(&self) -> bool {
341 self.message.body.has(tag::BENCHMARK_SECURITY_ID_SOURCE)
342 }
343
344
345
346
347 pub fn set_cfi_code(&mut self, v: String) {
349 self.message.body.set_field(tag::CFI_CODE, FIXString::from(v));
350 }
351
352 pub fn get_cfi_code(&self) -> Result<String, MessageRejectErrorEnum> {
354 let mut fld = field::CFICodeField::new(String::new());
355 self.message.body.get_field(tag::CFI_CODE, &mut fld.0)?;
356 Ok(fld.value().to_string())
357 }
358
359
360 pub fn has_cfi_code(&self) -> bool {
362 self.message.body.has(tag::CFI_CODE)
363 }
364
365
366
367
368 pub fn set_cp_program(&mut self, v: isize) {
370 self.message.body.set_field(tag::CP_PROGRAM, fixer::fix_int::FIXInt::from(v));
371 }
372
373 pub fn get_cp_program(&self) -> Result<isize, MessageRejectErrorEnum> {
375 let mut fld = field::CPProgramField::new(0);
376 self.message.body.get_field(tag::CP_PROGRAM, &mut fld.0)?;
377 Ok(fld.value())
378 }
379
380
381 pub fn has_cp_program(&self) -> bool {
383 self.message.body.has(tag::CP_PROGRAM)
384 }
385
386
387
388
389 pub fn set_cp_reg_type(&mut self, v: String) {
391 self.message.body.set_field(tag::CP_REG_TYPE, FIXString::from(v));
392 }
393
394 pub fn get_cp_reg_type(&self) -> Result<String, MessageRejectErrorEnum> {
396 let mut fld = field::CPRegTypeField::new(String::new());
397 self.message.body.get_field(tag::CP_REG_TYPE, &mut fld.0)?;
398 Ok(fld.value().to_string())
399 }
400
401
402 pub fn has_cp_reg_type(&self) -> bool {
404 self.message.body.has(tag::CP_REG_TYPE)
405 }
406
407
408
409
410 pub fn set_cap_price(&mut self, val: Decimal, scale: i32) {
412 self.message.body.set_field(tag::CAP_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
413 }
414
415 pub fn get_cap_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
417 let mut fld = field::CapPriceField::new(Decimal::ZERO, 0);
418 self.message.body.get_field(tag::CAP_PRICE, &mut fld.0)?;
419 Ok(fld.value())
420 }
421
422
423 pub fn has_cap_price(&self) -> bool {
425 self.message.body.has(tag::CAP_PRICE)
426 }
427
428
429
430
431 pub fn set_cash_outstanding(&mut self, val: Decimal, scale: i32) {
433 self.message.body.set_field(tag::CASH_OUTSTANDING, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
434 }
435
436 pub fn get_cash_outstanding(&self) -> Result<Decimal, MessageRejectErrorEnum> {
438 let mut fld = field::CashOutstandingField::new(Decimal::ZERO, 0);
439 self.message.body.get_field(tag::CASH_OUTSTANDING, &mut fld.0)?;
440 Ok(fld.value())
441 }
442
443
444 pub fn has_cash_outstanding(&self) -> bool {
446 self.message.body.has(tag::CASH_OUTSTANDING)
447 }
448
449
450
451
452 pub fn set_cl_ord_id(&mut self, v: String) {
454 self.message.body.set_field(tag::CL_ORD_ID, FIXString::from(v));
455 }
456
457 pub fn get_cl_ord_id(&self) -> Result<String, MessageRejectErrorEnum> {
459 let mut fld = field::ClOrdIDField::new(String::new());
460 self.message.body.get_field(tag::CL_ORD_ID, &mut fld.0)?;
461 Ok(fld.value().to_string())
462 }
463
464
465 pub fn has_cl_ord_id(&self) -> bool {
467 self.message.body.has(tag::CL_ORD_ID)
468 }
469
470
471
472
473 pub fn set_clearing_business_date(&mut self, v: String) {
475 self.message.body.set_field(tag::CLEARING_BUSINESS_DATE, FIXString::from(v));
476 }
477
478 pub fn get_clearing_business_date(&self) -> Result<String, MessageRejectErrorEnum> {
480 let mut fld = field::ClearingBusinessDateField::new(String::new());
481 self.message.body.get_field(tag::CLEARING_BUSINESS_DATE, &mut fld.0)?;
482 Ok(fld.value().to_string())
483 }
484
485
486 pub fn has_clearing_business_date(&self) -> bool {
488 self.message.body.has(tag::CLEARING_BUSINESS_DATE)
489 }
490
491
492
493
494 pub fn set_coll_asgn_reason(&mut self, v: isize) {
496 self.message.body.set_field(tag::COLL_ASGN_REASON, fixer::fix_int::FIXInt::from(v));
497 }
498
499 pub fn get_coll_asgn_reason(&self) -> Result<isize, MessageRejectErrorEnum> {
501 let mut fld = field::CollAsgnReasonField::new(0);
502 self.message.body.get_field(tag::COLL_ASGN_REASON, &mut fld.0)?;
503 Ok(fld.value())
504 }
505
506
507 pub fn has_coll_asgn_reason(&self) -> bool {
509 self.message.body.has(tag::COLL_ASGN_REASON)
510 }
511
512
513
514
515 pub fn set_coll_req_id(&mut self, v: String) {
517 self.message.body.set_field(tag::COLL_REQ_ID, FIXString::from(v));
518 }
519
520 pub fn get_coll_req_id(&self) -> Result<String, MessageRejectErrorEnum> {
522 let mut fld = field::CollReqIDField::new(String::new());
523 self.message.body.get_field(tag::COLL_REQ_ID, &mut fld.0)?;
524 Ok(fld.value().to_string())
525 }
526
527
528 pub fn has_coll_req_id(&self) -> bool {
530 self.message.body.has(tag::COLL_REQ_ID)
531 }
532
533
534
535
536 pub fn set_contract_multiplier(&mut self, val: Decimal, scale: i32) {
538 self.message.body.set_field(tag::CONTRACT_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
539 }
540
541 pub fn get_contract_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
543 let mut fld = field::ContractMultiplierField::new(Decimal::ZERO, 0);
544 self.message.body.get_field(tag::CONTRACT_MULTIPLIER, &mut fld.0)?;
545 Ok(fld.value())
546 }
547
548
549 pub fn has_contract_multiplier(&self) -> bool {
551 self.message.body.has(tag::CONTRACT_MULTIPLIER)
552 }
553
554
555
556
557 pub fn set_contract_settl_month(&mut self, v: String) {
559 self.message.body.set_field(tag::CONTRACT_SETTL_MONTH, FIXString::from(v));
560 }
561
562 pub fn get_contract_settl_month(&self) -> Result<String, MessageRejectErrorEnum> {
564 let mut fld = field::ContractSettlMonthField::new(String::new());
565 self.message.body.get_field(tag::CONTRACT_SETTL_MONTH, &mut fld.0)?;
566 Ok(fld.value().to_string())
567 }
568
569
570 pub fn has_contract_settl_month(&self) -> bool {
572 self.message.body.has(tag::CONTRACT_SETTL_MONTH)
573 }
574
575
576
577
578 pub fn set_country_of_issue(&mut self, v: String) {
580 self.message.body.set_field(tag::COUNTRY_OF_ISSUE, FIXString::from(v));
581 }
582
583 pub fn get_country_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
585 let mut fld = field::CountryOfIssueField::new(String::new());
586 self.message.body.get_field(tag::COUNTRY_OF_ISSUE, &mut fld.0)?;
587 Ok(fld.value().to_string())
588 }
589
590
591 pub fn has_country_of_issue(&self) -> bool {
593 self.message.body.has(tag::COUNTRY_OF_ISSUE)
594 }
595
596
597
598
599 pub fn set_coupon_payment_date(&mut self, v: String) {
601 self.message.body.set_field(tag::COUPON_PAYMENT_DATE, FIXString::from(v));
602 }
603
604 pub fn get_coupon_payment_date(&self) -> Result<String, MessageRejectErrorEnum> {
606 let mut fld = field::CouponPaymentDateField::new(String::new());
607 self.message.body.get_field(tag::COUPON_PAYMENT_DATE, &mut fld.0)?;
608 Ok(fld.value().to_string())
609 }
610
611
612 pub fn has_coupon_payment_date(&self) -> bool {
614 self.message.body.has(tag::COUPON_PAYMENT_DATE)
615 }
616
617
618
619
620 pub fn set_coupon_rate(&mut self, val: Decimal, scale: i32) {
622 self.message.body.set_field(tag::COUPON_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
623 }
624
625 pub fn get_coupon_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
627 let mut fld = field::CouponRateField::new(Decimal::ZERO, 0);
628 self.message.body.get_field(tag::COUPON_RATE, &mut fld.0)?;
629 Ok(fld.value())
630 }
631
632
633 pub fn has_coupon_rate(&self) -> bool {
635 self.message.body.has(tag::COUPON_RATE)
636 }
637
638
639
640
641 pub fn set_credit_rating(&mut self, v: String) {
643 self.message.body.set_field(tag::CREDIT_RATING, FIXString::from(v));
644 }
645
646 pub fn get_credit_rating(&self) -> Result<String, MessageRejectErrorEnum> {
648 let mut fld = field::CreditRatingField::new(String::new());
649 self.message.body.get_field(tag::CREDIT_RATING, &mut fld.0)?;
650 Ok(fld.value().to_string())
651 }
652
653
654 pub fn has_credit_rating(&self) -> bool {
656 self.message.body.has(tag::CREDIT_RATING)
657 }
658
659
660
661
662 pub fn set_currency(&mut self, v: String) {
664 self.message.body.set_field(tag::CURRENCY, FIXString::from(v));
665 }
666
667 pub fn get_currency(&self) -> Result<String, MessageRejectErrorEnum> {
669 let mut fld = field::CurrencyField::new(String::new());
670 self.message.body.get_field(tag::CURRENCY, &mut fld.0)?;
671 Ok(fld.value().to_string())
672 }
673
674
675 pub fn has_currency(&self) -> bool {
677 self.message.body.has(tag::CURRENCY)
678 }
679
680
681
682
683 pub fn set_dated_date(&mut self, v: String) {
685 self.message.body.set_field(tag::DATED_DATE, FIXString::from(v));
686 }
687
688 pub fn get_dated_date(&self) -> Result<String, MessageRejectErrorEnum> {
690 let mut fld = field::DatedDateField::new(String::new());
691 self.message.body.get_field(tag::DATED_DATE, &mut fld.0)?;
692 Ok(fld.value().to_string())
693 }
694
695
696 pub fn has_dated_date(&self) -> bool {
698 self.message.body.has(tag::DATED_DATE)
699 }
700
701
702
703
704 pub fn set_delivery_type(&mut self, v: isize) {
706 self.message.body.set_field(tag::DELIVERY_TYPE, fixer::fix_int::FIXInt::from(v));
707 }
708
709 pub fn get_delivery_type(&self) -> Result<isize, MessageRejectErrorEnum> {
711 let mut fld = field::DeliveryTypeField::new(0);
712 self.message.body.get_field(tag::DELIVERY_TYPE, &mut fld.0)?;
713 Ok(fld.value())
714 }
715
716
717 pub fn has_delivery_type(&self) -> bool {
719 self.message.body.has(tag::DELIVERY_TYPE)
720 }
721
722
723
724
725 pub fn set_encoded_issuer(&mut self, v: String) {
727 self.message.body.set_field(tag::ENCODED_ISSUER, FIXString::from(v));
728 }
729
730 pub fn get_encoded_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
732 let mut fld = field::EncodedIssuerField::new(String::new());
733 self.message.body.get_field(tag::ENCODED_ISSUER, &mut fld.0)?;
734 Ok(fld.value().to_string())
735 }
736
737
738 pub fn has_encoded_issuer(&self) -> bool {
740 self.message.body.has(tag::ENCODED_ISSUER)
741 }
742
743
744
745
746 pub fn set_encoded_issuer_len(&mut self, v: isize) {
748 self.message.body.set_field(tag::ENCODED_ISSUER_LEN, fixer::fix_int::FIXInt::from(v));
749 }
750
751 pub fn get_encoded_issuer_len(&self) -> Result<isize, MessageRejectErrorEnum> {
753 let mut fld = field::EncodedIssuerLenField::new(0);
754 self.message.body.get_field(tag::ENCODED_ISSUER_LEN, &mut fld.0)?;
755 Ok(fld.value())
756 }
757
758
759 pub fn has_encoded_issuer_len(&self) -> bool {
761 self.message.body.has(tag::ENCODED_ISSUER_LEN)
762 }
763
764
765
766
767 pub fn set_encoded_security_desc(&mut self, v: String) {
769 self.message.body.set_field(tag::ENCODED_SECURITY_DESC, FIXString::from(v));
770 }
771
772 pub fn get_encoded_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
774 let mut fld = field::EncodedSecurityDescField::new(String::new());
775 self.message.body.get_field(tag::ENCODED_SECURITY_DESC, &mut fld.0)?;
776 Ok(fld.value().to_string())
777 }
778
779
780 pub fn has_encoded_security_desc(&self) -> bool {
782 self.message.body.has(tag::ENCODED_SECURITY_DESC)
783 }
784
785
786
787
788 pub fn set_encoded_security_desc_len(&mut self, v: isize) {
790 self.message.body.set_field(tag::ENCODED_SECURITY_DESC_LEN, fixer::fix_int::FIXInt::from(v));
791 }
792
793 pub fn get_encoded_security_desc_len(&self) -> Result<isize, MessageRejectErrorEnum> {
795 let mut fld = field::EncodedSecurityDescLenField::new(0);
796 self.message.body.get_field(tag::ENCODED_SECURITY_DESC_LEN, &mut fld.0)?;
797 Ok(fld.value())
798 }
799
800
801 pub fn has_encoded_security_desc_len(&self) -> bool {
803 self.message.body.has(tag::ENCODED_SECURITY_DESC_LEN)
804 }
805
806
807
808
809 pub fn set_encoded_text(&mut self, v: String) {
811 self.message.body.set_field(tag::ENCODED_TEXT, FIXString::from(v));
812 }
813
814 pub fn get_encoded_text(&self) -> Result<String, MessageRejectErrorEnum> {
816 let mut fld = field::EncodedTextField::new(String::new());
817 self.message.body.get_field(tag::ENCODED_TEXT, &mut fld.0)?;
818 Ok(fld.value().to_string())
819 }
820
821
822 pub fn has_encoded_text(&self) -> bool {
824 self.message.body.has(tag::ENCODED_TEXT)
825 }
826
827
828
829
830 pub fn set_encoded_text_len(&mut self, v: isize) {
832 self.message.body.set_field(tag::ENCODED_TEXT_LEN, fixer::fix_int::FIXInt::from(v));
833 }
834
835 pub fn get_encoded_text_len(&self) -> Result<isize, MessageRejectErrorEnum> {
837 let mut fld = field::EncodedTextLenField::new(0);
838 self.message.body.get_field(tag::ENCODED_TEXT_LEN, &mut fld.0)?;
839 Ok(fld.value())
840 }
841
842
843 pub fn has_encoded_text_len(&self) -> bool {
845 self.message.body.has(tag::ENCODED_TEXT_LEN)
846 }
847
848
849
850
851 pub fn set_end_accrued_interest_amt(&mut self, val: Decimal, scale: i32) {
853 self.message.body.set_field(tag::END_ACCRUED_INTEREST_AMT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
854 }
855
856 pub fn get_end_accrued_interest_amt(&self) -> Result<Decimal, MessageRejectErrorEnum> {
858 let mut fld = field::EndAccruedInterestAmtField::new(Decimal::ZERO, 0);
859 self.message.body.get_field(tag::END_ACCRUED_INTEREST_AMT, &mut fld.0)?;
860 Ok(fld.value())
861 }
862
863
864 pub fn has_end_accrued_interest_amt(&self) -> bool {
866 self.message.body.has(tag::END_ACCRUED_INTEREST_AMT)
867 }
868
869
870
871
872 pub fn set_end_cash(&mut self, val: Decimal, scale: i32) {
874 self.message.body.set_field(tag::END_CASH, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
875 }
876
877 pub fn get_end_cash(&self) -> Result<Decimal, MessageRejectErrorEnum> {
879 let mut fld = field::EndCashField::new(Decimal::ZERO, 0);
880 self.message.body.get_field(tag::END_CASH, &mut fld.0)?;
881 Ok(fld.value())
882 }
883
884
885 pub fn has_end_cash(&self) -> bool {
887 self.message.body.has(tag::END_CASH)
888 }
889
890
891
892
893 pub fn set_end_date(&mut self, v: String) {
895 self.message.body.set_field(tag::END_DATE, FIXString::from(v));
896 }
897
898 pub fn get_end_date(&self) -> Result<String, MessageRejectErrorEnum> {
900 let mut fld = field::EndDateField::new(String::new());
901 self.message.body.get_field(tag::END_DATE, &mut fld.0)?;
902 Ok(fld.value().to_string())
903 }
904
905
906 pub fn has_end_date(&self) -> bool {
908 self.message.body.has(tag::END_DATE)
909 }
910
911
912
913
914 pub fn set_exercise_style(&mut self, v: isize) {
916 self.message.body.set_field(tag::EXERCISE_STYLE, fixer::fix_int::FIXInt::from(v));
917 }
918
919 pub fn get_exercise_style(&self) -> Result<isize, MessageRejectErrorEnum> {
921 let mut fld = field::ExerciseStyleField::new(0);
922 self.message.body.get_field(tag::EXERCISE_STYLE, &mut fld.0)?;
923 Ok(fld.value())
924 }
925
926
927 pub fn has_exercise_style(&self) -> bool {
929 self.message.body.has(tag::EXERCISE_STYLE)
930 }
931
932
933
934
935 pub fn set_expire_time(&mut self, v: Timestamp) {
937 self.message.body.set_field(tag::EXPIRE_TIME, fixer::fix_utc_timestamp::FIXUTCTimestamp {
938 time: v,
939 precision: fixer::fix_utc_timestamp::TimestampPrecision::Millis,
940 });
941 }
942
943 pub fn get_expire_time(&self) -> Result<Timestamp, MessageRejectErrorEnum> {
945 let mut fld = field::ExpireTimeField::new(Timestamp::UNIX_EPOCH);
946 self.message.body.get_field(tag::EXPIRE_TIME, &mut fld.0)?;
947 Ok(fld.value())
948 }
949
950
951 pub fn has_expire_time(&self) -> bool {
953 self.message.body.has(tag::EXPIRE_TIME)
954 }
955
956
957
958
959 pub fn set_factor(&mut self, val: Decimal, scale: i32) {
961 self.message.body.set_field(tag::FACTOR, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
962 }
963
964 pub fn get_factor(&self) -> Result<Decimal, MessageRejectErrorEnum> {
966 let mut fld = field::FactorField::new(Decimal::ZERO, 0);
967 self.message.body.get_field(tag::FACTOR, &mut fld.0)?;
968 Ok(fld.value())
969 }
970
971
972 pub fn has_factor(&self) -> bool {
974 self.message.body.has(tag::FACTOR)
975 }
976
977
978
979
980 pub fn set_flex_product_eligibility_indicator(&mut self, v: bool) {
982 self.message.body.set_field(tag::FLEX_PRODUCT_ELIGIBILITY_INDICATOR, fixer::fix_boolean::FIXBoolean::from(v));
983 }
984
985 pub fn get_flex_product_eligibility_indicator(&self) -> Result<bool, MessageRejectErrorEnum> {
987 let mut fld = field::FlexProductEligibilityIndicatorField::new(false);
988 self.message.body.get_field(tag::FLEX_PRODUCT_ELIGIBILITY_INDICATOR, &mut fld.0)?;
989 Ok(fld.value())
990 }
991
992
993 pub fn has_flex_product_eligibility_indicator(&self) -> bool {
995 self.message.body.has(tag::FLEX_PRODUCT_ELIGIBILITY_INDICATOR)
996 }
997
998
999
1000
1001 pub fn set_flexible_indicator(&mut self, v: bool) {
1003 self.message.body.set_field(tag::FLEXIBLE_INDICATOR, fixer::fix_boolean::FIXBoolean::from(v));
1004 }
1005
1006 pub fn get_flexible_indicator(&self) -> Result<bool, MessageRejectErrorEnum> {
1008 let mut fld = field::FlexibleIndicatorField::new(false);
1009 self.message.body.get_field(tag::FLEXIBLE_INDICATOR, &mut fld.0)?;
1010 Ok(fld.value())
1011 }
1012
1013
1014 pub fn has_flexible_indicator(&self) -> bool {
1016 self.message.body.has(tag::FLEXIBLE_INDICATOR)
1017 }
1018
1019
1020
1021
1022 pub fn set_floor_price(&mut self, val: Decimal, scale: i32) {
1024 self.message.body.set_field(tag::FLOOR_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1025 }
1026
1027 pub fn get_floor_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1029 let mut fld = field::FloorPriceField::new(Decimal::ZERO, 0);
1030 self.message.body.get_field(tag::FLOOR_PRICE, &mut fld.0)?;
1031 Ok(fld.value())
1032 }
1033
1034
1035 pub fn has_floor_price(&self) -> bool {
1037 self.message.body.has(tag::FLOOR_PRICE)
1038 }
1039
1040
1041
1042
1043 pub fn set_futures_valuation_method(&mut self, v: String) {
1045 self.message.body.set_field(tag::FUTURES_VALUATION_METHOD, FIXString::from(v));
1046 }
1047
1048 pub fn get_futures_valuation_method(&self) -> Result<String, MessageRejectErrorEnum> {
1050 let mut fld = field::FuturesValuationMethodField::new(String::new());
1051 self.message.body.get_field(tag::FUTURES_VALUATION_METHOD, &mut fld.0)?;
1052 Ok(fld.value().to_string())
1053 }
1054
1055
1056 pub fn has_futures_valuation_method(&self) -> bool {
1058 self.message.body.has(tag::FUTURES_VALUATION_METHOD)
1059 }
1060
1061
1062
1063
1064 pub fn set_instr_registry(&mut self, v: String) {
1066 self.message.body.set_field(tag::INSTR_REGISTRY, FIXString::from(v));
1067 }
1068
1069 pub fn get_instr_registry(&self) -> Result<String, MessageRejectErrorEnum> {
1071 let mut fld = field::InstrRegistryField::new(String::new());
1072 self.message.body.get_field(tag::INSTR_REGISTRY, &mut fld.0)?;
1073 Ok(fld.value().to_string())
1074 }
1075
1076
1077 pub fn has_instr_registry(&self) -> bool {
1079 self.message.body.has(tag::INSTR_REGISTRY)
1080 }
1081
1082
1083
1084
1085 pub fn set_instrmt_assignment_method(&mut self, v: String) {
1087 self.message.body.set_field(tag::INSTRMT_ASSIGNMENT_METHOD, FIXString::from(v));
1088 }
1089
1090 pub fn get_instrmt_assignment_method(&self) -> Result<String, MessageRejectErrorEnum> {
1092 let mut fld = field::InstrmtAssignmentMethodField::new(String::new());
1093 self.message.body.get_field(tag::INSTRMT_ASSIGNMENT_METHOD, &mut fld.0)?;
1094 Ok(fld.value().to_string())
1095 }
1096
1097
1098 pub fn has_instrmt_assignment_method(&self) -> bool {
1100 self.message.body.has(tag::INSTRMT_ASSIGNMENT_METHOD)
1101 }
1102
1103
1104
1105
1106 pub fn set_interest_accrual_date(&mut self, v: String) {
1108 self.message.body.set_field(tag::INTEREST_ACCRUAL_DATE, FIXString::from(v));
1109 }
1110
1111 pub fn get_interest_accrual_date(&self) -> Result<String, MessageRejectErrorEnum> {
1113 let mut fld = field::InterestAccrualDateField::new(String::new());
1114 self.message.body.get_field(tag::INTEREST_ACCRUAL_DATE, &mut fld.0)?;
1115 Ok(fld.value().to_string())
1116 }
1117
1118
1119 pub fn has_interest_accrual_date(&self) -> bool {
1121 self.message.body.has(tag::INTEREST_ACCRUAL_DATE)
1122 }
1123
1124
1125
1126
1127 pub fn set_issue_date(&mut self, v: String) {
1129 self.message.body.set_field(tag::ISSUE_DATE, FIXString::from(v));
1130 }
1131
1132 pub fn get_issue_date(&self) -> Result<String, MessageRejectErrorEnum> {
1134 let mut fld = field::IssueDateField::new(String::new());
1135 self.message.body.get_field(tag::ISSUE_DATE, &mut fld.0)?;
1136 Ok(fld.value().to_string())
1137 }
1138
1139
1140 pub fn has_issue_date(&self) -> bool {
1142 self.message.body.has(tag::ISSUE_DATE)
1143 }
1144
1145
1146
1147
1148 pub fn set_issuer(&mut self, v: String) {
1150 self.message.body.set_field(tag::ISSUER, FIXString::from(v));
1151 }
1152
1153 pub fn get_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
1155 let mut fld = field::IssuerField::new(String::new());
1156 self.message.body.get_field(tag::ISSUER, &mut fld.0)?;
1157 Ok(fld.value().to_string())
1158 }
1159
1160
1161 pub fn has_issuer(&self) -> bool {
1163 self.message.body.has(tag::ISSUER)
1164 }
1165
1166
1167
1168
1169 pub fn set_list_method(&mut self, v: isize) {
1171 self.message.body.set_field(tag::LIST_METHOD, fixer::fix_int::FIXInt::from(v));
1172 }
1173
1174 pub fn get_list_method(&self) -> Result<isize, MessageRejectErrorEnum> {
1176 let mut fld = field::ListMethodField::new(0);
1177 self.message.body.get_field(tag::LIST_METHOD, &mut fld.0)?;
1178 Ok(fld.value())
1179 }
1180
1181
1182 pub fn has_list_method(&self) -> bool {
1184 self.message.body.has(tag::LIST_METHOD)
1185 }
1186
1187
1188
1189
1190 pub fn set_locale_of_issue(&mut self, v: String) {
1192 self.message.body.set_field(tag::LOCALE_OF_ISSUE, FIXString::from(v));
1193 }
1194
1195 pub fn get_locale_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
1197 let mut fld = field::LocaleOfIssueField::new(String::new());
1198 self.message.body.get_field(tag::LOCALE_OF_ISSUE, &mut fld.0)?;
1199 Ok(fld.value().to_string())
1200 }
1201
1202
1203 pub fn has_locale_of_issue(&self) -> bool {
1205 self.message.body.has(tag::LOCALE_OF_ISSUE)
1206 }
1207
1208
1209
1210
1211 pub fn set_margin_excess(&mut self, val: Decimal, scale: i32) {
1213 self.message.body.set_field(tag::MARGIN_EXCESS, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1214 }
1215
1216 pub fn get_margin_excess(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1218 let mut fld = field::MarginExcessField::new(Decimal::ZERO, 0);
1219 self.message.body.get_field(tag::MARGIN_EXCESS, &mut fld.0)?;
1220 Ok(fld.value())
1221 }
1222
1223
1224 pub fn has_margin_excess(&self) -> bool {
1226 self.message.body.has(tag::MARGIN_EXCESS)
1227 }
1228
1229
1230
1231
1232 pub fn set_margin_ratio(&mut self, val: Decimal, scale: i32) {
1234 self.message.body.set_field(tag::MARGIN_RATIO, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1235 }
1236
1237 pub fn get_margin_ratio(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1239 let mut fld = field::MarginRatioField::new(Decimal::ZERO, 0);
1240 self.message.body.get_field(tag::MARGIN_RATIO, &mut fld.0)?;
1241 Ok(fld.value())
1242 }
1243
1244
1245 pub fn has_margin_ratio(&self) -> bool {
1247 self.message.body.has(tag::MARGIN_RATIO)
1248 }
1249
1250
1251
1252
1253 pub fn set_maturity_date(&mut self, v: String) {
1255 self.message.body.set_field(tag::MATURITY_DATE, FIXString::from(v));
1256 }
1257
1258 pub fn get_maturity_date(&self) -> Result<String, MessageRejectErrorEnum> {
1260 let mut fld = field::MaturityDateField::new(String::new());
1261 self.message.body.get_field(tag::MATURITY_DATE, &mut fld.0)?;
1262 Ok(fld.value().to_string())
1263 }
1264
1265
1266 pub fn has_maturity_date(&self) -> bool {
1268 self.message.body.has(tag::MATURITY_DATE)
1269 }
1270
1271
1272
1273
1274 pub fn set_maturity_month_year(&mut self, v: String) {
1276 self.message.body.set_field(tag::MATURITY_MONTH_YEAR, FIXString::from(v));
1277 }
1278
1279 pub fn get_maturity_month_year(&self) -> Result<String, MessageRejectErrorEnum> {
1281 let mut fld = field::MaturityMonthYearField::new(String::new());
1282 self.message.body.get_field(tag::MATURITY_MONTH_YEAR, &mut fld.0)?;
1283 Ok(fld.value().to_string())
1284 }
1285
1286
1287 pub fn has_maturity_month_year(&self) -> bool {
1289 self.message.body.has(tag::MATURITY_MONTH_YEAR)
1290 }
1291
1292
1293
1294
1295 pub fn set_maturity_time(&mut self, v: String) {
1297 self.message.body.set_field(tag::MATURITY_TIME, FIXString::from(v));
1298 }
1299
1300 pub fn get_maturity_time(&self) -> Result<String, MessageRejectErrorEnum> {
1302 let mut fld = field::MaturityTimeField::new(String::new());
1303 self.message.body.get_field(tag::MATURITY_TIME, &mut fld.0)?;
1304 Ok(fld.value().to_string())
1305 }
1306
1307
1308 pub fn has_maturity_time(&self) -> bool {
1310 self.message.body.has(tag::MATURITY_TIME)
1311 }
1312
1313
1314
1315
1316 pub fn set_min_price_increment(&mut self, val: Decimal, scale: i32) {
1318 self.message.body.set_field(tag::MIN_PRICE_INCREMENT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1319 }
1320
1321 pub fn get_min_price_increment(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1323 let mut fld = field::MinPriceIncrementField::new(Decimal::ZERO, 0);
1324 self.message.body.get_field(tag::MIN_PRICE_INCREMENT, &mut fld.0)?;
1325 Ok(fld.value())
1326 }
1327
1328
1329 pub fn has_min_price_increment(&self) -> bool {
1331 self.message.body.has(tag::MIN_PRICE_INCREMENT)
1332 }
1333
1334
1335
1336
1337 pub fn set_min_price_increment_amount(&mut self, val: Decimal, scale: i32) {
1339 self.message.body.set_field(tag::MIN_PRICE_INCREMENT_AMOUNT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1340 }
1341
1342 pub fn get_min_price_increment_amount(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1344 let mut fld = field::MinPriceIncrementAmountField::new(Decimal::ZERO, 0);
1345 self.message.body.get_field(tag::MIN_PRICE_INCREMENT_AMOUNT, &mut fld.0)?;
1346 Ok(fld.value())
1347 }
1348
1349
1350 pub fn has_min_price_increment_amount(&self) -> bool {
1352 self.message.body.has(tag::MIN_PRICE_INCREMENT_AMOUNT)
1353 }
1354
1355
1356
1357
1358 pub fn set_nt_position_limit(&mut self, v: isize) {
1360 self.message.body.set_field(tag::NT_POSITION_LIMIT, fixer::fix_int::FIXInt::from(v));
1361 }
1362
1363 pub fn get_nt_position_limit(&self) -> Result<isize, MessageRejectErrorEnum> {
1365 let mut fld = field::NTPositionLimitField::new(0);
1366 self.message.body.get_field(tag::NT_POSITION_LIMIT, &mut fld.0)?;
1367 Ok(fld.value())
1368 }
1369
1370
1371 pub fn has_nt_position_limit(&self) -> bool {
1373 self.message.body.has(tag::NT_POSITION_LIMIT)
1374 }
1375
1376
1377
1378
1379 pub fn set_no_events(&mut self, v: isize) {
1381 self.message.body.set_field(tag::NO_EVENTS, fixer::fix_int::FIXInt::from(v));
1382 }
1383
1384 pub fn get_no_events(&self) -> Result<isize, MessageRejectErrorEnum> {
1386 let mut fld = field::NoEventsField::new(0);
1387 self.message.body.get_field(tag::NO_EVENTS, &mut fld.0)?;
1388 Ok(fld.value())
1389 }
1390
1391
1392 pub fn has_no_events(&self) -> bool {
1394 self.message.body.has(tag::NO_EVENTS)
1395 }
1396
1397
1398
1399
1400 pub fn set_no_execs(&mut self, v: isize) {
1402 self.message.body.set_field(tag::NO_EXECS, fixer::fix_int::FIXInt::from(v));
1403 }
1404
1405 pub fn get_no_execs(&self) -> Result<isize, MessageRejectErrorEnum> {
1407 let mut fld = field::NoExecsField::new(0);
1408 self.message.body.get_field(tag::NO_EXECS, &mut fld.0)?;
1409 Ok(fld.value())
1410 }
1411
1412
1413 pub fn has_no_execs(&self) -> bool {
1415 self.message.body.has(tag::NO_EXECS)
1416 }
1417
1418
1419
1420
1421 pub fn set_no_instrument_parties(&mut self, v: isize) {
1423 self.message.body.set_field(tag::NO_INSTRUMENT_PARTIES, fixer::fix_int::FIXInt::from(v));
1424 }
1425
1426 pub fn get_no_instrument_parties(&self) -> Result<isize, MessageRejectErrorEnum> {
1428 let mut fld = field::NoInstrumentPartiesField::new(0);
1429 self.message.body.get_field(tag::NO_INSTRUMENT_PARTIES, &mut fld.0)?;
1430 Ok(fld.value())
1431 }
1432
1433
1434 pub fn has_no_instrument_parties(&self) -> bool {
1436 self.message.body.has(tag::NO_INSTRUMENT_PARTIES)
1437 }
1438
1439
1440
1441
1442 pub fn set_no_legs(&mut self, v: isize) {
1444 self.message.body.set_field(tag::NO_LEGS, fixer::fix_int::FIXInt::from(v));
1445 }
1446
1447 pub fn get_no_legs(&self) -> Result<isize, MessageRejectErrorEnum> {
1449 let mut fld = field::NoLegsField::new(0);
1450 self.message.body.get_field(tag::NO_LEGS, &mut fld.0)?;
1451 Ok(fld.value())
1452 }
1453
1454
1455 pub fn has_no_legs(&self) -> bool {
1457 self.message.body.has(tag::NO_LEGS)
1458 }
1459
1460
1461
1462
1463 pub fn set_no_misc_fees(&mut self, v: isize) {
1465 self.message.body.set_field(tag::NO_MISC_FEES, fixer::fix_int::FIXInt::from(v));
1466 }
1467
1468 pub fn get_no_misc_fees(&self) -> Result<isize, MessageRejectErrorEnum> {
1470 let mut fld = field::NoMiscFeesField::new(0);
1471 self.message.body.get_field(tag::NO_MISC_FEES, &mut fld.0)?;
1472 Ok(fld.value())
1473 }
1474
1475
1476 pub fn has_no_misc_fees(&self) -> bool {
1478 self.message.body.has(tag::NO_MISC_FEES)
1479 }
1480
1481
1482
1483
1484 pub fn set_no_party_i_ds(&mut self, v: isize) {
1486 self.message.body.set_field(tag::NO_PARTY_I_DS, fixer::fix_int::FIXInt::from(v));
1487 }
1488
1489 pub fn get_no_party_i_ds(&self) -> Result<isize, MessageRejectErrorEnum> {
1491 let mut fld = field::NoPartyIDsField::new(0);
1492 self.message.body.get_field(tag::NO_PARTY_I_DS, &mut fld.0)?;
1493 Ok(fld.value())
1494 }
1495
1496
1497 pub fn has_no_party_i_ds(&self) -> bool {
1499 self.message.body.has(tag::NO_PARTY_I_DS)
1500 }
1501
1502
1503
1504
1505 pub fn set_no_security_alt_id(&mut self, v: isize) {
1507 self.message.body.set_field(tag::NO_SECURITY_ALT_ID, fixer::fix_int::FIXInt::from(v));
1508 }
1509
1510 pub fn get_no_security_alt_id(&self) -> Result<isize, MessageRejectErrorEnum> {
1512 let mut fld = field::NoSecurityAltIDField::new(0);
1513 self.message.body.get_field(tag::NO_SECURITY_ALT_ID, &mut fld.0)?;
1514 Ok(fld.value())
1515 }
1516
1517
1518 pub fn has_no_security_alt_id(&self) -> bool {
1520 self.message.body.has(tag::NO_SECURITY_ALT_ID)
1521 }
1522
1523
1524
1525
1526 pub fn set_no_stipulations(&mut self, v: isize) {
1528 self.message.body.set_field(tag::NO_STIPULATIONS, fixer::fix_int::FIXInt::from(v));
1529 }
1530
1531 pub fn get_no_stipulations(&self) -> Result<isize, MessageRejectErrorEnum> {
1533 let mut fld = field::NoStipulationsField::new(0);
1534 self.message.body.get_field(tag::NO_STIPULATIONS, &mut fld.0)?;
1535 Ok(fld.value())
1536 }
1537
1538
1539 pub fn has_no_stipulations(&self) -> bool {
1541 self.message.body.has(tag::NO_STIPULATIONS)
1542 }
1543
1544
1545
1546
1547 pub fn set_no_trades(&mut self, v: isize) {
1549 self.message.body.set_field(tag::NO_TRADES, fixer::fix_int::FIXInt::from(v));
1550 }
1551
1552 pub fn get_no_trades(&self) -> Result<isize, MessageRejectErrorEnum> {
1554 let mut fld = field::NoTradesField::new(0);
1555 self.message.body.get_field(tag::NO_TRADES, &mut fld.0)?;
1556 Ok(fld.value())
1557 }
1558
1559
1560 pub fn has_no_trades(&self) -> bool {
1562 self.message.body.has(tag::NO_TRADES)
1563 }
1564
1565
1566
1567
1568 pub fn set_no_trd_reg_timestamps(&mut self, v: isize) {
1570 self.message.body.set_field(tag::NO_TRD_REG_TIMESTAMPS, fixer::fix_int::FIXInt::from(v));
1571 }
1572
1573 pub fn get_no_trd_reg_timestamps(&self) -> Result<isize, MessageRejectErrorEnum> {
1575 let mut fld = field::NoTrdRegTimestampsField::new(0);
1576 self.message.body.get_field(tag::NO_TRD_REG_TIMESTAMPS, &mut fld.0)?;
1577 Ok(fld.value())
1578 }
1579
1580
1581 pub fn has_no_trd_reg_timestamps(&self) -> bool {
1583 self.message.body.has(tag::NO_TRD_REG_TIMESTAMPS)
1584 }
1585
1586
1587
1588
1589 pub fn set_no_underlyings(&mut self, v: isize) {
1591 self.message.body.set_field(tag::NO_UNDERLYINGS, fixer::fix_int::FIXInt::from(v));
1592 }
1593
1594 pub fn get_no_underlyings(&self) -> Result<isize, MessageRejectErrorEnum> {
1596 let mut fld = field::NoUnderlyingsField::new(0);
1597 self.message.body.get_field(tag::NO_UNDERLYINGS, &mut fld.0)?;
1598 Ok(fld.value())
1599 }
1600
1601
1602 pub fn has_no_underlyings(&self) -> bool {
1604 self.message.body.has(tag::NO_UNDERLYINGS)
1605 }
1606
1607
1608
1609
1610 pub fn set_opt_attribute(&mut self, v: String) {
1612 self.message.body.set_field(tag::OPT_ATTRIBUTE, FIXString::from(v));
1613 }
1614
1615 pub fn get_opt_attribute(&self) -> Result<String, MessageRejectErrorEnum> {
1617 let mut fld = field::OptAttributeField::new(String::new());
1618 self.message.body.get_field(tag::OPT_ATTRIBUTE, &mut fld.0)?;
1619 Ok(fld.value().to_string())
1620 }
1621
1622
1623 pub fn has_opt_attribute(&self) -> bool {
1625 self.message.body.has(tag::OPT_ATTRIBUTE)
1626 }
1627
1628
1629
1630
1631 pub fn set_opt_pay_amount(&mut self, val: Decimal, scale: i32) {
1633 self.message.body.set_field(tag::OPT_PAY_AMOUNT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1634 }
1635
1636 pub fn get_opt_pay_amount(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1638 let mut fld = field::OptPayAmountField::new(Decimal::ZERO, 0);
1639 self.message.body.get_field(tag::OPT_PAY_AMOUNT, &mut fld.0)?;
1640 Ok(fld.value())
1641 }
1642
1643
1644 pub fn has_opt_pay_amount(&self) -> bool {
1646 self.message.body.has(tag::OPT_PAY_AMOUNT)
1647 }
1648
1649
1650
1651
1652 pub fn set_order_id(&mut self, v: String) {
1654 self.message.body.set_field(tag::ORDER_ID, FIXString::from(v));
1655 }
1656
1657 pub fn get_order_id(&self) -> Result<String, MessageRejectErrorEnum> {
1659 let mut fld = field::OrderIDField::new(String::new());
1660 self.message.body.get_field(tag::ORDER_ID, &mut fld.0)?;
1661 Ok(fld.value().to_string())
1662 }
1663
1664
1665 pub fn has_order_id(&self) -> bool {
1667 self.message.body.has(tag::ORDER_ID)
1668 }
1669
1670
1671
1672
1673 pub fn set_pool(&mut self, v: String) {
1675 self.message.body.set_field(tag::POOL, FIXString::from(v));
1676 }
1677
1678 pub fn get_pool(&self) -> Result<String, MessageRejectErrorEnum> {
1680 let mut fld = field::PoolField::new(String::new());
1681 self.message.body.get_field(tag::POOL, &mut fld.0)?;
1682 Ok(fld.value().to_string())
1683 }
1684
1685
1686 pub fn has_pool(&self) -> bool {
1688 self.message.body.has(tag::POOL)
1689 }
1690
1691
1692
1693
1694 pub fn set_position_limit(&mut self, v: isize) {
1696 self.message.body.set_field(tag::POSITION_LIMIT, fixer::fix_int::FIXInt::from(v));
1697 }
1698
1699 pub fn get_position_limit(&self) -> Result<isize, MessageRejectErrorEnum> {
1701 let mut fld = field::PositionLimitField::new(0);
1702 self.message.body.get_field(tag::POSITION_LIMIT, &mut fld.0)?;
1703 Ok(fld.value())
1704 }
1705
1706
1707 pub fn has_position_limit(&self) -> bool {
1709 self.message.body.has(tag::POSITION_LIMIT)
1710 }
1711
1712
1713
1714
1715 pub fn set_price(&mut self, val: Decimal, scale: i32) {
1717 self.message.body.set_field(tag::PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1718 }
1719
1720 pub fn get_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1722 let mut fld = field::PriceField::new(Decimal::ZERO, 0);
1723 self.message.body.get_field(tag::PRICE, &mut fld.0)?;
1724 Ok(fld.value())
1725 }
1726
1727
1728 pub fn has_price(&self) -> bool {
1730 self.message.body.has(tag::PRICE)
1731 }
1732
1733
1734
1735
1736 pub fn set_price_quote_method(&mut self, v: String) {
1738 self.message.body.set_field(tag::PRICE_QUOTE_METHOD, FIXString::from(v));
1739 }
1740
1741 pub fn get_price_quote_method(&self) -> Result<String, MessageRejectErrorEnum> {
1743 let mut fld = field::PriceQuoteMethodField::new(String::new());
1744 self.message.body.get_field(tag::PRICE_QUOTE_METHOD, &mut fld.0)?;
1745 Ok(fld.value().to_string())
1746 }
1747
1748
1749 pub fn has_price_quote_method(&self) -> bool {
1751 self.message.body.has(tag::PRICE_QUOTE_METHOD)
1752 }
1753
1754
1755
1756
1757 pub fn set_price_type(&mut self, v: isize) {
1759 self.message.body.set_field(tag::PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
1760 }
1761
1762 pub fn get_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1764 let mut fld = field::PriceTypeField::new(0);
1765 self.message.body.get_field(tag::PRICE_TYPE, &mut fld.0)?;
1766 Ok(fld.value())
1767 }
1768
1769
1770 pub fn has_price_type(&self) -> bool {
1772 self.message.body.has(tag::PRICE_TYPE)
1773 }
1774
1775
1776
1777
1778 pub fn set_price_unit_of_measure(&mut self, v: String) {
1780 self.message.body.set_field(tag::PRICE_UNIT_OF_MEASURE, FIXString::from(v));
1781 }
1782
1783 pub fn get_price_unit_of_measure(&self) -> Result<String, MessageRejectErrorEnum> {
1785 let mut fld = field::PriceUnitOfMeasureField::new(String::new());
1786 self.message.body.get_field(tag::PRICE_UNIT_OF_MEASURE, &mut fld.0)?;
1787 Ok(fld.value().to_string())
1788 }
1789
1790
1791 pub fn has_price_unit_of_measure(&self) -> bool {
1793 self.message.body.has(tag::PRICE_UNIT_OF_MEASURE)
1794 }
1795
1796
1797
1798
1799 pub fn set_price_unit_of_measure_qty(&mut self, val: Decimal, scale: i32) {
1801 self.message.body.set_field(tag::PRICE_UNIT_OF_MEASURE_QTY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1802 }
1803
1804 pub fn get_price_unit_of_measure_qty(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1806 let mut fld = field::PriceUnitOfMeasureQtyField::new(Decimal::ZERO, 0);
1807 self.message.body.get_field(tag::PRICE_UNIT_OF_MEASURE_QTY, &mut fld.0)?;
1808 Ok(fld.value())
1809 }
1810
1811
1812 pub fn has_price_unit_of_measure_qty(&self) -> bool {
1814 self.message.body.has(tag::PRICE_UNIT_OF_MEASURE_QTY)
1815 }
1816
1817
1818
1819
1820 pub fn set_product(&mut self, v: isize) {
1822 self.message.body.set_field(tag::PRODUCT, fixer::fix_int::FIXInt::from(v));
1823 }
1824
1825 pub fn get_product(&self) -> Result<isize, MessageRejectErrorEnum> {
1827 let mut fld = field::ProductField::new(0);
1828 self.message.body.get_field(tag::PRODUCT, &mut fld.0)?;
1829 Ok(fld.value())
1830 }
1831
1832
1833 pub fn has_product(&self) -> bool {
1835 self.message.body.has(tag::PRODUCT)
1836 }
1837
1838
1839
1840
1841 pub fn set_product_complex(&mut self, v: String) {
1843 self.message.body.set_field(tag::PRODUCT_COMPLEX, FIXString::from(v));
1844 }
1845
1846 pub fn get_product_complex(&self) -> Result<String, MessageRejectErrorEnum> {
1848 let mut fld = field::ProductComplexField::new(String::new());
1849 self.message.body.get_field(tag::PRODUCT_COMPLEX, &mut fld.0)?;
1850 Ok(fld.value().to_string())
1851 }
1852
1853
1854 pub fn has_product_complex(&self) -> bool {
1856 self.message.body.has(tag::PRODUCT_COMPLEX)
1857 }
1858
1859
1860
1861
1862 pub fn set_put_or_call(&mut self, v: isize) {
1864 self.message.body.set_field(tag::PUT_OR_CALL, fixer::fix_int::FIXInt::from(v));
1865 }
1866
1867 pub fn get_put_or_call(&self) -> Result<isize, MessageRejectErrorEnum> {
1869 let mut fld = field::PutOrCallField::new(0);
1870 self.message.body.get_field(tag::PUT_OR_CALL, &mut fld.0)?;
1871 Ok(fld.value())
1872 }
1873
1874
1875 pub fn has_put_or_call(&self) -> bool {
1877 self.message.body.has(tag::PUT_OR_CALL)
1878 }
1879
1880
1881
1882
1883 pub fn set_qty_type(&mut self, v: isize) {
1885 self.message.body.set_field(tag::QTY_TYPE, fixer::fix_int::FIXInt::from(v));
1886 }
1887
1888 pub fn get_qty_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1890 let mut fld = field::QtyTypeField::new(0);
1891 self.message.body.get_field(tag::QTY_TYPE, &mut fld.0)?;
1892 Ok(fld.value())
1893 }
1894
1895
1896 pub fn has_qty_type(&self) -> bool {
1898 self.message.body.has(tag::QTY_TYPE)
1899 }
1900
1901
1902
1903
1904 pub fn set_quantity(&mut self, val: Decimal, scale: i32) {
1906 self.message.body.set_field(tag::QUANTITY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1907 }
1908
1909 pub fn get_quantity(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1911 let mut fld = field::QuantityField::new(Decimal::ZERO, 0);
1912 self.message.body.get_field(tag::QUANTITY, &mut fld.0)?;
1913 Ok(fld.value())
1914 }
1915
1916
1917 pub fn has_quantity(&self) -> bool {
1919 self.message.body.has(tag::QUANTITY)
1920 }
1921
1922
1923
1924
1925 pub fn set_redemption_date(&mut self, v: String) {
1927 self.message.body.set_field(tag::REDEMPTION_DATE, FIXString::from(v));
1928 }
1929
1930 pub fn get_redemption_date(&self) -> Result<String, MessageRejectErrorEnum> {
1932 let mut fld = field::RedemptionDateField::new(String::new());
1933 self.message.body.get_field(tag::REDEMPTION_DATE, &mut fld.0)?;
1934 Ok(fld.value().to_string())
1935 }
1936
1937
1938 pub fn has_redemption_date(&self) -> bool {
1940 self.message.body.has(tag::REDEMPTION_DATE)
1941 }
1942
1943
1944
1945
1946 pub fn set_repo_collateral_security_type(&mut self, v: isize) {
1948 self.message.body.set_field(tag::REPO_COLLATERAL_SECURITY_TYPE, fixer::fix_int::FIXInt::from(v));
1949 }
1950
1951 pub fn get_repo_collateral_security_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1953 let mut fld = field::RepoCollateralSecurityTypeField::new(0);
1954 self.message.body.get_field(tag::REPO_COLLATERAL_SECURITY_TYPE, &mut fld.0)?;
1955 Ok(fld.value())
1956 }
1957
1958
1959 pub fn has_repo_collateral_security_type(&self) -> bool {
1961 self.message.body.has(tag::REPO_COLLATERAL_SECURITY_TYPE)
1962 }
1963
1964
1965
1966
1967 pub fn set_repurchase_rate(&mut self, val: Decimal, scale: i32) {
1969 self.message.body.set_field(tag::REPURCHASE_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1970 }
1971
1972 pub fn get_repurchase_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1974 let mut fld = field::RepurchaseRateField::new(Decimal::ZERO, 0);
1975 self.message.body.get_field(tag::REPURCHASE_RATE, &mut fld.0)?;
1976 Ok(fld.value())
1977 }
1978
1979
1980 pub fn has_repurchase_rate(&self) -> bool {
1982 self.message.body.has(tag::REPURCHASE_RATE)
1983 }
1984
1985
1986
1987
1988 pub fn set_repurchase_term(&mut self, v: isize) {
1990 self.message.body.set_field(tag::REPURCHASE_TERM, fixer::fix_int::FIXInt::from(v));
1991 }
1992
1993 pub fn get_repurchase_term(&self) -> Result<isize, MessageRejectErrorEnum> {
1995 let mut fld = field::RepurchaseTermField::new(0);
1996 self.message.body.get_field(tag::REPURCHASE_TERM, &mut fld.0)?;
1997 Ok(fld.value())
1998 }
1999
2000
2001 pub fn has_repurchase_term(&self) -> bool {
2003 self.message.body.has(tag::REPURCHASE_TERM)
2004 }
2005
2006
2007
2008
2009 pub fn set_secondary_cl_ord_id(&mut self, v: String) {
2011 self.message.body.set_field(tag::SECONDARY_CL_ORD_ID, FIXString::from(v));
2012 }
2013
2014 pub fn get_secondary_cl_ord_id(&self) -> Result<String, MessageRejectErrorEnum> {
2016 let mut fld = field::SecondaryClOrdIDField::new(String::new());
2017 self.message.body.get_field(tag::SECONDARY_CL_ORD_ID, &mut fld.0)?;
2018 Ok(fld.value().to_string())
2019 }
2020
2021
2022 pub fn has_secondary_cl_ord_id(&self) -> bool {
2024 self.message.body.has(tag::SECONDARY_CL_ORD_ID)
2025 }
2026
2027
2028
2029
2030 pub fn set_secondary_order_id(&mut self, v: String) {
2032 self.message.body.set_field(tag::SECONDARY_ORDER_ID, FIXString::from(v));
2033 }
2034
2035 pub fn get_secondary_order_id(&self) -> Result<String, MessageRejectErrorEnum> {
2037 let mut fld = field::SecondaryOrderIDField::new(String::new());
2038 self.message.body.get_field(tag::SECONDARY_ORDER_ID, &mut fld.0)?;
2039 Ok(fld.value().to_string())
2040 }
2041
2042
2043 pub fn has_secondary_order_id(&self) -> bool {
2045 self.message.body.has(tag::SECONDARY_ORDER_ID)
2046 }
2047
2048
2049
2050
2051 pub fn set_security_desc(&mut self, v: String) {
2053 self.message.body.set_field(tag::SECURITY_DESC, FIXString::from(v));
2054 }
2055
2056 pub fn get_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
2058 let mut fld = field::SecurityDescField::new(String::new());
2059 self.message.body.get_field(tag::SECURITY_DESC, &mut fld.0)?;
2060 Ok(fld.value().to_string())
2061 }
2062
2063
2064 pub fn has_security_desc(&self) -> bool {
2066 self.message.body.has(tag::SECURITY_DESC)
2067 }
2068
2069
2070
2071
2072 pub fn set_security_exchange(&mut self, v: String) {
2074 self.message.body.set_field(tag::SECURITY_EXCHANGE, FIXString::from(v));
2075 }
2076
2077 pub fn get_security_exchange(&self) -> Result<String, MessageRejectErrorEnum> {
2079 let mut fld = field::SecurityExchangeField::new(String::new());
2080 self.message.body.get_field(tag::SECURITY_EXCHANGE, &mut fld.0)?;
2081 Ok(fld.value().to_string())
2082 }
2083
2084
2085 pub fn has_security_exchange(&self) -> bool {
2087 self.message.body.has(tag::SECURITY_EXCHANGE)
2088 }
2089
2090
2091
2092
2093 pub fn set_security_group(&mut self, v: String) {
2095 self.message.body.set_field(tag::SECURITY_GROUP, FIXString::from(v));
2096 }
2097
2098 pub fn get_security_group(&self) -> Result<String, MessageRejectErrorEnum> {
2100 let mut fld = field::SecurityGroupField::new(String::new());
2101 self.message.body.get_field(tag::SECURITY_GROUP, &mut fld.0)?;
2102 Ok(fld.value().to_string())
2103 }
2104
2105
2106 pub fn has_security_group(&self) -> bool {
2108 self.message.body.has(tag::SECURITY_GROUP)
2109 }
2110
2111
2112
2113
2114 pub fn set_security_id(&mut self, v: String) {
2116 self.message.body.set_field(tag::SECURITY_ID, FIXString::from(v));
2117 }
2118
2119 pub fn get_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
2121 let mut fld = field::SecurityIDField::new(String::new());
2122 self.message.body.get_field(tag::SECURITY_ID, &mut fld.0)?;
2123 Ok(fld.value().to_string())
2124 }
2125
2126
2127 pub fn has_security_id(&self) -> bool {
2129 self.message.body.has(tag::SECURITY_ID)
2130 }
2131
2132
2133
2134
2135 pub fn set_security_id_source(&mut self, v: String) {
2137 self.message.body.set_field(tag::SECURITY_ID_SOURCE, FIXString::from(v));
2138 }
2139
2140 pub fn get_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
2142 let mut fld = field::SecurityIDSourceField::new(String::new());
2143 self.message.body.get_field(tag::SECURITY_ID_SOURCE, &mut fld.0)?;
2144 Ok(fld.value().to_string())
2145 }
2146
2147
2148 pub fn has_security_id_source(&self) -> bool {
2150 self.message.body.has(tag::SECURITY_ID_SOURCE)
2151 }
2152
2153
2154
2155
2156 pub fn set_security_status(&mut self, v: String) {
2158 self.message.body.set_field(tag::SECURITY_STATUS, FIXString::from(v));
2159 }
2160
2161 pub fn get_security_status(&self) -> Result<String, MessageRejectErrorEnum> {
2163 let mut fld = field::SecurityStatusField::new(String::new());
2164 self.message.body.get_field(tag::SECURITY_STATUS, &mut fld.0)?;
2165 Ok(fld.value().to_string())
2166 }
2167
2168
2169 pub fn has_security_status(&self) -> bool {
2171 self.message.body.has(tag::SECURITY_STATUS)
2172 }
2173
2174
2175
2176
2177 pub fn set_security_sub_type(&mut self, v: String) {
2179 self.message.body.set_field(tag::SECURITY_SUB_TYPE, FIXString::from(v));
2180 }
2181
2182 pub fn get_security_sub_type(&self) -> Result<String, MessageRejectErrorEnum> {
2184 let mut fld = field::SecuritySubTypeField::new(String::new());
2185 self.message.body.get_field(tag::SECURITY_SUB_TYPE, &mut fld.0)?;
2186 Ok(fld.value().to_string())
2187 }
2188
2189
2190 pub fn has_security_sub_type(&self) -> bool {
2192 self.message.body.has(tag::SECURITY_SUB_TYPE)
2193 }
2194
2195
2196
2197
2198 pub fn set_security_type(&mut self, v: String) {
2200 self.message.body.set_field(tag::SECURITY_TYPE, FIXString::from(v));
2201 }
2202
2203 pub fn get_security_type(&self) -> Result<String, MessageRejectErrorEnum> {
2205 let mut fld = field::SecurityTypeField::new(String::new());
2206 self.message.body.get_field(tag::SECURITY_TYPE, &mut fld.0)?;
2207 Ok(fld.value().to_string())
2208 }
2209
2210
2211 pub fn has_security_type(&self) -> bool {
2213 self.message.body.has(tag::SECURITY_TYPE)
2214 }
2215
2216
2217
2218
2219 pub fn set_security_xml(&mut self, v: String) {
2221 self.message.body.set_field(tag::SECURITY_XML, FIXString::from(v));
2222 }
2223
2224 pub fn get_security_xml(&self) -> Result<String, MessageRejectErrorEnum> {
2226 let mut fld = field::SecurityXMLField::new(String::new());
2227 self.message.body.get_field(tag::SECURITY_XML, &mut fld.0)?;
2228 Ok(fld.value().to_string())
2229 }
2230
2231
2232 pub fn has_security_xml(&self) -> bool {
2234 self.message.body.has(tag::SECURITY_XML)
2235 }
2236
2237
2238
2239
2240 pub fn set_security_xml_len(&mut self, v: isize) {
2242 self.message.body.set_field(tag::SECURITY_XML_LEN, fixer::fix_int::FIXInt::from(v));
2243 }
2244
2245 pub fn get_security_xml_len(&self) -> Result<isize, MessageRejectErrorEnum> {
2247 let mut fld = field::SecurityXMLLenField::new(0);
2248 self.message.body.get_field(tag::SECURITY_XML_LEN, &mut fld.0)?;
2249 Ok(fld.value())
2250 }
2251
2252
2253 pub fn has_security_xml_len(&self) -> bool {
2255 self.message.body.has(tag::SECURITY_XML_LEN)
2256 }
2257
2258
2259
2260
2261 pub fn set_security_xml_schema(&mut self, v: String) {
2263 self.message.body.set_field(tag::SECURITY_XML_SCHEMA, FIXString::from(v));
2264 }
2265
2266 pub fn get_security_xml_schema(&self) -> Result<String, MessageRejectErrorEnum> {
2268 let mut fld = field::SecurityXMLSchemaField::new(String::new());
2269 self.message.body.get_field(tag::SECURITY_XML_SCHEMA, &mut fld.0)?;
2270 Ok(fld.value().to_string())
2271 }
2272
2273
2274 pub fn has_security_xml_schema(&self) -> bool {
2276 self.message.body.has(tag::SECURITY_XML_SCHEMA)
2277 }
2278
2279
2280
2281
2282 pub fn set_settl_date(&mut self, v: String) {
2284 self.message.body.set_field(tag::SETTL_DATE, FIXString::from(v));
2285 }
2286
2287 pub fn get_settl_date(&self) -> Result<String, MessageRejectErrorEnum> {
2289 let mut fld = field::SettlDateField::new(String::new());
2290 self.message.body.get_field(tag::SETTL_DATE, &mut fld.0)?;
2291 Ok(fld.value().to_string())
2292 }
2293
2294
2295 pub fn has_settl_date(&self) -> bool {
2297 self.message.body.has(tag::SETTL_DATE)
2298 }
2299
2300
2301
2302
2303 pub fn set_settl_method(&mut self, v: String) {
2305 self.message.body.set_field(tag::SETTL_METHOD, FIXString::from(v));
2306 }
2307
2308 pub fn get_settl_method(&self) -> Result<String, MessageRejectErrorEnum> {
2310 let mut fld = field::SettlMethodField::new(String::new());
2311 self.message.body.get_field(tag::SETTL_METHOD, &mut fld.0)?;
2312 Ok(fld.value().to_string())
2313 }
2314
2315
2316 pub fn has_settl_method(&self) -> bool {
2318 self.message.body.has(tag::SETTL_METHOD)
2319 }
2320
2321
2322
2323
2324 pub fn set_settl_sess_id(&mut self, v: String) {
2326 self.message.body.set_field(tag::SETTL_SESS_ID, FIXString::from(v));
2327 }
2328
2329 pub fn get_settl_sess_id(&self) -> Result<String, MessageRejectErrorEnum> {
2331 let mut fld = field::SettlSessIDField::new(String::new());
2332 self.message.body.get_field(tag::SETTL_SESS_ID, &mut fld.0)?;
2333 Ok(fld.value().to_string())
2334 }
2335
2336
2337 pub fn has_settl_sess_id(&self) -> bool {
2339 self.message.body.has(tag::SETTL_SESS_ID)
2340 }
2341
2342
2343
2344
2345 pub fn set_settl_sess_sub_id(&mut self, v: String) {
2347 self.message.body.set_field(tag::SETTL_SESS_SUB_ID, FIXString::from(v));
2348 }
2349
2350 pub fn get_settl_sess_sub_id(&self) -> Result<String, MessageRejectErrorEnum> {
2352 let mut fld = field::SettlSessSubIDField::new(String::new());
2353 self.message.body.get_field(tag::SETTL_SESS_SUB_ID, &mut fld.0)?;
2354 Ok(fld.value().to_string())
2355 }
2356
2357
2358 pub fn has_settl_sess_sub_id(&self) -> bool {
2360 self.message.body.has(tag::SETTL_SESS_SUB_ID)
2361 }
2362
2363
2364
2365
2366 pub fn set_settle_on_open_flag(&mut self, v: String) {
2368 self.message.body.set_field(tag::SETTLE_ON_OPEN_FLAG, FIXString::from(v));
2369 }
2370
2371 pub fn get_settle_on_open_flag(&self) -> Result<String, MessageRejectErrorEnum> {
2373 let mut fld = field::SettleOnOpenFlagField::new(String::new());
2374 self.message.body.get_field(tag::SETTLE_ON_OPEN_FLAG, &mut fld.0)?;
2375 Ok(fld.value().to_string())
2376 }
2377
2378
2379 pub fn has_settle_on_open_flag(&self) -> bool {
2381 self.message.body.has(tag::SETTLE_ON_OPEN_FLAG)
2382 }
2383
2384
2385
2386
2387 pub fn set_side(&mut self, v: String) {
2389 self.message.body.set_field(tag::SIDE, FIXString::from(v));
2390 }
2391
2392 pub fn get_side(&self) -> Result<String, MessageRejectErrorEnum> {
2394 let mut fld = field::SideField::new(String::new());
2395 self.message.body.get_field(tag::SIDE, &mut fld.0)?;
2396 Ok(fld.value().to_string())
2397 }
2398
2399
2400 pub fn has_side(&self) -> bool {
2402 self.message.body.has(tag::SIDE)
2403 }
2404
2405
2406
2407
2408 pub fn set_spread(&mut self, val: Decimal, scale: i32) {
2410 self.message.body.set_field(tag::SPREAD, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2411 }
2412
2413 pub fn get_spread(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2415 let mut fld = field::SpreadField::new(Decimal::ZERO, 0);
2416 self.message.body.get_field(tag::SPREAD, &mut fld.0)?;
2417 Ok(fld.value())
2418 }
2419
2420
2421 pub fn has_spread(&self) -> bool {
2423 self.message.body.has(tag::SPREAD)
2424 }
2425
2426
2427
2428
2429 pub fn set_start_cash(&mut self, val: Decimal, scale: i32) {
2431 self.message.body.set_field(tag::START_CASH, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2432 }
2433
2434 pub fn get_start_cash(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2436 let mut fld = field::StartCashField::new(Decimal::ZERO, 0);
2437 self.message.body.get_field(tag::START_CASH, &mut fld.0)?;
2438 Ok(fld.value())
2439 }
2440
2441
2442 pub fn has_start_cash(&self) -> bool {
2444 self.message.body.has(tag::START_CASH)
2445 }
2446
2447
2448
2449
2450 pub fn set_start_date(&mut self, v: String) {
2452 self.message.body.set_field(tag::START_DATE, FIXString::from(v));
2453 }
2454
2455 pub fn get_start_date(&self) -> Result<String, MessageRejectErrorEnum> {
2457 let mut fld = field::StartDateField::new(String::new());
2458 self.message.body.get_field(tag::START_DATE, &mut fld.0)?;
2459 Ok(fld.value().to_string())
2460 }
2461
2462
2463 pub fn has_start_date(&self) -> bool {
2465 self.message.body.has(tag::START_DATE)
2466 }
2467
2468
2469
2470
2471 pub fn set_state_or_province_of_issue(&mut self, v: String) {
2473 self.message.body.set_field(tag::STATE_OR_PROVINCE_OF_ISSUE, FIXString::from(v));
2474 }
2475
2476 pub fn get_state_or_province_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
2478 let mut fld = field::StateOrProvinceOfIssueField::new(String::new());
2479 self.message.body.get_field(tag::STATE_OR_PROVINCE_OF_ISSUE, &mut fld.0)?;
2480 Ok(fld.value().to_string())
2481 }
2482
2483
2484 pub fn has_state_or_province_of_issue(&self) -> bool {
2486 self.message.body.has(tag::STATE_OR_PROVINCE_OF_ISSUE)
2487 }
2488
2489
2490
2491
2492 pub fn set_strike_currency(&mut self, v: String) {
2494 self.message.body.set_field(tag::STRIKE_CURRENCY, FIXString::from(v));
2495 }
2496
2497 pub fn get_strike_currency(&self) -> Result<String, MessageRejectErrorEnum> {
2499 let mut fld = field::StrikeCurrencyField::new(String::new());
2500 self.message.body.get_field(tag::STRIKE_CURRENCY, &mut fld.0)?;
2501 Ok(fld.value().to_string())
2502 }
2503
2504
2505 pub fn has_strike_currency(&self) -> bool {
2507 self.message.body.has(tag::STRIKE_CURRENCY)
2508 }
2509
2510
2511
2512
2513 pub fn set_strike_multiplier(&mut self, val: Decimal, scale: i32) {
2515 self.message.body.set_field(tag::STRIKE_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2516 }
2517
2518 pub fn get_strike_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2520 let mut fld = field::StrikeMultiplierField::new(Decimal::ZERO, 0);
2521 self.message.body.get_field(tag::STRIKE_MULTIPLIER, &mut fld.0)?;
2522 Ok(fld.value())
2523 }
2524
2525
2526 pub fn has_strike_multiplier(&self) -> bool {
2528 self.message.body.has(tag::STRIKE_MULTIPLIER)
2529 }
2530
2531
2532
2533
2534 pub fn set_strike_price(&mut self, val: Decimal, scale: i32) {
2536 self.message.body.set_field(tag::STRIKE_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2537 }
2538
2539 pub fn get_strike_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2541 let mut fld = field::StrikePriceField::new(Decimal::ZERO, 0);
2542 self.message.body.get_field(tag::STRIKE_PRICE, &mut fld.0)?;
2543 Ok(fld.value())
2544 }
2545
2546
2547 pub fn has_strike_price(&self) -> bool {
2549 self.message.body.has(tag::STRIKE_PRICE)
2550 }
2551
2552
2553
2554
2555 pub fn set_strike_value(&mut self, val: Decimal, scale: i32) {
2557 self.message.body.set_field(tag::STRIKE_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2558 }
2559
2560 pub fn get_strike_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2562 let mut fld = field::StrikeValueField::new(Decimal::ZERO, 0);
2563 self.message.body.get_field(tag::STRIKE_VALUE, &mut fld.0)?;
2564 Ok(fld.value())
2565 }
2566
2567
2568 pub fn has_strike_value(&self) -> bool {
2570 self.message.body.has(tag::STRIKE_VALUE)
2571 }
2572
2573
2574
2575
2576 pub fn set_symbol(&mut self, v: String) {
2578 self.message.body.set_field(tag::SYMBOL, FIXString::from(v));
2579 }
2580
2581 pub fn get_symbol(&self) -> Result<String, MessageRejectErrorEnum> {
2583 let mut fld = field::SymbolField::new(String::new());
2584 self.message.body.get_field(tag::SYMBOL, &mut fld.0)?;
2585 Ok(fld.value().to_string())
2586 }
2587
2588
2589 pub fn has_symbol(&self) -> bool {
2591 self.message.body.has(tag::SYMBOL)
2592 }
2593
2594
2595
2596
2597 pub fn set_symbol_sfx(&mut self, v: String) {
2599 self.message.body.set_field(tag::SYMBOL_SFX, FIXString::from(v));
2600 }
2601
2602 pub fn get_symbol_sfx(&self) -> Result<String, MessageRejectErrorEnum> {
2604 let mut fld = field::SymbolSfxField::new(String::new());
2605 self.message.body.get_field(tag::SYMBOL_SFX, &mut fld.0)?;
2606 Ok(fld.value().to_string())
2607 }
2608
2609
2610 pub fn has_symbol_sfx(&self) -> bool {
2612 self.message.body.has(tag::SYMBOL_SFX)
2613 }
2614
2615
2616
2617
2618 pub fn set_termination_type(&mut self, v: isize) {
2620 self.message.body.set_field(tag::TERMINATION_TYPE, fixer::fix_int::FIXInt::from(v));
2621 }
2622
2623 pub fn get_termination_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2625 let mut fld = field::TerminationTypeField::new(0);
2626 self.message.body.get_field(tag::TERMINATION_TYPE, &mut fld.0)?;
2627 Ok(fld.value())
2628 }
2629
2630
2631 pub fn has_termination_type(&self) -> bool {
2633 self.message.body.has(tag::TERMINATION_TYPE)
2634 }
2635
2636
2637
2638
2639 pub fn set_text(&mut self, v: String) {
2641 self.message.body.set_field(tag::TEXT, FIXString::from(v));
2642 }
2643
2644 pub fn get_text(&self) -> Result<String, MessageRejectErrorEnum> {
2646 let mut fld = field::TextField::new(String::new());
2647 self.message.body.get_field(tag::TEXT, &mut fld.0)?;
2648 Ok(fld.value().to_string())
2649 }
2650
2651
2652 pub fn has_text(&self) -> bool {
2654 self.message.body.has(tag::TEXT)
2655 }
2656
2657
2658
2659
2660 pub fn set_time_unit(&mut self, v: String) {
2662 self.message.body.set_field(tag::TIME_UNIT, FIXString::from(v));
2663 }
2664
2665 pub fn get_time_unit(&self) -> Result<String, MessageRejectErrorEnum> {
2667 let mut fld = field::TimeUnitField::new(String::new());
2668 self.message.body.get_field(tag::TIME_UNIT, &mut fld.0)?;
2669 Ok(fld.value().to_string())
2670 }
2671
2672
2673 pub fn has_time_unit(&self) -> bool {
2675 self.message.body.has(tag::TIME_UNIT)
2676 }
2677
2678
2679
2680
2681 pub fn set_total_net_value(&mut self, val: Decimal, scale: i32) {
2683 self.message.body.set_field(tag::TOTAL_NET_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2684 }
2685
2686 pub fn get_total_net_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2688 let mut fld = field::TotalNetValueField::new(Decimal::ZERO, 0);
2689 self.message.body.get_field(tag::TOTAL_NET_VALUE, &mut fld.0)?;
2690 Ok(fld.value())
2691 }
2692
2693
2694 pub fn has_total_net_value(&self) -> bool {
2696 self.message.body.has(tag::TOTAL_NET_VALUE)
2697 }
2698
2699
2700
2701
2702 pub fn set_trading_session_id(&mut self, v: String) {
2704 self.message.body.set_field(tag::TRADING_SESSION_ID, FIXString::from(v));
2705 }
2706
2707 pub fn get_trading_session_id(&self) -> Result<String, MessageRejectErrorEnum> {
2709 let mut fld = field::TradingSessionIDField::new(String::new());
2710 self.message.body.get_field(tag::TRADING_SESSION_ID, &mut fld.0)?;
2711 Ok(fld.value().to_string())
2712 }
2713
2714
2715 pub fn has_trading_session_id(&self) -> bool {
2717 self.message.body.has(tag::TRADING_SESSION_ID)
2718 }
2719
2720
2721
2722
2723 pub fn set_trading_session_sub_id(&mut self, v: String) {
2725 self.message.body.set_field(tag::TRADING_SESSION_SUB_ID, FIXString::from(v));
2726 }
2727
2728 pub fn get_trading_session_sub_id(&self) -> Result<String, MessageRejectErrorEnum> {
2730 let mut fld = field::TradingSessionSubIDField::new(String::new());
2731 self.message.body.get_field(tag::TRADING_SESSION_SUB_ID, &mut fld.0)?;
2732 Ok(fld.value().to_string())
2733 }
2734
2735
2736 pub fn has_trading_session_sub_id(&self) -> bool {
2738 self.message.body.has(tag::TRADING_SESSION_SUB_ID)
2739 }
2740
2741
2742
2743
2744 pub fn set_transact_time(&mut self, v: Timestamp) {
2746 self.message.body.set_field(tag::TRANSACT_TIME, fixer::fix_utc_timestamp::FIXUTCTimestamp {
2747 time: v,
2748 precision: fixer::fix_utc_timestamp::TimestampPrecision::Millis,
2749 });
2750 }
2751
2752 pub fn get_transact_time(&self) -> Result<Timestamp, MessageRejectErrorEnum> {
2754 let mut fld = field::TransactTimeField::new(Timestamp::UNIX_EPOCH);
2755 self.message.body.get_field(tag::TRANSACT_TIME, &mut fld.0)?;
2756 Ok(fld.value())
2757 }
2758
2759
2760 pub fn has_transact_time(&self) -> bool {
2762 self.message.body.has(tag::TRANSACT_TIME)
2763 }
2764
2765
2766
2767
2768 pub fn set_unit_of_measure(&mut self, v: String) {
2770 self.message.body.set_field(tag::UNIT_OF_MEASURE, FIXString::from(v));
2771 }
2772
2773 pub fn get_unit_of_measure(&self) -> Result<String, MessageRejectErrorEnum> {
2775 let mut fld = field::UnitOfMeasureField::new(String::new());
2776 self.message.body.get_field(tag::UNIT_OF_MEASURE, &mut fld.0)?;
2777 Ok(fld.value().to_string())
2778 }
2779
2780
2781 pub fn has_unit_of_measure(&self) -> bool {
2783 self.message.body.has(tag::UNIT_OF_MEASURE)
2784 }
2785
2786
2787
2788
2789 pub fn set_unit_of_measure_qty(&mut self, val: Decimal, scale: i32) {
2791 self.message.body.set_field(tag::UNIT_OF_MEASURE_QTY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2792 }
2793
2794 pub fn get_unit_of_measure_qty(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2796 let mut fld = field::UnitOfMeasureQtyField::new(Decimal::ZERO, 0);
2797 self.message.body.get_field(tag::UNIT_OF_MEASURE_QTY, &mut fld.0)?;
2798 Ok(fld.value())
2799 }
2800
2801
2802 pub fn has_unit_of_measure_qty(&self) -> bool {
2804 self.message.body.has(tag::UNIT_OF_MEASURE_QTY)
2805 }
2806
2807
2808}
2809
2810pub type RouteOut = fn(msg: CollateralRequest, session_id: SessionID) -> Result<(), MessageRejectErrorEnum>;
2812
2813pub type Route = (&'static str, &'static str, Box<dyn Fn(&Message, SessionID) -> Result<(), MessageRejectErrorEnum> + Send>);
2815
2816pub fn route(router: RouteOut) -> Route {
2818 let r = move |msg: &Message, session_id: SessionID| -> Result<(), MessageRejectErrorEnum> {
2819 router(CollateralRequest::from_message(msg.clone()), session_id)
2820 };
2821 ("8", "AX", Box::new(r))
2822}