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 NewOrderSingle {
22 pub message: Message,
23}
24
25impl NewOrderSingle {
26 pub fn new(cl_ord_id: field::ClOrdIDField, side: field::SideField, transact_time: field::TransactTimeField, ord_type: field::OrdTypeField) -> Self {
28 let mut msg = Message::new();
29 msg.header.set_field(tag::MSG_TYPE, FIXString::from("D".to_string()));
30
31 msg.body.set_field(tag::CL_ORD_ID, cl_ord_id.0);
32
33 msg.body.set_field(tag::SIDE, side.0);
34
35 msg.body.set_field(tag::TRANSACT_TIME, transact_time.0);
36
37 msg.body.set_field(tag::ORD_TYPE, ord_type.0);
38
39 Self { message: msg }
40 }
41
42 pub fn from_message(msg: Message) -> Self {
44 Self { message: msg }
45 }
46
47 pub fn to_message(self) -> Message {
49 self.message
50 }
51
52
53
54
55 pub fn set_account(&mut self, v: String) {
57 self.message.body.set_field(tag::ACCOUNT, FIXString::from(v));
58 }
59
60 pub fn get_account(&self) -> Result<String, MessageRejectErrorEnum> {
62 let mut fld = field::AccountField::new(String::new());
63 self.message.body.get_field(tag::ACCOUNT, &mut fld.0)?;
64 Ok(fld.value().to_string())
65 }
66
67
68 pub fn has_account(&self) -> bool {
70 self.message.body.has(tag::ACCOUNT)
71 }
72
73
74
75
76 pub fn set_account_type(&mut self, v: isize) {
78 self.message.body.set_field(tag::ACCOUNT_TYPE, fixer::fix_int::FIXInt::from(v));
79 }
80
81 pub fn get_account_type(&self) -> Result<isize, MessageRejectErrorEnum> {
83 let mut fld = field::AccountTypeField::new(0);
84 self.message.body.get_field(tag::ACCOUNT_TYPE, &mut fld.0)?;
85 Ok(fld.value())
86 }
87
88
89 pub fn has_account_type(&self) -> bool {
91 self.message.body.has(tag::ACCOUNT_TYPE)
92 }
93
94
95
96
97 pub fn set_acct_id_source(&mut self, v: isize) {
99 self.message.body.set_field(tag::ACCT_ID_SOURCE, fixer::fix_int::FIXInt::from(v));
100 }
101
102 pub fn get_acct_id_source(&self) -> Result<isize, MessageRejectErrorEnum> {
104 let mut fld = field::AcctIDSourceField::new(0);
105 self.message.body.get_field(tag::ACCT_ID_SOURCE, &mut fld.0)?;
106 Ok(fld.value())
107 }
108
109
110 pub fn has_acct_id_source(&self) -> bool {
112 self.message.body.has(tag::ACCT_ID_SOURCE)
113 }
114
115
116
117
118 pub fn set_agreement_currency(&mut self, v: String) {
120 self.message.body.set_field(tag::AGREEMENT_CURRENCY, FIXString::from(v));
121 }
122
123 pub fn get_agreement_currency(&self) -> Result<String, MessageRejectErrorEnum> {
125 let mut fld = field::AgreementCurrencyField::new(String::new());
126 self.message.body.get_field(tag::AGREEMENT_CURRENCY, &mut fld.0)?;
127 Ok(fld.value().to_string())
128 }
129
130
131 pub fn has_agreement_currency(&self) -> bool {
133 self.message.body.has(tag::AGREEMENT_CURRENCY)
134 }
135
136
137
138
139 pub fn set_agreement_date(&mut self, v: String) {
141 self.message.body.set_field(tag::AGREEMENT_DATE, FIXString::from(v));
142 }
143
144 pub fn get_agreement_date(&self) -> Result<String, MessageRejectErrorEnum> {
146 let mut fld = field::AgreementDateField::new(String::new());
147 self.message.body.get_field(tag::AGREEMENT_DATE, &mut fld.0)?;
148 Ok(fld.value().to_string())
149 }
150
151
152 pub fn has_agreement_date(&self) -> bool {
154 self.message.body.has(tag::AGREEMENT_DATE)
155 }
156
157
158
159
160 pub fn set_agreement_desc(&mut self, v: String) {
162 self.message.body.set_field(tag::AGREEMENT_DESC, FIXString::from(v));
163 }
164
165 pub fn get_agreement_desc(&self) -> Result<String, MessageRejectErrorEnum> {
167 let mut fld = field::AgreementDescField::new(String::new());
168 self.message.body.get_field(tag::AGREEMENT_DESC, &mut fld.0)?;
169 Ok(fld.value().to_string())
170 }
171
172
173 pub fn has_agreement_desc(&self) -> bool {
175 self.message.body.has(tag::AGREEMENT_DESC)
176 }
177
178
179
180
181 pub fn set_agreement_id(&mut self, v: String) {
183 self.message.body.set_field(tag::AGREEMENT_ID, FIXString::from(v));
184 }
185
186 pub fn get_agreement_id(&self) -> Result<String, MessageRejectErrorEnum> {
188 let mut fld = field::AgreementIDField::new(String::new());
189 self.message.body.get_field(tag::AGREEMENT_ID, &mut fld.0)?;
190 Ok(fld.value().to_string())
191 }
192
193
194 pub fn has_agreement_id(&self) -> bool {
196 self.message.body.has(tag::AGREEMENT_ID)
197 }
198
199
200
201
202 pub fn set_alloc_id(&mut self, v: String) {
204 self.message.body.set_field(tag::ALLOC_ID, FIXString::from(v));
205 }
206
207 pub fn get_alloc_id(&self) -> Result<String, MessageRejectErrorEnum> {
209 let mut fld = field::AllocIDField::new(String::new());
210 self.message.body.get_field(tag::ALLOC_ID, &mut fld.0)?;
211 Ok(fld.value().to_string())
212 }
213
214
215 pub fn has_alloc_id(&self) -> bool {
217 self.message.body.has(tag::ALLOC_ID)
218 }
219
220
221
222
223 pub fn set_benchmark_curve_currency(&mut self, v: String) {
225 self.message.body.set_field(tag::BENCHMARK_CURVE_CURRENCY, FIXString::from(v));
226 }
227
228 pub fn get_benchmark_curve_currency(&self) -> Result<String, MessageRejectErrorEnum> {
230 let mut fld = field::BenchmarkCurveCurrencyField::new(String::new());
231 self.message.body.get_field(tag::BENCHMARK_CURVE_CURRENCY, &mut fld.0)?;
232 Ok(fld.value().to_string())
233 }
234
235
236 pub fn has_benchmark_curve_currency(&self) -> bool {
238 self.message.body.has(tag::BENCHMARK_CURVE_CURRENCY)
239 }
240
241
242
243
244 pub fn set_benchmark_curve_name(&mut self, v: String) {
246 self.message.body.set_field(tag::BENCHMARK_CURVE_NAME, FIXString::from(v));
247 }
248
249 pub fn get_benchmark_curve_name(&self) -> Result<String, MessageRejectErrorEnum> {
251 let mut fld = field::BenchmarkCurveNameField::new(String::new());
252 self.message.body.get_field(tag::BENCHMARK_CURVE_NAME, &mut fld.0)?;
253 Ok(fld.value().to_string())
254 }
255
256
257 pub fn has_benchmark_curve_name(&self) -> bool {
259 self.message.body.has(tag::BENCHMARK_CURVE_NAME)
260 }
261
262
263
264
265 pub fn set_benchmark_curve_point(&mut self, v: String) {
267 self.message.body.set_field(tag::BENCHMARK_CURVE_POINT, FIXString::from(v));
268 }
269
270 pub fn get_benchmark_curve_point(&self) -> Result<String, MessageRejectErrorEnum> {
272 let mut fld = field::BenchmarkCurvePointField::new(String::new());
273 self.message.body.get_field(tag::BENCHMARK_CURVE_POINT, &mut fld.0)?;
274 Ok(fld.value().to_string())
275 }
276
277
278 pub fn has_benchmark_curve_point(&self) -> bool {
280 self.message.body.has(tag::BENCHMARK_CURVE_POINT)
281 }
282
283
284
285
286 pub fn set_benchmark_price(&mut self, val: Decimal, scale: i32) {
288 self.message.body.set_field(tag::BENCHMARK_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
289 }
290
291 pub fn get_benchmark_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
293 let mut fld = field::BenchmarkPriceField::new(Decimal::ZERO, 0);
294 self.message.body.get_field(tag::BENCHMARK_PRICE, &mut fld.0)?;
295 Ok(fld.value())
296 }
297
298
299 pub fn has_benchmark_price(&self) -> bool {
301 self.message.body.has(tag::BENCHMARK_PRICE)
302 }
303
304
305
306
307 pub fn set_benchmark_price_type(&mut self, v: isize) {
309 self.message.body.set_field(tag::BENCHMARK_PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
310 }
311
312 pub fn get_benchmark_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
314 let mut fld = field::BenchmarkPriceTypeField::new(0);
315 self.message.body.get_field(tag::BENCHMARK_PRICE_TYPE, &mut fld.0)?;
316 Ok(fld.value())
317 }
318
319
320 pub fn has_benchmark_price_type(&self) -> bool {
322 self.message.body.has(tag::BENCHMARK_PRICE_TYPE)
323 }
324
325
326
327
328 pub fn set_benchmark_security_id(&mut self, v: String) {
330 self.message.body.set_field(tag::BENCHMARK_SECURITY_ID, FIXString::from(v));
331 }
332
333 pub fn get_benchmark_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
335 let mut fld = field::BenchmarkSecurityIDField::new(String::new());
336 self.message.body.get_field(tag::BENCHMARK_SECURITY_ID, &mut fld.0)?;
337 Ok(fld.value().to_string())
338 }
339
340
341 pub fn has_benchmark_security_id(&self) -> bool {
343 self.message.body.has(tag::BENCHMARK_SECURITY_ID)
344 }
345
346
347
348
349 pub fn set_benchmark_security_id_source(&mut self, v: String) {
351 self.message.body.set_field(tag::BENCHMARK_SECURITY_ID_SOURCE, FIXString::from(v));
352 }
353
354 pub fn get_benchmark_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
356 let mut fld = field::BenchmarkSecurityIDSourceField::new(String::new());
357 self.message.body.get_field(tag::BENCHMARK_SECURITY_ID_SOURCE, &mut fld.0)?;
358 Ok(fld.value().to_string())
359 }
360
361
362 pub fn has_benchmark_security_id_source(&self) -> bool {
364 self.message.body.has(tag::BENCHMARK_SECURITY_ID_SOURCE)
365 }
366
367
368
369
370 pub fn set_booking_type(&mut self, v: isize) {
372 self.message.body.set_field(tag::BOOKING_TYPE, fixer::fix_int::FIXInt::from(v));
373 }
374
375 pub fn get_booking_type(&self) -> Result<isize, MessageRejectErrorEnum> {
377 let mut fld = field::BookingTypeField::new(0);
378 self.message.body.get_field(tag::BOOKING_TYPE, &mut fld.0)?;
379 Ok(fld.value())
380 }
381
382
383 pub fn has_booking_type(&self) -> bool {
385 self.message.body.has(tag::BOOKING_TYPE)
386 }
387
388
389
390
391 pub fn set_booking_unit(&mut self, v: String) {
393 self.message.body.set_field(tag::BOOKING_UNIT, FIXString::from(v));
394 }
395
396 pub fn get_booking_unit(&self) -> Result<String, MessageRejectErrorEnum> {
398 let mut fld = field::BookingUnitField::new(String::new());
399 self.message.body.get_field(tag::BOOKING_UNIT, &mut fld.0)?;
400 Ok(fld.value().to_string())
401 }
402
403
404 pub fn has_booking_unit(&self) -> bool {
406 self.message.body.has(tag::BOOKING_UNIT)
407 }
408
409
410
411
412 pub fn set_cfi_code(&mut self, v: String) {
414 self.message.body.set_field(tag::CFI_CODE, FIXString::from(v));
415 }
416
417 pub fn get_cfi_code(&self) -> Result<String, MessageRejectErrorEnum> {
419 let mut fld = field::CFICodeField::new(String::new());
420 self.message.body.get_field(tag::CFI_CODE, &mut fld.0)?;
421 Ok(fld.value().to_string())
422 }
423
424
425 pub fn has_cfi_code(&self) -> bool {
427 self.message.body.has(tag::CFI_CODE)
428 }
429
430
431
432
433 pub fn set_cp_program(&mut self, v: isize) {
435 self.message.body.set_field(tag::CP_PROGRAM, fixer::fix_int::FIXInt::from(v));
436 }
437
438 pub fn get_cp_program(&self) -> Result<isize, MessageRejectErrorEnum> {
440 let mut fld = field::CPProgramField::new(0);
441 self.message.body.get_field(tag::CP_PROGRAM, &mut fld.0)?;
442 Ok(fld.value())
443 }
444
445
446 pub fn has_cp_program(&self) -> bool {
448 self.message.body.has(tag::CP_PROGRAM)
449 }
450
451
452
453
454 pub fn set_cp_reg_type(&mut self, v: String) {
456 self.message.body.set_field(tag::CP_REG_TYPE, FIXString::from(v));
457 }
458
459 pub fn get_cp_reg_type(&self) -> Result<String, MessageRejectErrorEnum> {
461 let mut fld = field::CPRegTypeField::new(String::new());
462 self.message.body.get_field(tag::CP_REG_TYPE, &mut fld.0)?;
463 Ok(fld.value().to_string())
464 }
465
466
467 pub fn has_cp_reg_type(&self) -> bool {
469 self.message.body.has(tag::CP_REG_TYPE)
470 }
471
472
473
474
475 pub fn set_cancellation_rights(&mut self, v: String) {
477 self.message.body.set_field(tag::CANCELLATION_RIGHTS, FIXString::from(v));
478 }
479
480 pub fn get_cancellation_rights(&self) -> Result<String, MessageRejectErrorEnum> {
482 let mut fld = field::CancellationRightsField::new(String::new());
483 self.message.body.get_field(tag::CANCELLATION_RIGHTS, &mut fld.0)?;
484 Ok(fld.value().to_string())
485 }
486
487
488 pub fn has_cancellation_rights(&self) -> bool {
490 self.message.body.has(tag::CANCELLATION_RIGHTS)
491 }
492
493
494
495
496 pub fn set_cash_margin(&mut self, v: String) {
498 self.message.body.set_field(tag::CASH_MARGIN, FIXString::from(v));
499 }
500
501 pub fn get_cash_margin(&self) -> Result<String, MessageRejectErrorEnum> {
503 let mut fld = field::CashMarginField::new(String::new());
504 self.message.body.get_field(tag::CASH_MARGIN, &mut fld.0)?;
505 Ok(fld.value().to_string())
506 }
507
508
509 pub fn has_cash_margin(&self) -> bool {
511 self.message.body.has(tag::CASH_MARGIN)
512 }
513
514
515
516
517 pub fn set_cash_order_qty(&mut self, val: Decimal, scale: i32) {
519 self.message.body.set_field(tag::CASH_ORDER_QTY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
520 }
521
522 pub fn get_cash_order_qty(&self) -> Result<Decimal, MessageRejectErrorEnum> {
524 let mut fld = field::CashOrderQtyField::new(Decimal::ZERO, 0);
525 self.message.body.get_field(tag::CASH_ORDER_QTY, &mut fld.0)?;
526 Ok(fld.value())
527 }
528
529
530 pub fn has_cash_order_qty(&self) -> bool {
532 self.message.body.has(tag::CASH_ORDER_QTY)
533 }
534
535
536
537
538 pub fn set_cl_ord_id(&mut self, v: String) {
540 self.message.body.set_field(tag::CL_ORD_ID, FIXString::from(v));
541 }
542
543 pub fn get_cl_ord_id(&self) -> Result<String, MessageRejectErrorEnum> {
545 let mut fld = field::ClOrdIDField::new(String::new());
546 self.message.body.get_field(tag::CL_ORD_ID, &mut fld.0)?;
547 Ok(fld.value().to_string())
548 }
549
550
551 pub fn has_cl_ord_id(&self) -> bool {
553 self.message.body.has(tag::CL_ORD_ID)
554 }
555
556
557
558
559 pub fn set_cl_ord_link_id(&mut self, v: String) {
561 self.message.body.set_field(tag::CL_ORD_LINK_ID, FIXString::from(v));
562 }
563
564 pub fn get_cl_ord_link_id(&self) -> Result<String, MessageRejectErrorEnum> {
566 let mut fld = field::ClOrdLinkIDField::new(String::new());
567 self.message.body.get_field(tag::CL_ORD_LINK_ID, &mut fld.0)?;
568 Ok(fld.value().to_string())
569 }
570
571
572 pub fn has_cl_ord_link_id(&self) -> bool {
574 self.message.body.has(tag::CL_ORD_LINK_ID)
575 }
576
577
578
579
580 pub fn set_clearing_fee_indicator(&mut self, v: String) {
582 self.message.body.set_field(tag::CLEARING_FEE_INDICATOR, FIXString::from(v));
583 }
584
585 pub fn get_clearing_fee_indicator(&self) -> Result<String, MessageRejectErrorEnum> {
587 let mut fld = field::ClearingFeeIndicatorField::new(String::new());
588 self.message.body.get_field(tag::CLEARING_FEE_INDICATOR, &mut fld.0)?;
589 Ok(fld.value().to_string())
590 }
591
592
593 pub fn has_clearing_fee_indicator(&self) -> bool {
595 self.message.body.has(tag::CLEARING_FEE_INDICATOR)
596 }
597
598
599
600
601 pub fn set_comm_currency(&mut self, v: String) {
603 self.message.body.set_field(tag::COMM_CURRENCY, FIXString::from(v));
604 }
605
606 pub fn get_comm_currency(&self) -> Result<String, MessageRejectErrorEnum> {
608 let mut fld = field::CommCurrencyField::new(String::new());
609 self.message.body.get_field(tag::COMM_CURRENCY, &mut fld.0)?;
610 Ok(fld.value().to_string())
611 }
612
613
614 pub fn has_comm_currency(&self) -> bool {
616 self.message.body.has(tag::COMM_CURRENCY)
617 }
618
619
620
621
622 pub fn set_comm_type(&mut self, v: String) {
624 self.message.body.set_field(tag::COMM_TYPE, FIXString::from(v));
625 }
626
627 pub fn get_comm_type(&self) -> Result<String, MessageRejectErrorEnum> {
629 let mut fld = field::CommTypeField::new(String::new());
630 self.message.body.get_field(tag::COMM_TYPE, &mut fld.0)?;
631 Ok(fld.value().to_string())
632 }
633
634
635 pub fn has_comm_type(&self) -> bool {
637 self.message.body.has(tag::COMM_TYPE)
638 }
639
640
641
642
643 pub fn set_commission(&mut self, val: Decimal, scale: i32) {
645 self.message.body.set_field(tag::COMMISSION, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
646 }
647
648 pub fn get_commission(&self) -> Result<Decimal, MessageRejectErrorEnum> {
650 let mut fld = field::CommissionField::new(Decimal::ZERO, 0);
651 self.message.body.get_field(tag::COMMISSION, &mut fld.0)?;
652 Ok(fld.value())
653 }
654
655
656 pub fn has_commission(&self) -> bool {
658 self.message.body.has(tag::COMMISSION)
659 }
660
661
662
663
664 pub fn set_compliance_id(&mut self, v: String) {
666 self.message.body.set_field(tag::COMPLIANCE_ID, FIXString::from(v));
667 }
668
669 pub fn get_compliance_id(&self) -> Result<String, MessageRejectErrorEnum> {
671 let mut fld = field::ComplianceIDField::new(String::new());
672 self.message.body.get_field(tag::COMPLIANCE_ID, &mut fld.0)?;
673 Ok(fld.value().to_string())
674 }
675
676
677 pub fn has_compliance_id(&self) -> bool {
679 self.message.body.has(tag::COMPLIANCE_ID)
680 }
681
682
683
684
685 pub fn set_contract_multiplier(&mut self, val: Decimal, scale: i32) {
687 self.message.body.set_field(tag::CONTRACT_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
688 }
689
690 pub fn get_contract_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
692 let mut fld = field::ContractMultiplierField::new(Decimal::ZERO, 0);
693 self.message.body.get_field(tag::CONTRACT_MULTIPLIER, &mut fld.0)?;
694 Ok(fld.value())
695 }
696
697
698 pub fn has_contract_multiplier(&self) -> bool {
700 self.message.body.has(tag::CONTRACT_MULTIPLIER)
701 }
702
703
704
705
706 pub fn set_contract_settl_month(&mut self, v: String) {
708 self.message.body.set_field(tag::CONTRACT_SETTL_MONTH, FIXString::from(v));
709 }
710
711 pub fn get_contract_settl_month(&self) -> Result<String, MessageRejectErrorEnum> {
713 let mut fld = field::ContractSettlMonthField::new(String::new());
714 self.message.body.get_field(tag::CONTRACT_SETTL_MONTH, &mut fld.0)?;
715 Ok(fld.value().to_string())
716 }
717
718
719 pub fn has_contract_settl_month(&self) -> bool {
721 self.message.body.has(tag::CONTRACT_SETTL_MONTH)
722 }
723
724
725
726
727 pub fn set_country_of_issue(&mut self, v: String) {
729 self.message.body.set_field(tag::COUNTRY_OF_ISSUE, FIXString::from(v));
730 }
731
732 pub fn get_country_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
734 let mut fld = field::CountryOfIssueField::new(String::new());
735 self.message.body.get_field(tag::COUNTRY_OF_ISSUE, &mut fld.0)?;
736 Ok(fld.value().to_string())
737 }
738
739
740 pub fn has_country_of_issue(&self) -> bool {
742 self.message.body.has(tag::COUNTRY_OF_ISSUE)
743 }
744
745
746
747
748 pub fn set_coupon_payment_date(&mut self, v: String) {
750 self.message.body.set_field(tag::COUPON_PAYMENT_DATE, FIXString::from(v));
751 }
752
753 pub fn get_coupon_payment_date(&self) -> Result<String, MessageRejectErrorEnum> {
755 let mut fld = field::CouponPaymentDateField::new(String::new());
756 self.message.body.get_field(tag::COUPON_PAYMENT_DATE, &mut fld.0)?;
757 Ok(fld.value().to_string())
758 }
759
760
761 pub fn has_coupon_payment_date(&self) -> bool {
763 self.message.body.has(tag::COUPON_PAYMENT_DATE)
764 }
765
766
767
768
769 pub fn set_coupon_rate(&mut self, val: Decimal, scale: i32) {
771 self.message.body.set_field(tag::COUPON_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
772 }
773
774 pub fn get_coupon_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
776 let mut fld = field::CouponRateField::new(Decimal::ZERO, 0);
777 self.message.body.get_field(tag::COUPON_RATE, &mut fld.0)?;
778 Ok(fld.value())
779 }
780
781
782 pub fn has_coupon_rate(&self) -> bool {
784 self.message.body.has(tag::COUPON_RATE)
785 }
786
787
788
789
790 pub fn set_covered_or_uncovered(&mut self, v: isize) {
792 self.message.body.set_field(tag::COVERED_OR_UNCOVERED, fixer::fix_int::FIXInt::from(v));
793 }
794
795 pub fn get_covered_or_uncovered(&self) -> Result<isize, MessageRejectErrorEnum> {
797 let mut fld = field::CoveredOrUncoveredField::new(0);
798 self.message.body.get_field(tag::COVERED_OR_UNCOVERED, &mut fld.0)?;
799 Ok(fld.value())
800 }
801
802
803 pub fn has_covered_or_uncovered(&self) -> bool {
805 self.message.body.has(tag::COVERED_OR_UNCOVERED)
806 }
807
808
809
810
811 pub fn set_credit_rating(&mut self, v: String) {
813 self.message.body.set_field(tag::CREDIT_RATING, FIXString::from(v));
814 }
815
816 pub fn get_credit_rating(&self) -> Result<String, MessageRejectErrorEnum> {
818 let mut fld = field::CreditRatingField::new(String::new());
819 self.message.body.get_field(tag::CREDIT_RATING, &mut fld.0)?;
820 Ok(fld.value().to_string())
821 }
822
823
824 pub fn has_credit_rating(&self) -> bool {
826 self.message.body.has(tag::CREDIT_RATING)
827 }
828
829
830
831
832 pub fn set_currency(&mut self, v: String) {
834 self.message.body.set_field(tag::CURRENCY, FIXString::from(v));
835 }
836
837 pub fn get_currency(&self) -> Result<String, MessageRejectErrorEnum> {
839 let mut fld = field::CurrencyField::new(String::new());
840 self.message.body.get_field(tag::CURRENCY, &mut fld.0)?;
841 Ok(fld.value().to_string())
842 }
843
844
845 pub fn has_currency(&self) -> bool {
847 self.message.body.has(tag::CURRENCY)
848 }
849
850
851
852
853 pub fn set_cust_order_capacity(&mut self, v: isize) {
855 self.message.body.set_field(tag::CUST_ORDER_CAPACITY, fixer::fix_int::FIXInt::from(v));
856 }
857
858 pub fn get_cust_order_capacity(&self) -> Result<isize, MessageRejectErrorEnum> {
860 let mut fld = field::CustOrderCapacityField::new(0);
861 self.message.body.get_field(tag::CUST_ORDER_CAPACITY, &mut fld.0)?;
862 Ok(fld.value())
863 }
864
865
866 pub fn has_cust_order_capacity(&self) -> bool {
868 self.message.body.has(tag::CUST_ORDER_CAPACITY)
869 }
870
871
872
873
874 pub fn set_dated_date(&mut self, v: String) {
876 self.message.body.set_field(tag::DATED_DATE, FIXString::from(v));
877 }
878
879 pub fn get_dated_date(&self) -> Result<String, MessageRejectErrorEnum> {
881 let mut fld = field::DatedDateField::new(String::new());
882 self.message.body.get_field(tag::DATED_DATE, &mut fld.0)?;
883 Ok(fld.value().to_string())
884 }
885
886
887 pub fn has_dated_date(&self) -> bool {
889 self.message.body.has(tag::DATED_DATE)
890 }
891
892
893
894
895 pub fn set_day_booking_inst(&mut self, v: String) {
897 self.message.body.set_field(tag::DAY_BOOKING_INST, FIXString::from(v));
898 }
899
900 pub fn get_day_booking_inst(&self) -> Result<String, MessageRejectErrorEnum> {
902 let mut fld = field::DayBookingInstField::new(String::new());
903 self.message.body.get_field(tag::DAY_BOOKING_INST, &mut fld.0)?;
904 Ok(fld.value().to_string())
905 }
906
907
908 pub fn has_day_booking_inst(&self) -> bool {
910 self.message.body.has(tag::DAY_BOOKING_INST)
911 }
912
913
914
915
916 pub fn set_delivery_type(&mut self, v: isize) {
918 self.message.body.set_field(tag::DELIVERY_TYPE, fixer::fix_int::FIXInt::from(v));
919 }
920
921 pub fn get_delivery_type(&self) -> Result<isize, MessageRejectErrorEnum> {
923 let mut fld = field::DeliveryTypeField::new(0);
924 self.message.body.get_field(tag::DELIVERY_TYPE, &mut fld.0)?;
925 Ok(fld.value())
926 }
927
928
929 pub fn has_delivery_type(&self) -> bool {
931 self.message.body.has(tag::DELIVERY_TYPE)
932 }
933
934
935
936
937 pub fn set_designation(&mut self, v: String) {
939 self.message.body.set_field(tag::DESIGNATION, FIXString::from(v));
940 }
941
942 pub fn get_designation(&self) -> Result<String, MessageRejectErrorEnum> {
944 let mut fld = field::DesignationField::new(String::new());
945 self.message.body.get_field(tag::DESIGNATION, &mut fld.0)?;
946 Ok(fld.value().to_string())
947 }
948
949
950 pub fn has_designation(&self) -> bool {
952 self.message.body.has(tag::DESIGNATION)
953 }
954
955
956
957
958 pub fn set_discretion_inst(&mut self, v: String) {
960 self.message.body.set_field(tag::DISCRETION_INST, FIXString::from(v));
961 }
962
963 pub fn get_discretion_inst(&self) -> Result<String, MessageRejectErrorEnum> {
965 let mut fld = field::DiscretionInstField::new(String::new());
966 self.message.body.get_field(tag::DISCRETION_INST, &mut fld.0)?;
967 Ok(fld.value().to_string())
968 }
969
970
971 pub fn has_discretion_inst(&self) -> bool {
973 self.message.body.has(tag::DISCRETION_INST)
974 }
975
976
977
978
979 pub fn set_discretion_limit_type(&mut self, v: isize) {
981 self.message.body.set_field(tag::DISCRETION_LIMIT_TYPE, fixer::fix_int::FIXInt::from(v));
982 }
983
984 pub fn get_discretion_limit_type(&self) -> Result<isize, MessageRejectErrorEnum> {
986 let mut fld = field::DiscretionLimitTypeField::new(0);
987 self.message.body.get_field(tag::DISCRETION_LIMIT_TYPE, &mut fld.0)?;
988 Ok(fld.value())
989 }
990
991
992 pub fn has_discretion_limit_type(&self) -> bool {
994 self.message.body.has(tag::DISCRETION_LIMIT_TYPE)
995 }
996
997
998
999
1000 pub fn set_discretion_move_type(&mut self, v: isize) {
1002 self.message.body.set_field(tag::DISCRETION_MOVE_TYPE, fixer::fix_int::FIXInt::from(v));
1003 }
1004
1005 pub fn get_discretion_move_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1007 let mut fld = field::DiscretionMoveTypeField::new(0);
1008 self.message.body.get_field(tag::DISCRETION_MOVE_TYPE, &mut fld.0)?;
1009 Ok(fld.value())
1010 }
1011
1012
1013 pub fn has_discretion_move_type(&self) -> bool {
1015 self.message.body.has(tag::DISCRETION_MOVE_TYPE)
1016 }
1017
1018
1019
1020
1021 pub fn set_discretion_offset_type(&mut self, v: isize) {
1023 self.message.body.set_field(tag::DISCRETION_OFFSET_TYPE, fixer::fix_int::FIXInt::from(v));
1024 }
1025
1026 pub fn get_discretion_offset_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1028 let mut fld = field::DiscretionOffsetTypeField::new(0);
1029 self.message.body.get_field(tag::DISCRETION_OFFSET_TYPE, &mut fld.0)?;
1030 Ok(fld.value())
1031 }
1032
1033
1034 pub fn has_discretion_offset_type(&self) -> bool {
1036 self.message.body.has(tag::DISCRETION_OFFSET_TYPE)
1037 }
1038
1039
1040
1041
1042 pub fn set_discretion_offset_value(&mut self, val: Decimal, scale: i32) {
1044 self.message.body.set_field(tag::DISCRETION_OFFSET_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1045 }
1046
1047 pub fn get_discretion_offset_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1049 let mut fld = field::DiscretionOffsetValueField::new(Decimal::ZERO, 0);
1050 self.message.body.get_field(tag::DISCRETION_OFFSET_VALUE, &mut fld.0)?;
1051 Ok(fld.value())
1052 }
1053
1054
1055 pub fn has_discretion_offset_value(&self) -> bool {
1057 self.message.body.has(tag::DISCRETION_OFFSET_VALUE)
1058 }
1059
1060
1061
1062
1063 pub fn set_discretion_round_direction(&mut self, v: isize) {
1065 self.message.body.set_field(tag::DISCRETION_ROUND_DIRECTION, fixer::fix_int::FIXInt::from(v));
1066 }
1067
1068 pub fn get_discretion_round_direction(&self) -> Result<isize, MessageRejectErrorEnum> {
1070 let mut fld = field::DiscretionRoundDirectionField::new(0);
1071 self.message.body.get_field(tag::DISCRETION_ROUND_DIRECTION, &mut fld.0)?;
1072 Ok(fld.value())
1073 }
1074
1075
1076 pub fn has_discretion_round_direction(&self) -> bool {
1078 self.message.body.has(tag::DISCRETION_ROUND_DIRECTION)
1079 }
1080
1081
1082
1083
1084 pub fn set_discretion_scope(&mut self, v: isize) {
1086 self.message.body.set_field(tag::DISCRETION_SCOPE, fixer::fix_int::FIXInt::from(v));
1087 }
1088
1089 pub fn get_discretion_scope(&self) -> Result<isize, MessageRejectErrorEnum> {
1091 let mut fld = field::DiscretionScopeField::new(0);
1092 self.message.body.get_field(tag::DISCRETION_SCOPE, &mut fld.0)?;
1093 Ok(fld.value())
1094 }
1095
1096
1097 pub fn has_discretion_scope(&self) -> bool {
1099 self.message.body.has(tag::DISCRETION_SCOPE)
1100 }
1101
1102
1103
1104
1105 pub fn set_effective_time(&mut self, v: Timestamp) {
1107 self.message.body.set_field(tag::EFFECTIVE_TIME, fixer::fix_utc_timestamp::FIXUTCTimestamp {
1108 time: v,
1109 precision: fixer::fix_utc_timestamp::TimestampPrecision::Millis,
1110 });
1111 }
1112
1113 pub fn get_effective_time(&self) -> Result<Timestamp, MessageRejectErrorEnum> {
1115 let mut fld = field::EffectiveTimeField::new(Timestamp::UNIX_EPOCH);
1116 self.message.body.get_field(tag::EFFECTIVE_TIME, &mut fld.0)?;
1117 Ok(fld.value())
1118 }
1119
1120
1121 pub fn has_effective_time(&self) -> bool {
1123 self.message.body.has(tag::EFFECTIVE_TIME)
1124 }
1125
1126
1127
1128
1129 pub fn set_encoded_issuer(&mut self, v: String) {
1131 self.message.body.set_field(tag::ENCODED_ISSUER, FIXString::from(v));
1132 }
1133
1134 pub fn get_encoded_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
1136 let mut fld = field::EncodedIssuerField::new(String::new());
1137 self.message.body.get_field(tag::ENCODED_ISSUER, &mut fld.0)?;
1138 Ok(fld.value().to_string())
1139 }
1140
1141
1142 pub fn has_encoded_issuer(&self) -> bool {
1144 self.message.body.has(tag::ENCODED_ISSUER)
1145 }
1146
1147
1148
1149
1150 pub fn set_encoded_issuer_len(&mut self, v: isize) {
1152 self.message.body.set_field(tag::ENCODED_ISSUER_LEN, fixer::fix_int::FIXInt::from(v));
1153 }
1154
1155 pub fn get_encoded_issuer_len(&self) -> Result<isize, MessageRejectErrorEnum> {
1157 let mut fld = field::EncodedIssuerLenField::new(0);
1158 self.message.body.get_field(tag::ENCODED_ISSUER_LEN, &mut fld.0)?;
1159 Ok(fld.value())
1160 }
1161
1162
1163 pub fn has_encoded_issuer_len(&self) -> bool {
1165 self.message.body.has(tag::ENCODED_ISSUER_LEN)
1166 }
1167
1168
1169
1170
1171 pub fn set_encoded_security_desc(&mut self, v: String) {
1173 self.message.body.set_field(tag::ENCODED_SECURITY_DESC, FIXString::from(v));
1174 }
1175
1176 pub fn get_encoded_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
1178 let mut fld = field::EncodedSecurityDescField::new(String::new());
1179 self.message.body.get_field(tag::ENCODED_SECURITY_DESC, &mut fld.0)?;
1180 Ok(fld.value().to_string())
1181 }
1182
1183
1184 pub fn has_encoded_security_desc(&self) -> bool {
1186 self.message.body.has(tag::ENCODED_SECURITY_DESC)
1187 }
1188
1189
1190
1191
1192 pub fn set_encoded_security_desc_len(&mut self, v: isize) {
1194 self.message.body.set_field(tag::ENCODED_SECURITY_DESC_LEN, fixer::fix_int::FIXInt::from(v));
1195 }
1196
1197 pub fn get_encoded_security_desc_len(&self) -> Result<isize, MessageRejectErrorEnum> {
1199 let mut fld = field::EncodedSecurityDescLenField::new(0);
1200 self.message.body.get_field(tag::ENCODED_SECURITY_DESC_LEN, &mut fld.0)?;
1201 Ok(fld.value())
1202 }
1203
1204
1205 pub fn has_encoded_security_desc_len(&self) -> bool {
1207 self.message.body.has(tag::ENCODED_SECURITY_DESC_LEN)
1208 }
1209
1210
1211
1212
1213 pub fn set_encoded_text(&mut self, v: String) {
1215 self.message.body.set_field(tag::ENCODED_TEXT, FIXString::from(v));
1216 }
1217
1218 pub fn get_encoded_text(&self) -> Result<String, MessageRejectErrorEnum> {
1220 let mut fld = field::EncodedTextField::new(String::new());
1221 self.message.body.get_field(tag::ENCODED_TEXT, &mut fld.0)?;
1222 Ok(fld.value().to_string())
1223 }
1224
1225
1226 pub fn has_encoded_text(&self) -> bool {
1228 self.message.body.has(tag::ENCODED_TEXT)
1229 }
1230
1231
1232
1233
1234 pub fn set_encoded_text_len(&mut self, v: isize) {
1236 self.message.body.set_field(tag::ENCODED_TEXT_LEN, fixer::fix_int::FIXInt::from(v));
1237 }
1238
1239 pub fn get_encoded_text_len(&self) -> Result<isize, MessageRejectErrorEnum> {
1241 let mut fld = field::EncodedTextLenField::new(0);
1242 self.message.body.get_field(tag::ENCODED_TEXT_LEN, &mut fld.0)?;
1243 Ok(fld.value())
1244 }
1245
1246
1247 pub fn has_encoded_text_len(&self) -> bool {
1249 self.message.body.has(tag::ENCODED_TEXT_LEN)
1250 }
1251
1252
1253
1254
1255 pub fn set_end_date(&mut self, v: String) {
1257 self.message.body.set_field(tag::END_DATE, FIXString::from(v));
1258 }
1259
1260 pub fn get_end_date(&self) -> Result<String, MessageRejectErrorEnum> {
1262 let mut fld = field::EndDateField::new(String::new());
1263 self.message.body.get_field(tag::END_DATE, &mut fld.0)?;
1264 Ok(fld.value().to_string())
1265 }
1266
1267
1268 pub fn has_end_date(&self) -> bool {
1270 self.message.body.has(tag::END_DATE)
1271 }
1272
1273
1274
1275
1276 pub fn set_ex_destination(&mut self, v: String) {
1278 self.message.body.set_field(tag::EX_DESTINATION, FIXString::from(v));
1279 }
1280
1281 pub fn get_ex_destination(&self) -> Result<String, MessageRejectErrorEnum> {
1283 let mut fld = field::ExDestinationField::new(String::new());
1284 self.message.body.get_field(tag::EX_DESTINATION, &mut fld.0)?;
1285 Ok(fld.value().to_string())
1286 }
1287
1288
1289 pub fn has_ex_destination(&self) -> bool {
1291 self.message.body.has(tag::EX_DESTINATION)
1292 }
1293
1294
1295
1296
1297 pub fn set_exec_inst(&mut self, v: String) {
1299 self.message.body.set_field(tag::EXEC_INST, FIXString::from(v));
1300 }
1301
1302 pub fn get_exec_inst(&self) -> Result<String, MessageRejectErrorEnum> {
1304 let mut fld = field::ExecInstField::new(String::new());
1305 self.message.body.get_field(tag::EXEC_INST, &mut fld.0)?;
1306 Ok(fld.value().to_string())
1307 }
1308
1309
1310 pub fn has_exec_inst(&self) -> bool {
1312 self.message.body.has(tag::EXEC_INST)
1313 }
1314
1315
1316
1317
1318 pub fn set_expire_date(&mut self, v: String) {
1320 self.message.body.set_field(tag::EXPIRE_DATE, FIXString::from(v));
1321 }
1322
1323 pub fn get_expire_date(&self) -> Result<String, MessageRejectErrorEnum> {
1325 let mut fld = field::ExpireDateField::new(String::new());
1326 self.message.body.get_field(tag::EXPIRE_DATE, &mut fld.0)?;
1327 Ok(fld.value().to_string())
1328 }
1329
1330
1331 pub fn has_expire_date(&self) -> bool {
1333 self.message.body.has(tag::EXPIRE_DATE)
1334 }
1335
1336
1337
1338
1339 pub fn set_expire_time(&mut self, v: Timestamp) {
1341 self.message.body.set_field(tag::EXPIRE_TIME, fixer::fix_utc_timestamp::FIXUTCTimestamp {
1342 time: v,
1343 precision: fixer::fix_utc_timestamp::TimestampPrecision::Millis,
1344 });
1345 }
1346
1347 pub fn get_expire_time(&self) -> Result<Timestamp, MessageRejectErrorEnum> {
1349 let mut fld = field::ExpireTimeField::new(Timestamp::UNIX_EPOCH);
1350 self.message.body.get_field(tag::EXPIRE_TIME, &mut fld.0)?;
1351 Ok(fld.value())
1352 }
1353
1354
1355 pub fn has_expire_time(&self) -> bool {
1357 self.message.body.has(tag::EXPIRE_TIME)
1358 }
1359
1360
1361
1362
1363 pub fn set_factor(&mut self, val: Decimal, scale: i32) {
1365 self.message.body.set_field(tag::FACTOR, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1366 }
1367
1368 pub fn get_factor(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1370 let mut fld = field::FactorField::new(Decimal::ZERO, 0);
1371 self.message.body.get_field(tag::FACTOR, &mut fld.0)?;
1372 Ok(fld.value())
1373 }
1374
1375
1376 pub fn has_factor(&self) -> bool {
1378 self.message.body.has(tag::FACTOR)
1379 }
1380
1381
1382
1383
1384 pub fn set_forex_req(&mut self, v: bool) {
1386 self.message.body.set_field(tag::FOREX_REQ, fixer::fix_boolean::FIXBoolean::from(v));
1387 }
1388
1389 pub fn get_forex_req(&self) -> Result<bool, MessageRejectErrorEnum> {
1391 let mut fld = field::ForexReqField::new(false);
1392 self.message.body.get_field(tag::FOREX_REQ, &mut fld.0)?;
1393 Ok(fld.value())
1394 }
1395
1396
1397 pub fn has_forex_req(&self) -> bool {
1399 self.message.body.has(tag::FOREX_REQ)
1400 }
1401
1402
1403
1404
1405 pub fn set_fund_renew_waiv(&mut self, v: String) {
1407 self.message.body.set_field(tag::FUND_RENEW_WAIV, FIXString::from(v));
1408 }
1409
1410 pub fn get_fund_renew_waiv(&self) -> Result<String, MessageRejectErrorEnum> {
1412 let mut fld = field::FundRenewWaivField::new(String::new());
1413 self.message.body.get_field(tag::FUND_RENEW_WAIV, &mut fld.0)?;
1414 Ok(fld.value().to_string())
1415 }
1416
1417
1418 pub fn has_fund_renew_waiv(&self) -> bool {
1420 self.message.body.has(tag::FUND_RENEW_WAIV)
1421 }
1422
1423
1424
1425
1426 pub fn set_gt_booking_inst(&mut self, v: isize) {
1428 self.message.body.set_field(tag::GT_BOOKING_INST, fixer::fix_int::FIXInt::from(v));
1429 }
1430
1431 pub fn get_gt_booking_inst(&self) -> Result<isize, MessageRejectErrorEnum> {
1433 let mut fld = field::GTBookingInstField::new(0);
1434 self.message.body.get_field(tag::GT_BOOKING_INST, &mut fld.0)?;
1435 Ok(fld.value())
1436 }
1437
1438
1439 pub fn has_gt_booking_inst(&self) -> bool {
1441 self.message.body.has(tag::GT_BOOKING_INST)
1442 }
1443
1444
1445
1446
1447 pub fn set_handl_inst(&mut self, v: String) {
1449 self.message.body.set_field(tag::HANDL_INST, FIXString::from(v));
1450 }
1451
1452 pub fn get_handl_inst(&self) -> Result<String, MessageRejectErrorEnum> {
1454 let mut fld = field::HandlInstField::new(String::new());
1455 self.message.body.get_field(tag::HANDL_INST, &mut fld.0)?;
1456 Ok(fld.value().to_string())
1457 }
1458
1459
1460 pub fn has_handl_inst(&self) -> bool {
1462 self.message.body.has(tag::HANDL_INST)
1463 }
1464
1465
1466
1467
1468 pub fn set_ioiid(&mut self, v: String) {
1470 self.message.body.set_field(tag::IOIID, FIXString::from(v));
1471 }
1472
1473 pub fn get_ioiid(&self) -> Result<String, MessageRejectErrorEnum> {
1475 let mut fld = field::IOIIDField::new(String::new());
1476 self.message.body.get_field(tag::IOIID, &mut fld.0)?;
1477 Ok(fld.value().to_string())
1478 }
1479
1480
1481 pub fn has_ioiid(&self) -> bool {
1483 self.message.body.has(tag::IOIID)
1484 }
1485
1486
1487
1488
1489 pub fn set_instr_registry(&mut self, v: String) {
1491 self.message.body.set_field(tag::INSTR_REGISTRY, FIXString::from(v));
1492 }
1493
1494 pub fn get_instr_registry(&self) -> Result<String, MessageRejectErrorEnum> {
1496 let mut fld = field::InstrRegistryField::new(String::new());
1497 self.message.body.get_field(tag::INSTR_REGISTRY, &mut fld.0)?;
1498 Ok(fld.value().to_string())
1499 }
1500
1501
1502 pub fn has_instr_registry(&self) -> bool {
1504 self.message.body.has(tag::INSTR_REGISTRY)
1505 }
1506
1507
1508
1509
1510 pub fn set_interest_accrual_date(&mut self, v: String) {
1512 self.message.body.set_field(tag::INTEREST_ACCRUAL_DATE, FIXString::from(v));
1513 }
1514
1515 pub fn get_interest_accrual_date(&self) -> Result<String, MessageRejectErrorEnum> {
1517 let mut fld = field::InterestAccrualDateField::new(String::new());
1518 self.message.body.get_field(tag::INTEREST_ACCRUAL_DATE, &mut fld.0)?;
1519 Ok(fld.value().to_string())
1520 }
1521
1522
1523 pub fn has_interest_accrual_date(&self) -> bool {
1525 self.message.body.has(tag::INTEREST_ACCRUAL_DATE)
1526 }
1527
1528
1529
1530
1531 pub fn set_issue_date(&mut self, v: String) {
1533 self.message.body.set_field(tag::ISSUE_DATE, FIXString::from(v));
1534 }
1535
1536 pub fn get_issue_date(&self) -> Result<String, MessageRejectErrorEnum> {
1538 let mut fld = field::IssueDateField::new(String::new());
1539 self.message.body.get_field(tag::ISSUE_DATE, &mut fld.0)?;
1540 Ok(fld.value().to_string())
1541 }
1542
1543
1544 pub fn has_issue_date(&self) -> bool {
1546 self.message.body.has(tag::ISSUE_DATE)
1547 }
1548
1549
1550
1551
1552 pub fn set_issuer(&mut self, v: String) {
1554 self.message.body.set_field(tag::ISSUER, FIXString::from(v));
1555 }
1556
1557 pub fn get_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
1559 let mut fld = field::IssuerField::new(String::new());
1560 self.message.body.get_field(tag::ISSUER, &mut fld.0)?;
1561 Ok(fld.value().to_string())
1562 }
1563
1564
1565 pub fn has_issuer(&self) -> bool {
1567 self.message.body.has(tag::ISSUER)
1568 }
1569
1570
1571
1572
1573 pub fn set_locale_of_issue(&mut self, v: String) {
1575 self.message.body.set_field(tag::LOCALE_OF_ISSUE, FIXString::from(v));
1576 }
1577
1578 pub fn get_locale_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
1580 let mut fld = field::LocaleOfIssueField::new(String::new());
1581 self.message.body.get_field(tag::LOCALE_OF_ISSUE, &mut fld.0)?;
1582 Ok(fld.value().to_string())
1583 }
1584
1585
1586 pub fn has_locale_of_issue(&self) -> bool {
1588 self.message.body.has(tag::LOCALE_OF_ISSUE)
1589 }
1590
1591
1592
1593
1594 pub fn set_locate_reqd(&mut self, v: bool) {
1596 self.message.body.set_field(tag::LOCATE_REQD, fixer::fix_boolean::FIXBoolean::from(v));
1597 }
1598
1599 pub fn get_locate_reqd(&self) -> Result<bool, MessageRejectErrorEnum> {
1601 let mut fld = field::LocateReqdField::new(false);
1602 self.message.body.get_field(tag::LOCATE_REQD, &mut fld.0)?;
1603 Ok(fld.value())
1604 }
1605
1606
1607 pub fn has_locate_reqd(&self) -> bool {
1609 self.message.body.has(tag::LOCATE_REQD)
1610 }
1611
1612
1613
1614
1615 pub fn set_margin_ratio(&mut self, val: Decimal, scale: i32) {
1617 self.message.body.set_field(tag::MARGIN_RATIO, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1618 }
1619
1620 pub fn get_margin_ratio(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1622 let mut fld = field::MarginRatioField::new(Decimal::ZERO, 0);
1623 self.message.body.get_field(tag::MARGIN_RATIO, &mut fld.0)?;
1624 Ok(fld.value())
1625 }
1626
1627
1628 pub fn has_margin_ratio(&self) -> bool {
1630 self.message.body.has(tag::MARGIN_RATIO)
1631 }
1632
1633
1634
1635
1636 pub fn set_maturity_date(&mut self, v: String) {
1638 self.message.body.set_field(tag::MATURITY_DATE, FIXString::from(v));
1639 }
1640
1641 pub fn get_maturity_date(&self) -> Result<String, MessageRejectErrorEnum> {
1643 let mut fld = field::MaturityDateField::new(String::new());
1644 self.message.body.get_field(tag::MATURITY_DATE, &mut fld.0)?;
1645 Ok(fld.value().to_string())
1646 }
1647
1648
1649 pub fn has_maturity_date(&self) -> bool {
1651 self.message.body.has(tag::MATURITY_DATE)
1652 }
1653
1654
1655
1656
1657 pub fn set_maturity_month_year(&mut self, v: String) {
1659 self.message.body.set_field(tag::MATURITY_MONTH_YEAR, FIXString::from(v));
1660 }
1661
1662 pub fn get_maturity_month_year(&self) -> Result<String, MessageRejectErrorEnum> {
1664 let mut fld = field::MaturityMonthYearField::new(String::new());
1665 self.message.body.get_field(tag::MATURITY_MONTH_YEAR, &mut fld.0)?;
1666 Ok(fld.value().to_string())
1667 }
1668
1669
1670 pub fn has_maturity_month_year(&self) -> bool {
1672 self.message.body.has(tag::MATURITY_MONTH_YEAR)
1673 }
1674
1675
1676
1677
1678 pub fn set_max_floor(&mut self, val: Decimal, scale: i32) {
1680 self.message.body.set_field(tag::MAX_FLOOR, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1681 }
1682
1683 pub fn get_max_floor(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1685 let mut fld = field::MaxFloorField::new(Decimal::ZERO, 0);
1686 self.message.body.get_field(tag::MAX_FLOOR, &mut fld.0)?;
1687 Ok(fld.value())
1688 }
1689
1690
1691 pub fn has_max_floor(&self) -> bool {
1693 self.message.body.has(tag::MAX_FLOOR)
1694 }
1695
1696
1697
1698
1699 pub fn set_max_show(&mut self, val: Decimal, scale: i32) {
1701 self.message.body.set_field(tag::MAX_SHOW, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1702 }
1703
1704 pub fn get_max_show(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1706 let mut fld = field::MaxShowField::new(Decimal::ZERO, 0);
1707 self.message.body.get_field(tag::MAX_SHOW, &mut fld.0)?;
1708 Ok(fld.value())
1709 }
1710
1711
1712 pub fn has_max_show(&self) -> bool {
1714 self.message.body.has(tag::MAX_SHOW)
1715 }
1716
1717
1718
1719
1720 pub fn set_min_qty(&mut self, val: Decimal, scale: i32) {
1722 self.message.body.set_field(tag::MIN_QTY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1723 }
1724
1725 pub fn get_min_qty(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1727 let mut fld = field::MinQtyField::new(Decimal::ZERO, 0);
1728 self.message.body.get_field(tag::MIN_QTY, &mut fld.0)?;
1729 Ok(fld.value())
1730 }
1731
1732
1733 pub fn has_min_qty(&self) -> bool {
1735 self.message.body.has(tag::MIN_QTY)
1736 }
1737
1738
1739
1740
1741 pub fn set_money_laundering_status(&mut self, v: String) {
1743 self.message.body.set_field(tag::MONEY_LAUNDERING_STATUS, FIXString::from(v));
1744 }
1745
1746 pub fn get_money_laundering_status(&self) -> Result<String, MessageRejectErrorEnum> {
1748 let mut fld = field::MoneyLaunderingStatusField::new(String::new());
1749 self.message.body.get_field(tag::MONEY_LAUNDERING_STATUS, &mut fld.0)?;
1750 Ok(fld.value().to_string())
1751 }
1752
1753
1754 pub fn has_money_laundering_status(&self) -> bool {
1756 self.message.body.has(tag::MONEY_LAUNDERING_STATUS)
1757 }
1758
1759
1760
1761
1762 pub fn set_no_allocs(&mut self, v: isize) {
1764 self.message.body.set_field(tag::NO_ALLOCS, fixer::fix_int::FIXInt::from(v));
1765 }
1766
1767 pub fn get_no_allocs(&self) -> Result<isize, MessageRejectErrorEnum> {
1769 let mut fld = field::NoAllocsField::new(0);
1770 self.message.body.get_field(tag::NO_ALLOCS, &mut fld.0)?;
1771 Ok(fld.value())
1772 }
1773
1774
1775 pub fn has_no_allocs(&self) -> bool {
1777 self.message.body.has(tag::NO_ALLOCS)
1778 }
1779
1780
1781
1782
1783 pub fn set_no_events(&mut self, v: isize) {
1785 self.message.body.set_field(tag::NO_EVENTS, fixer::fix_int::FIXInt::from(v));
1786 }
1787
1788 pub fn get_no_events(&self) -> Result<isize, MessageRejectErrorEnum> {
1790 let mut fld = field::NoEventsField::new(0);
1791 self.message.body.get_field(tag::NO_EVENTS, &mut fld.0)?;
1792 Ok(fld.value())
1793 }
1794
1795
1796 pub fn has_no_events(&self) -> bool {
1798 self.message.body.has(tag::NO_EVENTS)
1799 }
1800
1801
1802
1803
1804 pub fn set_no_party_i_ds(&mut self, v: isize) {
1806 self.message.body.set_field(tag::NO_PARTY_I_DS, fixer::fix_int::FIXInt::from(v));
1807 }
1808
1809 pub fn get_no_party_i_ds(&self) -> Result<isize, MessageRejectErrorEnum> {
1811 let mut fld = field::NoPartyIDsField::new(0);
1812 self.message.body.get_field(tag::NO_PARTY_I_DS, &mut fld.0)?;
1813 Ok(fld.value())
1814 }
1815
1816
1817 pub fn has_no_party_i_ds(&self) -> bool {
1819 self.message.body.has(tag::NO_PARTY_I_DS)
1820 }
1821
1822
1823
1824
1825 pub fn set_no_security_alt_id(&mut self, v: isize) {
1827 self.message.body.set_field(tag::NO_SECURITY_ALT_ID, fixer::fix_int::FIXInt::from(v));
1828 }
1829
1830 pub fn get_no_security_alt_id(&self) -> Result<isize, MessageRejectErrorEnum> {
1832 let mut fld = field::NoSecurityAltIDField::new(0);
1833 self.message.body.get_field(tag::NO_SECURITY_ALT_ID, &mut fld.0)?;
1834 Ok(fld.value())
1835 }
1836
1837
1838 pub fn has_no_security_alt_id(&self) -> bool {
1840 self.message.body.has(tag::NO_SECURITY_ALT_ID)
1841 }
1842
1843
1844
1845
1846 pub fn set_no_stipulations(&mut self, v: isize) {
1848 self.message.body.set_field(tag::NO_STIPULATIONS, fixer::fix_int::FIXInt::from(v));
1849 }
1850
1851 pub fn get_no_stipulations(&self) -> Result<isize, MessageRejectErrorEnum> {
1853 let mut fld = field::NoStipulationsField::new(0);
1854 self.message.body.get_field(tag::NO_STIPULATIONS, &mut fld.0)?;
1855 Ok(fld.value())
1856 }
1857
1858
1859 pub fn has_no_stipulations(&self) -> bool {
1861 self.message.body.has(tag::NO_STIPULATIONS)
1862 }
1863
1864
1865
1866
1867 pub fn set_no_trading_sessions(&mut self, v: isize) {
1869 self.message.body.set_field(tag::NO_TRADING_SESSIONS, fixer::fix_int::FIXInt::from(v));
1870 }
1871
1872 pub fn get_no_trading_sessions(&self) -> Result<isize, MessageRejectErrorEnum> {
1874 let mut fld = field::NoTradingSessionsField::new(0);
1875 self.message.body.get_field(tag::NO_TRADING_SESSIONS, &mut fld.0)?;
1876 Ok(fld.value())
1877 }
1878
1879
1880 pub fn has_no_trading_sessions(&self) -> bool {
1882 self.message.body.has(tag::NO_TRADING_SESSIONS)
1883 }
1884
1885
1886
1887
1888 pub fn set_no_underlyings(&mut self, v: isize) {
1890 self.message.body.set_field(tag::NO_UNDERLYINGS, fixer::fix_int::FIXInt::from(v));
1891 }
1892
1893 pub fn get_no_underlyings(&self) -> Result<isize, MessageRejectErrorEnum> {
1895 let mut fld = field::NoUnderlyingsField::new(0);
1896 self.message.body.get_field(tag::NO_UNDERLYINGS, &mut fld.0)?;
1897 Ok(fld.value())
1898 }
1899
1900
1901 pub fn has_no_underlyings(&self) -> bool {
1903 self.message.body.has(tag::NO_UNDERLYINGS)
1904 }
1905
1906
1907
1908
1909 pub fn set_opt_attribute(&mut self, v: String) {
1911 self.message.body.set_field(tag::OPT_ATTRIBUTE, FIXString::from(v));
1912 }
1913
1914 pub fn get_opt_attribute(&self) -> Result<String, MessageRejectErrorEnum> {
1916 let mut fld = field::OptAttributeField::new(String::new());
1917 self.message.body.get_field(tag::OPT_ATTRIBUTE, &mut fld.0)?;
1918 Ok(fld.value().to_string())
1919 }
1920
1921
1922 pub fn has_opt_attribute(&self) -> bool {
1924 self.message.body.has(tag::OPT_ATTRIBUTE)
1925 }
1926
1927
1928
1929
1930 pub fn set_ord_type(&mut self, v: String) {
1932 self.message.body.set_field(tag::ORD_TYPE, FIXString::from(v));
1933 }
1934
1935 pub fn get_ord_type(&self) -> Result<String, MessageRejectErrorEnum> {
1937 let mut fld = field::OrdTypeField::new(String::new());
1938 self.message.body.get_field(tag::ORD_TYPE, &mut fld.0)?;
1939 Ok(fld.value().to_string())
1940 }
1941
1942
1943 pub fn has_ord_type(&self) -> bool {
1945 self.message.body.has(tag::ORD_TYPE)
1946 }
1947
1948
1949
1950
1951 pub fn set_order_capacity(&mut self, v: String) {
1953 self.message.body.set_field(tag::ORDER_CAPACITY, FIXString::from(v));
1954 }
1955
1956 pub fn get_order_capacity(&self) -> Result<String, MessageRejectErrorEnum> {
1958 let mut fld = field::OrderCapacityField::new(String::new());
1959 self.message.body.get_field(tag::ORDER_CAPACITY, &mut fld.0)?;
1960 Ok(fld.value().to_string())
1961 }
1962
1963
1964 pub fn has_order_capacity(&self) -> bool {
1966 self.message.body.has(tag::ORDER_CAPACITY)
1967 }
1968
1969
1970
1971
1972 pub fn set_order_percent(&mut self, val: Decimal, scale: i32) {
1974 self.message.body.set_field(tag::ORDER_PERCENT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1975 }
1976
1977 pub fn get_order_percent(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1979 let mut fld = field::OrderPercentField::new(Decimal::ZERO, 0);
1980 self.message.body.get_field(tag::ORDER_PERCENT, &mut fld.0)?;
1981 Ok(fld.value())
1982 }
1983
1984
1985 pub fn has_order_percent(&self) -> bool {
1987 self.message.body.has(tag::ORDER_PERCENT)
1988 }
1989
1990
1991
1992
1993 pub fn set_order_qty(&mut self, val: Decimal, scale: i32) {
1995 self.message.body.set_field(tag::ORDER_QTY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1996 }
1997
1998 pub fn get_order_qty(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2000 let mut fld = field::OrderQtyField::new(Decimal::ZERO, 0);
2001 self.message.body.get_field(tag::ORDER_QTY, &mut fld.0)?;
2002 Ok(fld.value())
2003 }
2004
2005
2006 pub fn has_order_qty(&self) -> bool {
2008 self.message.body.has(tag::ORDER_QTY)
2009 }
2010
2011
2012
2013
2014 pub fn set_order_qty2(&mut self, val: Decimal, scale: i32) {
2016 self.message.body.set_field(tag::ORDER_QTY2, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2017 }
2018
2019 pub fn get_order_qty2(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2021 let mut fld = field::OrderQty2Field::new(Decimal::ZERO, 0);
2022 self.message.body.get_field(tag::ORDER_QTY2, &mut fld.0)?;
2023 Ok(fld.value())
2024 }
2025
2026
2027 pub fn has_order_qty2(&self) -> bool {
2029 self.message.body.has(tag::ORDER_QTY2)
2030 }
2031
2032
2033
2034
2035 pub fn set_order_restrictions(&mut self, v: String) {
2037 self.message.body.set_field(tag::ORDER_RESTRICTIONS, FIXString::from(v));
2038 }
2039
2040 pub fn get_order_restrictions(&self) -> Result<String, MessageRejectErrorEnum> {
2042 let mut fld = field::OrderRestrictionsField::new(String::new());
2043 self.message.body.get_field(tag::ORDER_RESTRICTIONS, &mut fld.0)?;
2044 Ok(fld.value().to_string())
2045 }
2046
2047
2048 pub fn has_order_restrictions(&self) -> bool {
2050 self.message.body.has(tag::ORDER_RESTRICTIONS)
2051 }
2052
2053
2054
2055
2056 pub fn set_participation_rate(&mut self, val: Decimal, scale: i32) {
2058 self.message.body.set_field(tag::PARTICIPATION_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2059 }
2060
2061 pub fn get_participation_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2063 let mut fld = field::ParticipationRateField::new(Decimal::ZERO, 0);
2064 self.message.body.get_field(tag::PARTICIPATION_RATE, &mut fld.0)?;
2065 Ok(fld.value())
2066 }
2067
2068
2069 pub fn has_participation_rate(&self) -> bool {
2071 self.message.body.has(tag::PARTICIPATION_RATE)
2072 }
2073
2074
2075
2076
2077 pub fn set_peg_limit_type(&mut self, v: isize) {
2079 self.message.body.set_field(tag::PEG_LIMIT_TYPE, fixer::fix_int::FIXInt::from(v));
2080 }
2081
2082 pub fn get_peg_limit_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2084 let mut fld = field::PegLimitTypeField::new(0);
2085 self.message.body.get_field(tag::PEG_LIMIT_TYPE, &mut fld.0)?;
2086 Ok(fld.value())
2087 }
2088
2089
2090 pub fn has_peg_limit_type(&self) -> bool {
2092 self.message.body.has(tag::PEG_LIMIT_TYPE)
2093 }
2094
2095
2096
2097
2098 pub fn set_peg_move_type(&mut self, v: isize) {
2100 self.message.body.set_field(tag::PEG_MOVE_TYPE, fixer::fix_int::FIXInt::from(v));
2101 }
2102
2103 pub fn get_peg_move_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2105 let mut fld = field::PegMoveTypeField::new(0);
2106 self.message.body.get_field(tag::PEG_MOVE_TYPE, &mut fld.0)?;
2107 Ok(fld.value())
2108 }
2109
2110
2111 pub fn has_peg_move_type(&self) -> bool {
2113 self.message.body.has(tag::PEG_MOVE_TYPE)
2114 }
2115
2116
2117
2118
2119 pub fn set_peg_offset_type(&mut self, v: isize) {
2121 self.message.body.set_field(tag::PEG_OFFSET_TYPE, fixer::fix_int::FIXInt::from(v));
2122 }
2123
2124 pub fn get_peg_offset_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2126 let mut fld = field::PegOffsetTypeField::new(0);
2127 self.message.body.get_field(tag::PEG_OFFSET_TYPE, &mut fld.0)?;
2128 Ok(fld.value())
2129 }
2130
2131
2132 pub fn has_peg_offset_type(&self) -> bool {
2134 self.message.body.has(tag::PEG_OFFSET_TYPE)
2135 }
2136
2137
2138
2139
2140 pub fn set_peg_offset_value(&mut self, val: Decimal, scale: i32) {
2142 self.message.body.set_field(tag::PEG_OFFSET_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2143 }
2144
2145 pub fn get_peg_offset_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2147 let mut fld = field::PegOffsetValueField::new(Decimal::ZERO, 0);
2148 self.message.body.get_field(tag::PEG_OFFSET_VALUE, &mut fld.0)?;
2149 Ok(fld.value())
2150 }
2151
2152
2153 pub fn has_peg_offset_value(&self) -> bool {
2155 self.message.body.has(tag::PEG_OFFSET_VALUE)
2156 }
2157
2158
2159
2160
2161 pub fn set_peg_round_direction(&mut self, v: isize) {
2163 self.message.body.set_field(tag::PEG_ROUND_DIRECTION, fixer::fix_int::FIXInt::from(v));
2164 }
2165
2166 pub fn get_peg_round_direction(&self) -> Result<isize, MessageRejectErrorEnum> {
2168 let mut fld = field::PegRoundDirectionField::new(0);
2169 self.message.body.get_field(tag::PEG_ROUND_DIRECTION, &mut fld.0)?;
2170 Ok(fld.value())
2171 }
2172
2173
2174 pub fn has_peg_round_direction(&self) -> bool {
2176 self.message.body.has(tag::PEG_ROUND_DIRECTION)
2177 }
2178
2179
2180
2181
2182 pub fn set_peg_scope(&mut self, v: isize) {
2184 self.message.body.set_field(tag::PEG_SCOPE, fixer::fix_int::FIXInt::from(v));
2185 }
2186
2187 pub fn get_peg_scope(&self) -> Result<isize, MessageRejectErrorEnum> {
2189 let mut fld = field::PegScopeField::new(0);
2190 self.message.body.get_field(tag::PEG_SCOPE, &mut fld.0)?;
2191 Ok(fld.value())
2192 }
2193
2194
2195 pub fn has_peg_scope(&self) -> bool {
2197 self.message.body.has(tag::PEG_SCOPE)
2198 }
2199
2200
2201
2202
2203 pub fn set_pool(&mut self, v: String) {
2205 self.message.body.set_field(tag::POOL, FIXString::from(v));
2206 }
2207
2208 pub fn get_pool(&self) -> Result<String, MessageRejectErrorEnum> {
2210 let mut fld = field::PoolField::new(String::new());
2211 self.message.body.get_field(tag::POOL, &mut fld.0)?;
2212 Ok(fld.value().to_string())
2213 }
2214
2215
2216 pub fn has_pool(&self) -> bool {
2218 self.message.body.has(tag::POOL)
2219 }
2220
2221
2222
2223
2224 pub fn set_position_effect(&mut self, v: String) {
2226 self.message.body.set_field(tag::POSITION_EFFECT, FIXString::from(v));
2227 }
2228
2229 pub fn get_position_effect(&self) -> Result<String, MessageRejectErrorEnum> {
2231 let mut fld = field::PositionEffectField::new(String::new());
2232 self.message.body.get_field(tag::POSITION_EFFECT, &mut fld.0)?;
2233 Ok(fld.value().to_string())
2234 }
2235
2236
2237 pub fn has_position_effect(&self) -> bool {
2239 self.message.body.has(tag::POSITION_EFFECT)
2240 }
2241
2242
2243
2244
2245 pub fn set_prealloc_method(&mut self, v: String) {
2247 self.message.body.set_field(tag::PREALLOC_METHOD, FIXString::from(v));
2248 }
2249
2250 pub fn get_prealloc_method(&self) -> Result<String, MessageRejectErrorEnum> {
2252 let mut fld = field::PreallocMethodField::new(String::new());
2253 self.message.body.get_field(tag::PREALLOC_METHOD, &mut fld.0)?;
2254 Ok(fld.value().to_string())
2255 }
2256
2257
2258 pub fn has_prealloc_method(&self) -> bool {
2260 self.message.body.has(tag::PREALLOC_METHOD)
2261 }
2262
2263
2264
2265
2266 pub fn set_prev_close_px(&mut self, val: Decimal, scale: i32) {
2268 self.message.body.set_field(tag::PREV_CLOSE_PX, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2269 }
2270
2271 pub fn get_prev_close_px(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2273 let mut fld = field::PrevClosePxField::new(Decimal::ZERO, 0);
2274 self.message.body.get_field(tag::PREV_CLOSE_PX, &mut fld.0)?;
2275 Ok(fld.value())
2276 }
2277
2278
2279 pub fn has_prev_close_px(&self) -> bool {
2281 self.message.body.has(tag::PREV_CLOSE_PX)
2282 }
2283
2284
2285
2286
2287 pub fn set_price(&mut self, val: Decimal, scale: i32) {
2289 self.message.body.set_field(tag::PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2290 }
2291
2292 pub fn get_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2294 let mut fld = field::PriceField::new(Decimal::ZERO, 0);
2295 self.message.body.get_field(tag::PRICE, &mut fld.0)?;
2296 Ok(fld.value())
2297 }
2298
2299
2300 pub fn has_price(&self) -> bool {
2302 self.message.body.has(tag::PRICE)
2303 }
2304
2305
2306
2307
2308 pub fn set_price2(&mut self, val: Decimal, scale: i32) {
2310 self.message.body.set_field(tag::PRICE2, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2311 }
2312
2313 pub fn get_price2(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2315 let mut fld = field::Price2Field::new(Decimal::ZERO, 0);
2316 self.message.body.get_field(tag::PRICE2, &mut fld.0)?;
2317 Ok(fld.value())
2318 }
2319
2320
2321 pub fn has_price2(&self) -> bool {
2323 self.message.body.has(tag::PRICE2)
2324 }
2325
2326
2327
2328
2329 pub fn set_price_type(&mut self, v: isize) {
2331 self.message.body.set_field(tag::PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
2332 }
2333
2334 pub fn get_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2336 let mut fld = field::PriceTypeField::new(0);
2337 self.message.body.get_field(tag::PRICE_TYPE, &mut fld.0)?;
2338 Ok(fld.value())
2339 }
2340
2341
2342 pub fn has_price_type(&self) -> bool {
2344 self.message.body.has(tag::PRICE_TYPE)
2345 }
2346
2347
2348
2349
2350 pub fn set_process_code(&mut self, v: String) {
2352 self.message.body.set_field(tag::PROCESS_CODE, FIXString::from(v));
2353 }
2354
2355 pub fn get_process_code(&self) -> Result<String, MessageRejectErrorEnum> {
2357 let mut fld = field::ProcessCodeField::new(String::new());
2358 self.message.body.get_field(tag::PROCESS_CODE, &mut fld.0)?;
2359 Ok(fld.value().to_string())
2360 }
2361
2362
2363 pub fn has_process_code(&self) -> bool {
2365 self.message.body.has(tag::PROCESS_CODE)
2366 }
2367
2368
2369
2370
2371 pub fn set_product(&mut self, v: isize) {
2373 self.message.body.set_field(tag::PRODUCT, fixer::fix_int::FIXInt::from(v));
2374 }
2375
2376 pub fn get_product(&self) -> Result<isize, MessageRejectErrorEnum> {
2378 let mut fld = field::ProductField::new(0);
2379 self.message.body.get_field(tag::PRODUCT, &mut fld.0)?;
2380 Ok(fld.value())
2381 }
2382
2383
2384 pub fn has_product(&self) -> bool {
2386 self.message.body.has(tag::PRODUCT)
2387 }
2388
2389
2390
2391
2392 pub fn set_qty_type(&mut self, v: isize) {
2394 self.message.body.set_field(tag::QTY_TYPE, fixer::fix_int::FIXInt::from(v));
2395 }
2396
2397 pub fn get_qty_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2399 let mut fld = field::QtyTypeField::new(0);
2400 self.message.body.get_field(tag::QTY_TYPE, &mut fld.0)?;
2401 Ok(fld.value())
2402 }
2403
2404
2405 pub fn has_qty_type(&self) -> bool {
2407 self.message.body.has(tag::QTY_TYPE)
2408 }
2409
2410
2411
2412
2413 pub fn set_quote_id(&mut self, v: String) {
2415 self.message.body.set_field(tag::QUOTE_ID, FIXString::from(v));
2416 }
2417
2418 pub fn get_quote_id(&self) -> Result<String, MessageRejectErrorEnum> {
2420 let mut fld = field::QuoteIDField::new(String::new());
2421 self.message.body.get_field(tag::QUOTE_ID, &mut fld.0)?;
2422 Ok(fld.value().to_string())
2423 }
2424
2425
2426 pub fn has_quote_id(&self) -> bool {
2428 self.message.body.has(tag::QUOTE_ID)
2429 }
2430
2431
2432
2433
2434 pub fn set_redemption_date(&mut self, v: String) {
2436 self.message.body.set_field(tag::REDEMPTION_DATE, FIXString::from(v));
2437 }
2438
2439 pub fn get_redemption_date(&self) -> Result<String, MessageRejectErrorEnum> {
2441 let mut fld = field::RedemptionDateField::new(String::new());
2442 self.message.body.get_field(tag::REDEMPTION_DATE, &mut fld.0)?;
2443 Ok(fld.value().to_string())
2444 }
2445
2446
2447 pub fn has_redemption_date(&self) -> bool {
2449 self.message.body.has(tag::REDEMPTION_DATE)
2450 }
2451
2452
2453
2454
2455 pub fn set_regist_id(&mut self, v: String) {
2457 self.message.body.set_field(tag::REGIST_ID, FIXString::from(v));
2458 }
2459
2460 pub fn get_regist_id(&self) -> Result<String, MessageRejectErrorEnum> {
2462 let mut fld = field::RegistIDField::new(String::new());
2463 self.message.body.get_field(tag::REGIST_ID, &mut fld.0)?;
2464 Ok(fld.value().to_string())
2465 }
2466
2467
2468 pub fn has_regist_id(&self) -> bool {
2470 self.message.body.has(tag::REGIST_ID)
2471 }
2472
2473
2474
2475
2476 pub fn set_repo_collateral_security_type(&mut self, v: isize) {
2478 self.message.body.set_field(tag::REPO_COLLATERAL_SECURITY_TYPE, fixer::fix_int::FIXInt::from(v));
2479 }
2480
2481 pub fn get_repo_collateral_security_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2483 let mut fld = field::RepoCollateralSecurityTypeField::new(0);
2484 self.message.body.get_field(tag::REPO_COLLATERAL_SECURITY_TYPE, &mut fld.0)?;
2485 Ok(fld.value())
2486 }
2487
2488
2489 pub fn has_repo_collateral_security_type(&self) -> bool {
2491 self.message.body.has(tag::REPO_COLLATERAL_SECURITY_TYPE)
2492 }
2493
2494
2495
2496
2497 pub fn set_repurchase_rate(&mut self, val: Decimal, scale: i32) {
2499 self.message.body.set_field(tag::REPURCHASE_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2500 }
2501
2502 pub fn get_repurchase_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2504 let mut fld = field::RepurchaseRateField::new(Decimal::ZERO, 0);
2505 self.message.body.get_field(tag::REPURCHASE_RATE, &mut fld.0)?;
2506 Ok(fld.value())
2507 }
2508
2509
2510 pub fn has_repurchase_rate(&self) -> bool {
2512 self.message.body.has(tag::REPURCHASE_RATE)
2513 }
2514
2515
2516
2517
2518 pub fn set_repurchase_term(&mut self, v: isize) {
2520 self.message.body.set_field(tag::REPURCHASE_TERM, fixer::fix_int::FIXInt::from(v));
2521 }
2522
2523 pub fn get_repurchase_term(&self) -> Result<isize, MessageRejectErrorEnum> {
2525 let mut fld = field::RepurchaseTermField::new(0);
2526 self.message.body.get_field(tag::REPURCHASE_TERM, &mut fld.0)?;
2527 Ok(fld.value())
2528 }
2529
2530
2531 pub fn has_repurchase_term(&self) -> bool {
2533 self.message.body.has(tag::REPURCHASE_TERM)
2534 }
2535
2536
2537
2538
2539 pub fn set_rounding_direction(&mut self, v: String) {
2541 self.message.body.set_field(tag::ROUNDING_DIRECTION, FIXString::from(v));
2542 }
2543
2544 pub fn get_rounding_direction(&self) -> Result<String, MessageRejectErrorEnum> {
2546 let mut fld = field::RoundingDirectionField::new(String::new());
2547 self.message.body.get_field(tag::ROUNDING_DIRECTION, &mut fld.0)?;
2548 Ok(fld.value().to_string())
2549 }
2550
2551
2552 pub fn has_rounding_direction(&self) -> bool {
2554 self.message.body.has(tag::ROUNDING_DIRECTION)
2555 }
2556
2557
2558
2559
2560 pub fn set_rounding_modulus(&mut self, val: Decimal, scale: i32) {
2562 self.message.body.set_field(tag::ROUNDING_MODULUS, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2563 }
2564
2565 pub fn get_rounding_modulus(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2567 let mut fld = field::RoundingModulusField::new(Decimal::ZERO, 0);
2568 self.message.body.get_field(tag::ROUNDING_MODULUS, &mut fld.0)?;
2569 Ok(fld.value())
2570 }
2571
2572
2573 pub fn has_rounding_modulus(&self) -> bool {
2575 self.message.body.has(tag::ROUNDING_MODULUS)
2576 }
2577
2578
2579
2580
2581 pub fn set_secondary_cl_ord_id(&mut self, v: String) {
2583 self.message.body.set_field(tag::SECONDARY_CL_ORD_ID, FIXString::from(v));
2584 }
2585
2586 pub fn get_secondary_cl_ord_id(&self) -> Result<String, MessageRejectErrorEnum> {
2588 let mut fld = field::SecondaryClOrdIDField::new(String::new());
2589 self.message.body.get_field(tag::SECONDARY_CL_ORD_ID, &mut fld.0)?;
2590 Ok(fld.value().to_string())
2591 }
2592
2593
2594 pub fn has_secondary_cl_ord_id(&self) -> bool {
2596 self.message.body.has(tag::SECONDARY_CL_ORD_ID)
2597 }
2598
2599
2600
2601
2602 pub fn set_security_desc(&mut self, v: String) {
2604 self.message.body.set_field(tag::SECURITY_DESC, FIXString::from(v));
2605 }
2606
2607 pub fn get_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
2609 let mut fld = field::SecurityDescField::new(String::new());
2610 self.message.body.get_field(tag::SECURITY_DESC, &mut fld.0)?;
2611 Ok(fld.value().to_string())
2612 }
2613
2614
2615 pub fn has_security_desc(&self) -> bool {
2617 self.message.body.has(tag::SECURITY_DESC)
2618 }
2619
2620
2621
2622
2623 pub fn set_security_exchange(&mut self, v: String) {
2625 self.message.body.set_field(tag::SECURITY_EXCHANGE, FIXString::from(v));
2626 }
2627
2628 pub fn get_security_exchange(&self) -> Result<String, MessageRejectErrorEnum> {
2630 let mut fld = field::SecurityExchangeField::new(String::new());
2631 self.message.body.get_field(tag::SECURITY_EXCHANGE, &mut fld.0)?;
2632 Ok(fld.value().to_string())
2633 }
2634
2635
2636 pub fn has_security_exchange(&self) -> bool {
2638 self.message.body.has(tag::SECURITY_EXCHANGE)
2639 }
2640
2641
2642
2643
2644 pub fn set_security_id(&mut self, v: String) {
2646 self.message.body.set_field(tag::SECURITY_ID, FIXString::from(v));
2647 }
2648
2649 pub fn get_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
2651 let mut fld = field::SecurityIDField::new(String::new());
2652 self.message.body.get_field(tag::SECURITY_ID, &mut fld.0)?;
2653 Ok(fld.value().to_string())
2654 }
2655
2656
2657 pub fn has_security_id(&self) -> bool {
2659 self.message.body.has(tag::SECURITY_ID)
2660 }
2661
2662
2663
2664
2665 pub fn set_security_id_source(&mut self, v: String) {
2667 self.message.body.set_field(tag::SECURITY_ID_SOURCE, FIXString::from(v));
2668 }
2669
2670 pub fn get_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
2672 let mut fld = field::SecurityIDSourceField::new(String::new());
2673 self.message.body.get_field(tag::SECURITY_ID_SOURCE, &mut fld.0)?;
2674 Ok(fld.value().to_string())
2675 }
2676
2677
2678 pub fn has_security_id_source(&self) -> bool {
2680 self.message.body.has(tag::SECURITY_ID_SOURCE)
2681 }
2682
2683
2684
2685
2686 pub fn set_security_sub_type(&mut self, v: String) {
2688 self.message.body.set_field(tag::SECURITY_SUB_TYPE, FIXString::from(v));
2689 }
2690
2691 pub fn get_security_sub_type(&self) -> Result<String, MessageRejectErrorEnum> {
2693 let mut fld = field::SecuritySubTypeField::new(String::new());
2694 self.message.body.get_field(tag::SECURITY_SUB_TYPE, &mut fld.0)?;
2695 Ok(fld.value().to_string())
2696 }
2697
2698
2699 pub fn has_security_sub_type(&self) -> bool {
2701 self.message.body.has(tag::SECURITY_SUB_TYPE)
2702 }
2703
2704
2705
2706
2707 pub fn set_security_type(&mut self, v: String) {
2709 self.message.body.set_field(tag::SECURITY_TYPE, FIXString::from(v));
2710 }
2711
2712 pub fn get_security_type(&self) -> Result<String, MessageRejectErrorEnum> {
2714 let mut fld = field::SecurityTypeField::new(String::new());
2715 self.message.body.get_field(tag::SECURITY_TYPE, &mut fld.0)?;
2716 Ok(fld.value().to_string())
2717 }
2718
2719
2720 pub fn has_security_type(&self) -> bool {
2722 self.message.body.has(tag::SECURITY_TYPE)
2723 }
2724
2725
2726
2727
2728 pub fn set_settl_currency(&mut self, v: String) {
2730 self.message.body.set_field(tag::SETTL_CURRENCY, FIXString::from(v));
2731 }
2732
2733 pub fn get_settl_currency(&self) -> Result<String, MessageRejectErrorEnum> {
2735 let mut fld = field::SettlCurrencyField::new(String::new());
2736 self.message.body.get_field(tag::SETTL_CURRENCY, &mut fld.0)?;
2737 Ok(fld.value().to_string())
2738 }
2739
2740
2741 pub fn has_settl_currency(&self) -> bool {
2743 self.message.body.has(tag::SETTL_CURRENCY)
2744 }
2745
2746
2747
2748
2749 pub fn set_settl_date(&mut self, v: String) {
2751 self.message.body.set_field(tag::SETTL_DATE, FIXString::from(v));
2752 }
2753
2754 pub fn get_settl_date(&self) -> Result<String, MessageRejectErrorEnum> {
2756 let mut fld = field::SettlDateField::new(String::new());
2757 self.message.body.get_field(tag::SETTL_DATE, &mut fld.0)?;
2758 Ok(fld.value().to_string())
2759 }
2760
2761
2762 pub fn has_settl_date(&self) -> bool {
2764 self.message.body.has(tag::SETTL_DATE)
2765 }
2766
2767
2768
2769
2770 pub fn set_settl_date2(&mut self, v: String) {
2772 self.message.body.set_field(tag::SETTL_DATE2, FIXString::from(v));
2773 }
2774
2775 pub fn get_settl_date2(&self) -> Result<String, MessageRejectErrorEnum> {
2777 let mut fld = field::SettlDate2Field::new(String::new());
2778 self.message.body.get_field(tag::SETTL_DATE2, &mut fld.0)?;
2779 Ok(fld.value().to_string())
2780 }
2781
2782
2783 pub fn has_settl_date2(&self) -> bool {
2785 self.message.body.has(tag::SETTL_DATE2)
2786 }
2787
2788
2789
2790
2791 pub fn set_settl_type(&mut self, v: String) {
2793 self.message.body.set_field(tag::SETTL_TYPE, FIXString::from(v));
2794 }
2795
2796 pub fn get_settl_type(&self) -> Result<String, MessageRejectErrorEnum> {
2798 let mut fld = field::SettlTypeField::new(String::new());
2799 self.message.body.get_field(tag::SETTL_TYPE, &mut fld.0)?;
2800 Ok(fld.value().to_string())
2801 }
2802
2803
2804 pub fn has_settl_type(&self) -> bool {
2806 self.message.body.has(tag::SETTL_TYPE)
2807 }
2808
2809
2810
2811
2812 pub fn set_side(&mut self, v: String) {
2814 self.message.body.set_field(tag::SIDE, FIXString::from(v));
2815 }
2816
2817 pub fn get_side(&self) -> Result<String, MessageRejectErrorEnum> {
2819 let mut fld = field::SideField::new(String::new());
2820 self.message.body.get_field(tag::SIDE, &mut fld.0)?;
2821 Ok(fld.value().to_string())
2822 }
2823
2824
2825 pub fn has_side(&self) -> bool {
2827 self.message.body.has(tag::SIDE)
2828 }
2829
2830
2831
2832
2833 pub fn set_solicited_flag(&mut self, v: bool) {
2835 self.message.body.set_field(tag::SOLICITED_FLAG, fixer::fix_boolean::FIXBoolean::from(v));
2836 }
2837
2838 pub fn get_solicited_flag(&self) -> Result<bool, MessageRejectErrorEnum> {
2840 let mut fld = field::SolicitedFlagField::new(false);
2841 self.message.body.get_field(tag::SOLICITED_FLAG, &mut fld.0)?;
2842 Ok(fld.value())
2843 }
2844
2845
2846 pub fn has_solicited_flag(&self) -> bool {
2848 self.message.body.has(tag::SOLICITED_FLAG)
2849 }
2850
2851
2852
2853
2854 pub fn set_spread(&mut self, val: Decimal, scale: i32) {
2856 self.message.body.set_field(tag::SPREAD, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2857 }
2858
2859 pub fn get_spread(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2861 let mut fld = field::SpreadField::new(Decimal::ZERO, 0);
2862 self.message.body.get_field(tag::SPREAD, &mut fld.0)?;
2863 Ok(fld.value())
2864 }
2865
2866
2867 pub fn has_spread(&self) -> bool {
2869 self.message.body.has(tag::SPREAD)
2870 }
2871
2872
2873
2874
2875 pub fn set_start_date(&mut self, v: String) {
2877 self.message.body.set_field(tag::START_DATE, FIXString::from(v));
2878 }
2879
2880 pub fn get_start_date(&self) -> Result<String, MessageRejectErrorEnum> {
2882 let mut fld = field::StartDateField::new(String::new());
2883 self.message.body.get_field(tag::START_DATE, &mut fld.0)?;
2884 Ok(fld.value().to_string())
2885 }
2886
2887
2888 pub fn has_start_date(&self) -> bool {
2890 self.message.body.has(tag::START_DATE)
2891 }
2892
2893
2894
2895
2896 pub fn set_state_or_province_of_issue(&mut self, v: String) {
2898 self.message.body.set_field(tag::STATE_OR_PROVINCE_OF_ISSUE, FIXString::from(v));
2899 }
2900
2901 pub fn get_state_or_province_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
2903 let mut fld = field::StateOrProvinceOfIssueField::new(String::new());
2904 self.message.body.get_field(tag::STATE_OR_PROVINCE_OF_ISSUE, &mut fld.0)?;
2905 Ok(fld.value().to_string())
2906 }
2907
2908
2909 pub fn has_state_or_province_of_issue(&self) -> bool {
2911 self.message.body.has(tag::STATE_OR_PROVINCE_OF_ISSUE)
2912 }
2913
2914
2915
2916
2917 pub fn set_stop_px(&mut self, val: Decimal, scale: i32) {
2919 self.message.body.set_field(tag::STOP_PX, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2920 }
2921
2922 pub fn get_stop_px(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2924 let mut fld = field::StopPxField::new(Decimal::ZERO, 0);
2925 self.message.body.get_field(tag::STOP_PX, &mut fld.0)?;
2926 Ok(fld.value())
2927 }
2928
2929
2930 pub fn has_stop_px(&self) -> bool {
2932 self.message.body.has(tag::STOP_PX)
2933 }
2934
2935
2936
2937
2938 pub fn set_strike_currency(&mut self, v: String) {
2940 self.message.body.set_field(tag::STRIKE_CURRENCY, FIXString::from(v));
2941 }
2942
2943 pub fn get_strike_currency(&self) -> Result<String, MessageRejectErrorEnum> {
2945 let mut fld = field::StrikeCurrencyField::new(String::new());
2946 self.message.body.get_field(tag::STRIKE_CURRENCY, &mut fld.0)?;
2947 Ok(fld.value().to_string())
2948 }
2949
2950
2951 pub fn has_strike_currency(&self) -> bool {
2953 self.message.body.has(tag::STRIKE_CURRENCY)
2954 }
2955
2956
2957
2958
2959 pub fn set_strike_price(&mut self, val: Decimal, scale: i32) {
2961 self.message.body.set_field(tag::STRIKE_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2962 }
2963
2964 pub fn get_strike_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2966 let mut fld = field::StrikePriceField::new(Decimal::ZERO, 0);
2967 self.message.body.get_field(tag::STRIKE_PRICE, &mut fld.0)?;
2968 Ok(fld.value())
2969 }
2970
2971
2972 pub fn has_strike_price(&self) -> bool {
2974 self.message.body.has(tag::STRIKE_PRICE)
2975 }
2976
2977
2978
2979
2980 pub fn set_symbol(&mut self, v: String) {
2982 self.message.body.set_field(tag::SYMBOL, FIXString::from(v));
2983 }
2984
2985 pub fn get_symbol(&self) -> Result<String, MessageRejectErrorEnum> {
2987 let mut fld = field::SymbolField::new(String::new());
2988 self.message.body.get_field(tag::SYMBOL, &mut fld.0)?;
2989 Ok(fld.value().to_string())
2990 }
2991
2992
2993 pub fn has_symbol(&self) -> bool {
2995 self.message.body.has(tag::SYMBOL)
2996 }
2997
2998
2999
3000
3001 pub fn set_symbol_sfx(&mut self, v: String) {
3003 self.message.body.set_field(tag::SYMBOL_SFX, FIXString::from(v));
3004 }
3005
3006 pub fn get_symbol_sfx(&self) -> Result<String, MessageRejectErrorEnum> {
3008 let mut fld = field::SymbolSfxField::new(String::new());
3009 self.message.body.get_field(tag::SYMBOL_SFX, &mut fld.0)?;
3010 Ok(fld.value().to_string())
3011 }
3012
3013
3014 pub fn has_symbol_sfx(&self) -> bool {
3016 self.message.body.has(tag::SYMBOL_SFX)
3017 }
3018
3019
3020
3021
3022 pub fn set_target_strategy(&mut self, v: isize) {
3024 self.message.body.set_field(tag::TARGET_STRATEGY, fixer::fix_int::FIXInt::from(v));
3025 }
3026
3027 pub fn get_target_strategy(&self) -> Result<isize, MessageRejectErrorEnum> {
3029 let mut fld = field::TargetStrategyField::new(0);
3030 self.message.body.get_field(tag::TARGET_STRATEGY, &mut fld.0)?;
3031 Ok(fld.value())
3032 }
3033
3034
3035 pub fn has_target_strategy(&self) -> bool {
3037 self.message.body.has(tag::TARGET_STRATEGY)
3038 }
3039
3040
3041
3042
3043 pub fn set_target_strategy_parameters(&mut self, v: String) {
3045 self.message.body.set_field(tag::TARGET_STRATEGY_PARAMETERS, FIXString::from(v));
3046 }
3047
3048 pub fn get_target_strategy_parameters(&self) -> Result<String, MessageRejectErrorEnum> {
3050 let mut fld = field::TargetStrategyParametersField::new(String::new());
3051 self.message.body.get_field(tag::TARGET_STRATEGY_PARAMETERS, &mut fld.0)?;
3052 Ok(fld.value().to_string())
3053 }
3054
3055
3056 pub fn has_target_strategy_parameters(&self) -> bool {
3058 self.message.body.has(tag::TARGET_STRATEGY_PARAMETERS)
3059 }
3060
3061
3062
3063
3064 pub fn set_termination_type(&mut self, v: isize) {
3066 self.message.body.set_field(tag::TERMINATION_TYPE, fixer::fix_int::FIXInt::from(v));
3067 }
3068
3069 pub fn get_termination_type(&self) -> Result<isize, MessageRejectErrorEnum> {
3071 let mut fld = field::TerminationTypeField::new(0);
3072 self.message.body.get_field(tag::TERMINATION_TYPE, &mut fld.0)?;
3073 Ok(fld.value())
3074 }
3075
3076
3077 pub fn has_termination_type(&self) -> bool {
3079 self.message.body.has(tag::TERMINATION_TYPE)
3080 }
3081
3082
3083
3084
3085 pub fn set_text(&mut self, v: String) {
3087 self.message.body.set_field(tag::TEXT, FIXString::from(v));
3088 }
3089
3090 pub fn get_text(&self) -> Result<String, MessageRejectErrorEnum> {
3092 let mut fld = field::TextField::new(String::new());
3093 self.message.body.get_field(tag::TEXT, &mut fld.0)?;
3094 Ok(fld.value().to_string())
3095 }
3096
3097
3098 pub fn has_text(&self) -> bool {
3100 self.message.body.has(tag::TEXT)
3101 }
3102
3103
3104
3105
3106 pub fn set_time_in_force(&mut self, v: String) {
3108 self.message.body.set_field(tag::TIME_IN_FORCE, FIXString::from(v));
3109 }
3110
3111 pub fn get_time_in_force(&self) -> Result<String, MessageRejectErrorEnum> {
3113 let mut fld = field::TimeInForceField::new(String::new());
3114 self.message.body.get_field(tag::TIME_IN_FORCE, &mut fld.0)?;
3115 Ok(fld.value().to_string())
3116 }
3117
3118
3119 pub fn has_time_in_force(&self) -> bool {
3121 self.message.body.has(tag::TIME_IN_FORCE)
3122 }
3123
3124
3125
3126
3127 pub fn set_trade_date(&mut self, v: String) {
3129 self.message.body.set_field(tag::TRADE_DATE, FIXString::from(v));
3130 }
3131
3132 pub fn get_trade_date(&self) -> Result<String, MessageRejectErrorEnum> {
3134 let mut fld = field::TradeDateField::new(String::new());
3135 self.message.body.get_field(tag::TRADE_DATE, &mut fld.0)?;
3136 Ok(fld.value().to_string())
3137 }
3138
3139
3140 pub fn has_trade_date(&self) -> bool {
3142 self.message.body.has(tag::TRADE_DATE)
3143 }
3144
3145
3146
3147
3148 pub fn set_trade_origination_date(&mut self, v: String) {
3150 self.message.body.set_field(tag::TRADE_ORIGINATION_DATE, FIXString::from(v));
3151 }
3152
3153 pub fn get_trade_origination_date(&self) -> Result<String, MessageRejectErrorEnum> {
3155 let mut fld = field::TradeOriginationDateField::new(String::new());
3156 self.message.body.get_field(tag::TRADE_ORIGINATION_DATE, &mut fld.0)?;
3157 Ok(fld.value().to_string())
3158 }
3159
3160
3161 pub fn has_trade_origination_date(&self) -> bool {
3163 self.message.body.has(tag::TRADE_ORIGINATION_DATE)
3164 }
3165
3166
3167
3168
3169 pub fn set_transact_time(&mut self, v: Timestamp) {
3171 self.message.body.set_field(tag::TRANSACT_TIME, fixer::fix_utc_timestamp::FIXUTCTimestamp {
3172 time: v,
3173 precision: fixer::fix_utc_timestamp::TimestampPrecision::Millis,
3174 });
3175 }
3176
3177 pub fn get_transact_time(&self) -> Result<Timestamp, MessageRejectErrorEnum> {
3179 let mut fld = field::TransactTimeField::new(Timestamp::UNIX_EPOCH);
3180 self.message.body.get_field(tag::TRANSACT_TIME, &mut fld.0)?;
3181 Ok(fld.value())
3182 }
3183
3184
3185 pub fn has_transact_time(&self) -> bool {
3187 self.message.body.has(tag::TRANSACT_TIME)
3188 }
3189
3190
3191
3192
3193 pub fn set_yield(&mut self, val: Decimal, scale: i32) {
3195 self.message.body.set_field(tag::YIELD, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3196 }
3197
3198 pub fn get_yield(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3200 let mut fld = field::YieldField::new(Decimal::ZERO, 0);
3201 self.message.body.get_field(tag::YIELD, &mut fld.0)?;
3202 Ok(fld.value())
3203 }
3204
3205
3206 pub fn has_yield(&self) -> bool {
3208 self.message.body.has(tag::YIELD)
3209 }
3210
3211
3212
3213
3214 pub fn set_yield_calc_date(&mut self, v: String) {
3216 self.message.body.set_field(tag::YIELD_CALC_DATE, FIXString::from(v));
3217 }
3218
3219 pub fn get_yield_calc_date(&self) -> Result<String, MessageRejectErrorEnum> {
3221 let mut fld = field::YieldCalcDateField::new(String::new());
3222 self.message.body.get_field(tag::YIELD_CALC_DATE, &mut fld.0)?;
3223 Ok(fld.value().to_string())
3224 }
3225
3226
3227 pub fn has_yield_calc_date(&self) -> bool {
3229 self.message.body.has(tag::YIELD_CALC_DATE)
3230 }
3231
3232
3233
3234
3235 pub fn set_yield_redemption_date(&mut self, v: String) {
3237 self.message.body.set_field(tag::YIELD_REDEMPTION_DATE, FIXString::from(v));
3238 }
3239
3240 pub fn get_yield_redemption_date(&self) -> Result<String, MessageRejectErrorEnum> {
3242 let mut fld = field::YieldRedemptionDateField::new(String::new());
3243 self.message.body.get_field(tag::YIELD_REDEMPTION_DATE, &mut fld.0)?;
3244 Ok(fld.value().to_string())
3245 }
3246
3247
3248 pub fn has_yield_redemption_date(&self) -> bool {
3250 self.message.body.has(tag::YIELD_REDEMPTION_DATE)
3251 }
3252
3253
3254
3255
3256 pub fn set_yield_redemption_price(&mut self, val: Decimal, scale: i32) {
3258 self.message.body.set_field(tag::YIELD_REDEMPTION_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3259 }
3260
3261 pub fn get_yield_redemption_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3263 let mut fld = field::YieldRedemptionPriceField::new(Decimal::ZERO, 0);
3264 self.message.body.get_field(tag::YIELD_REDEMPTION_PRICE, &mut fld.0)?;
3265 Ok(fld.value())
3266 }
3267
3268
3269 pub fn has_yield_redemption_price(&self) -> bool {
3271 self.message.body.has(tag::YIELD_REDEMPTION_PRICE)
3272 }
3273
3274
3275
3276
3277 pub fn set_yield_redemption_price_type(&mut self, v: isize) {
3279 self.message.body.set_field(tag::YIELD_REDEMPTION_PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
3280 }
3281
3282 pub fn get_yield_redemption_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
3284 let mut fld = field::YieldRedemptionPriceTypeField::new(0);
3285 self.message.body.get_field(tag::YIELD_REDEMPTION_PRICE_TYPE, &mut fld.0)?;
3286 Ok(fld.value())
3287 }
3288
3289
3290 pub fn has_yield_redemption_price_type(&self) -> bool {
3292 self.message.body.has(tag::YIELD_REDEMPTION_PRICE_TYPE)
3293 }
3294
3295
3296
3297
3298 pub fn set_yield_type(&mut self, v: String) {
3300 self.message.body.set_field(tag::YIELD_TYPE, FIXString::from(v));
3301 }
3302
3303 pub fn get_yield_type(&self) -> Result<String, MessageRejectErrorEnum> {
3305 let mut fld = field::YieldTypeField::new(String::new());
3306 self.message.body.get_field(tag::YIELD_TYPE, &mut fld.0)?;
3307 Ok(fld.value().to_string())
3308 }
3309
3310
3311 pub fn has_yield_type(&self) -> bool {
3313 self.message.body.has(tag::YIELD_TYPE)
3314 }
3315
3316
3317}
3318
3319pub type RouteOut = fn(msg: NewOrderSingle, session_id: SessionID) -> Result<(), MessageRejectErrorEnum>;
3321
3322pub type Route = (&'static str, &'static str, Box<dyn Fn(&Message, SessionID) -> Result<(), MessageRejectErrorEnum> + Send>);
3324
3325pub fn route(router: RouteOut) -> Route {
3327 let r = move |msg: &Message, session_id: SessionID| -> Result<(), MessageRejectErrorEnum> {
3328 router(NewOrderSingle::from_message(msg.clone()), session_id)
3329 };
3330 ("FIX.4.4", "D", Box::new(r))
3331}