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 crate::field;
16use crate::tag;
17
18pub struct SecurityDefinitionUpdateReport {
20 pub message: Message,
21}
22
23impl SecurityDefinitionUpdateReport {
24 pub fn new() -> Self {
26 let mut msg = Message::new();
27 msg.header.set_field(tag::MSG_TYPE, FIXString::from("BP".to_string()));
28
29 Self { message: msg }
30 }
31
32 pub fn from_message(msg: Message) -> Self {
34 Self { message: msg }
35 }
36
37 pub fn to_message(self) -> Message {
39 self.message
40 }
41
42
43
44
45 pub fn set_cfi_code(&mut self, v: String) {
47 self.message.body.set_field(tag::CFI_CODE, FIXString::from(v));
48 }
49
50 pub fn get_cfi_code(&self) -> Result<String, MessageRejectErrorEnum> {
52 let mut fld = field::CFICodeField::new(String::new());
53 self.message.body.get_field(tag::CFI_CODE, &mut fld.0)?;
54 Ok(fld.value().to_string())
55 }
56
57
58 pub fn has_cfi_code(&self) -> bool {
60 self.message.body.has(tag::CFI_CODE)
61 }
62
63
64
65
66 pub fn set_cp_program(&mut self, v: isize) {
68 self.message.body.set_field(tag::CP_PROGRAM, fixer::fix_int::FIXInt::from(v));
69 }
70
71 pub fn get_cp_program(&self) -> Result<isize, MessageRejectErrorEnum> {
73 let mut fld = field::CPProgramField::new(0);
74 self.message.body.get_field(tag::CP_PROGRAM, &mut fld.0)?;
75 Ok(fld.value())
76 }
77
78
79 pub fn has_cp_program(&self) -> bool {
81 self.message.body.has(tag::CP_PROGRAM)
82 }
83
84
85
86
87 pub fn set_cp_reg_type(&mut self, v: String) {
89 self.message.body.set_field(tag::CP_REG_TYPE, FIXString::from(v));
90 }
91
92 pub fn get_cp_reg_type(&self) -> Result<String, MessageRejectErrorEnum> {
94 let mut fld = field::CPRegTypeField::new(String::new());
95 self.message.body.get_field(tag::CP_REG_TYPE, &mut fld.0)?;
96 Ok(fld.value().to_string())
97 }
98
99
100 pub fn has_cp_reg_type(&self) -> bool {
102 self.message.body.has(tag::CP_REG_TYPE)
103 }
104
105
106
107
108 pub fn set_clearing_business_date(&mut self, v: String) {
110 self.message.body.set_field(tag::CLEARING_BUSINESS_DATE, FIXString::from(v));
111 }
112
113 pub fn get_clearing_business_date(&self) -> Result<String, MessageRejectErrorEnum> {
115 let mut fld = field::ClearingBusinessDateField::new(String::new());
116 self.message.body.get_field(tag::CLEARING_BUSINESS_DATE, &mut fld.0)?;
117 Ok(fld.value().to_string())
118 }
119
120
121 pub fn has_clearing_business_date(&self) -> bool {
123 self.message.body.has(tag::CLEARING_BUSINESS_DATE)
124 }
125
126
127
128
129 pub fn set_contract_multiplier(&mut self, val: Decimal, scale: i32) {
131 self.message.body.set_field(tag::CONTRACT_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
132 }
133
134 pub fn get_contract_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
136 let mut fld = field::ContractMultiplierField::new(Decimal::ZERO, 0);
137 self.message.body.get_field(tag::CONTRACT_MULTIPLIER, &mut fld.0)?;
138 Ok(fld.value())
139 }
140
141
142 pub fn has_contract_multiplier(&self) -> bool {
144 self.message.body.has(tag::CONTRACT_MULTIPLIER)
145 }
146
147
148
149
150 pub fn set_contract_settl_month(&mut self, v: String) {
152 self.message.body.set_field(tag::CONTRACT_SETTL_MONTH, FIXString::from(v));
153 }
154
155 pub fn get_contract_settl_month(&self) -> Result<String, MessageRejectErrorEnum> {
157 let mut fld = field::ContractSettlMonthField::new(String::new());
158 self.message.body.get_field(tag::CONTRACT_SETTL_MONTH, &mut fld.0)?;
159 Ok(fld.value().to_string())
160 }
161
162
163 pub fn has_contract_settl_month(&self) -> bool {
165 self.message.body.has(tag::CONTRACT_SETTL_MONTH)
166 }
167
168
169
170
171 pub fn set_corporate_action(&mut self, v: String) {
173 self.message.body.set_field(tag::CORPORATE_ACTION, FIXString::from(v));
174 }
175
176 pub fn get_corporate_action(&self) -> Result<String, MessageRejectErrorEnum> {
178 let mut fld = field::CorporateActionField::new(String::new());
179 self.message.body.get_field(tag::CORPORATE_ACTION, &mut fld.0)?;
180 Ok(fld.value().to_string())
181 }
182
183
184 pub fn has_corporate_action(&self) -> bool {
186 self.message.body.has(tag::CORPORATE_ACTION)
187 }
188
189
190
191
192 pub fn set_country_of_issue(&mut self, v: String) {
194 self.message.body.set_field(tag::COUNTRY_OF_ISSUE, FIXString::from(v));
195 }
196
197 pub fn get_country_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
199 let mut fld = field::CountryOfIssueField::new(String::new());
200 self.message.body.get_field(tag::COUNTRY_OF_ISSUE, &mut fld.0)?;
201 Ok(fld.value().to_string())
202 }
203
204
205 pub fn has_country_of_issue(&self) -> bool {
207 self.message.body.has(tag::COUNTRY_OF_ISSUE)
208 }
209
210
211
212
213 pub fn set_coupon_payment_date(&mut self, v: String) {
215 self.message.body.set_field(tag::COUPON_PAYMENT_DATE, FIXString::from(v));
216 }
217
218 pub fn get_coupon_payment_date(&self) -> Result<String, MessageRejectErrorEnum> {
220 let mut fld = field::CouponPaymentDateField::new(String::new());
221 self.message.body.get_field(tag::COUPON_PAYMENT_DATE, &mut fld.0)?;
222 Ok(fld.value().to_string())
223 }
224
225
226 pub fn has_coupon_payment_date(&self) -> bool {
228 self.message.body.has(tag::COUPON_PAYMENT_DATE)
229 }
230
231
232
233
234 pub fn set_coupon_rate(&mut self, val: Decimal, scale: i32) {
236 self.message.body.set_field(tag::COUPON_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
237 }
238
239 pub fn get_coupon_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
241 let mut fld = field::CouponRateField::new(Decimal::ZERO, 0);
242 self.message.body.get_field(tag::COUPON_RATE, &mut fld.0)?;
243 Ok(fld.value())
244 }
245
246
247 pub fn has_coupon_rate(&self) -> bool {
249 self.message.body.has(tag::COUPON_RATE)
250 }
251
252
253
254
255 pub fn set_credit_rating(&mut self, v: String) {
257 self.message.body.set_field(tag::CREDIT_RATING, FIXString::from(v));
258 }
259
260 pub fn get_credit_rating(&self) -> Result<String, MessageRejectErrorEnum> {
262 let mut fld = field::CreditRatingField::new(String::new());
263 self.message.body.get_field(tag::CREDIT_RATING, &mut fld.0)?;
264 Ok(fld.value().to_string())
265 }
266
267
268 pub fn has_credit_rating(&self) -> bool {
270 self.message.body.has(tag::CREDIT_RATING)
271 }
272
273
274
275
276 pub fn set_currency(&mut self, v: String) {
278 self.message.body.set_field(tag::CURRENCY, FIXString::from(v));
279 }
280
281 pub fn get_currency(&self) -> Result<String, MessageRejectErrorEnum> {
283 let mut fld = field::CurrencyField::new(String::new());
284 self.message.body.get_field(tag::CURRENCY, &mut fld.0)?;
285 Ok(fld.value().to_string())
286 }
287
288
289 pub fn has_currency(&self) -> bool {
291 self.message.body.has(tag::CURRENCY)
292 }
293
294
295
296
297 pub fn set_dated_date(&mut self, v: String) {
299 self.message.body.set_field(tag::DATED_DATE, FIXString::from(v));
300 }
301
302 pub fn get_dated_date(&self) -> Result<String, MessageRejectErrorEnum> {
304 let mut fld = field::DatedDateField::new(String::new());
305 self.message.body.get_field(tag::DATED_DATE, &mut fld.0)?;
306 Ok(fld.value().to_string())
307 }
308
309
310 pub fn has_dated_date(&self) -> bool {
312 self.message.body.has(tag::DATED_DATE)
313 }
314
315
316
317
318 pub fn set_encoded_issuer(&mut self, v: String) {
320 self.message.body.set_field(tag::ENCODED_ISSUER, FIXString::from(v));
321 }
322
323 pub fn get_encoded_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
325 let mut fld = field::EncodedIssuerField::new(String::new());
326 self.message.body.get_field(tag::ENCODED_ISSUER, &mut fld.0)?;
327 Ok(fld.value().to_string())
328 }
329
330
331 pub fn has_encoded_issuer(&self) -> bool {
333 self.message.body.has(tag::ENCODED_ISSUER)
334 }
335
336
337
338
339 pub fn set_encoded_issuer_len(&mut self, v: isize) {
341 self.message.body.set_field(tag::ENCODED_ISSUER_LEN, fixer::fix_int::FIXInt::from(v));
342 }
343
344 pub fn get_encoded_issuer_len(&self) -> Result<isize, MessageRejectErrorEnum> {
346 let mut fld = field::EncodedIssuerLenField::new(0);
347 self.message.body.get_field(tag::ENCODED_ISSUER_LEN, &mut fld.0)?;
348 Ok(fld.value())
349 }
350
351
352 pub fn has_encoded_issuer_len(&self) -> bool {
354 self.message.body.has(tag::ENCODED_ISSUER_LEN)
355 }
356
357
358
359
360 pub fn set_encoded_security_desc(&mut self, v: String) {
362 self.message.body.set_field(tag::ENCODED_SECURITY_DESC, FIXString::from(v));
363 }
364
365 pub fn get_encoded_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
367 let mut fld = field::EncodedSecurityDescField::new(String::new());
368 self.message.body.get_field(tag::ENCODED_SECURITY_DESC, &mut fld.0)?;
369 Ok(fld.value().to_string())
370 }
371
372
373 pub fn has_encoded_security_desc(&self) -> bool {
375 self.message.body.has(tag::ENCODED_SECURITY_DESC)
376 }
377
378
379
380
381 pub fn set_encoded_security_desc_len(&mut self, v: isize) {
383 self.message.body.set_field(tag::ENCODED_SECURITY_DESC_LEN, fixer::fix_int::FIXInt::from(v));
384 }
385
386 pub fn get_encoded_security_desc_len(&self) -> Result<isize, MessageRejectErrorEnum> {
388 let mut fld = field::EncodedSecurityDescLenField::new(0);
389 self.message.body.get_field(tag::ENCODED_SECURITY_DESC_LEN, &mut fld.0)?;
390 Ok(fld.value())
391 }
392
393
394 pub fn has_encoded_security_desc_len(&self) -> bool {
396 self.message.body.has(tag::ENCODED_SECURITY_DESC_LEN)
397 }
398
399
400
401
402 pub fn set_encoded_text(&mut self, v: String) {
404 self.message.body.set_field(tag::ENCODED_TEXT, FIXString::from(v));
405 }
406
407 pub fn get_encoded_text(&self) -> Result<String, MessageRejectErrorEnum> {
409 let mut fld = field::EncodedTextField::new(String::new());
410 self.message.body.get_field(tag::ENCODED_TEXT, &mut fld.0)?;
411 Ok(fld.value().to_string())
412 }
413
414
415 pub fn has_encoded_text(&self) -> bool {
417 self.message.body.has(tag::ENCODED_TEXT)
418 }
419
420
421
422
423 pub fn set_encoded_text_len(&mut self, v: isize) {
425 self.message.body.set_field(tag::ENCODED_TEXT_LEN, fixer::fix_int::FIXInt::from(v));
426 }
427
428 pub fn get_encoded_text_len(&self) -> Result<isize, MessageRejectErrorEnum> {
430 let mut fld = field::EncodedTextLenField::new(0);
431 self.message.body.get_field(tag::ENCODED_TEXT_LEN, &mut fld.0)?;
432 Ok(fld.value())
433 }
434
435
436 pub fn has_encoded_text_len(&self) -> bool {
438 self.message.body.has(tag::ENCODED_TEXT_LEN)
439 }
440
441
442
443
444 pub fn set_encoded_underlying_issuer(&mut self, v: String) {
446 self.message.body.set_field(tag::ENCODED_UNDERLYING_ISSUER, FIXString::from(v));
447 }
448
449 pub fn get_encoded_underlying_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
451 let mut fld = field::EncodedUnderlyingIssuerField::new(String::new());
452 self.message.body.get_field(tag::ENCODED_UNDERLYING_ISSUER, &mut fld.0)?;
453 Ok(fld.value().to_string())
454 }
455
456
457 pub fn has_encoded_underlying_issuer(&self) -> bool {
459 self.message.body.has(tag::ENCODED_UNDERLYING_ISSUER)
460 }
461
462
463
464
465 pub fn set_encoded_underlying_issuer_len(&mut self, v: isize) {
467 self.message.body.set_field(tag::ENCODED_UNDERLYING_ISSUER_LEN, fixer::fix_int::FIXInt::from(v));
468 }
469
470 pub fn get_encoded_underlying_issuer_len(&self) -> Result<isize, MessageRejectErrorEnum> {
472 let mut fld = field::EncodedUnderlyingIssuerLenField::new(0);
473 self.message.body.get_field(tag::ENCODED_UNDERLYING_ISSUER_LEN, &mut fld.0)?;
474 Ok(fld.value())
475 }
476
477
478 pub fn has_encoded_underlying_issuer_len(&self) -> bool {
480 self.message.body.has(tag::ENCODED_UNDERLYING_ISSUER_LEN)
481 }
482
483
484
485
486 pub fn set_encoded_underlying_security_desc(&mut self, v: String) {
488 self.message.body.set_field(tag::ENCODED_UNDERLYING_SECURITY_DESC, FIXString::from(v));
489 }
490
491 pub fn get_encoded_underlying_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
493 let mut fld = field::EncodedUnderlyingSecurityDescField::new(String::new());
494 self.message.body.get_field(tag::ENCODED_UNDERLYING_SECURITY_DESC, &mut fld.0)?;
495 Ok(fld.value().to_string())
496 }
497
498
499 pub fn has_encoded_underlying_security_desc(&self) -> bool {
501 self.message.body.has(tag::ENCODED_UNDERLYING_SECURITY_DESC)
502 }
503
504
505
506
507 pub fn set_encoded_underlying_security_desc_len(&mut self, v: isize) {
509 self.message.body.set_field(tag::ENCODED_UNDERLYING_SECURITY_DESC_LEN, fixer::fix_int::FIXInt::from(v));
510 }
511
512 pub fn get_encoded_underlying_security_desc_len(&self) -> Result<isize, MessageRejectErrorEnum> {
514 let mut fld = field::EncodedUnderlyingSecurityDescLenField::new(0);
515 self.message.body.get_field(tag::ENCODED_UNDERLYING_SECURITY_DESC_LEN, &mut fld.0)?;
516 Ok(fld.value())
517 }
518
519
520 pub fn has_encoded_underlying_security_desc_len(&self) -> bool {
522 self.message.body.has(tag::ENCODED_UNDERLYING_SECURITY_DESC_LEN)
523 }
524
525
526
527
528 pub fn set_expiration_cycle(&mut self, v: isize) {
530 self.message.body.set_field(tag::EXPIRATION_CYCLE, fixer::fix_int::FIXInt::from(v));
531 }
532
533 pub fn get_expiration_cycle(&self) -> Result<isize, MessageRejectErrorEnum> {
535 let mut fld = field::ExpirationCycleField::new(0);
536 self.message.body.get_field(tag::EXPIRATION_CYCLE, &mut fld.0)?;
537 Ok(fld.value())
538 }
539
540
541 pub fn has_expiration_cycle(&self) -> bool {
543 self.message.body.has(tag::EXPIRATION_CYCLE)
544 }
545
546
547
548
549 pub fn set_factor(&mut self, val: Decimal, scale: i32) {
551 self.message.body.set_field(tag::FACTOR, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
552 }
553
554 pub fn get_factor(&self) -> Result<Decimal, MessageRejectErrorEnum> {
556 let mut fld = field::FactorField::new(Decimal::ZERO, 0);
557 self.message.body.get_field(tag::FACTOR, &mut fld.0)?;
558 Ok(fld.value())
559 }
560
561
562 pub fn has_factor(&self) -> bool {
564 self.message.body.has(tag::FACTOR)
565 }
566
567
568
569
570 pub fn set_instr_registry(&mut self, v: String) {
572 self.message.body.set_field(tag::INSTR_REGISTRY, FIXString::from(v));
573 }
574
575 pub fn get_instr_registry(&self) -> Result<String, MessageRejectErrorEnum> {
577 let mut fld = field::InstrRegistryField::new(String::new());
578 self.message.body.get_field(tag::INSTR_REGISTRY, &mut fld.0)?;
579 Ok(fld.value().to_string())
580 }
581
582
583 pub fn has_instr_registry(&self) -> bool {
585 self.message.body.has(tag::INSTR_REGISTRY)
586 }
587
588
589
590
591 pub fn set_instrmt_assignment_method(&mut self, v: String) {
593 self.message.body.set_field(tag::INSTRMT_ASSIGNMENT_METHOD, FIXString::from(v));
594 }
595
596 pub fn get_instrmt_assignment_method(&self) -> Result<String, MessageRejectErrorEnum> {
598 let mut fld = field::InstrmtAssignmentMethodField::new(String::new());
599 self.message.body.get_field(tag::INSTRMT_ASSIGNMENT_METHOD, &mut fld.0)?;
600 Ok(fld.value().to_string())
601 }
602
603
604 pub fn has_instrmt_assignment_method(&self) -> bool {
606 self.message.body.has(tag::INSTRMT_ASSIGNMENT_METHOD)
607 }
608
609
610
611
612 pub fn set_interest_accrual_date(&mut self, v: String) {
614 self.message.body.set_field(tag::INTEREST_ACCRUAL_DATE, FIXString::from(v));
615 }
616
617 pub fn get_interest_accrual_date(&self) -> Result<String, MessageRejectErrorEnum> {
619 let mut fld = field::InterestAccrualDateField::new(String::new());
620 self.message.body.get_field(tag::INTEREST_ACCRUAL_DATE, &mut fld.0)?;
621 Ok(fld.value().to_string())
622 }
623
624
625 pub fn has_interest_accrual_date(&self) -> bool {
627 self.message.body.has(tag::INTEREST_ACCRUAL_DATE)
628 }
629
630
631
632
633 pub fn set_issue_date(&mut self, v: String) {
635 self.message.body.set_field(tag::ISSUE_DATE, FIXString::from(v));
636 }
637
638 pub fn get_issue_date(&self) -> Result<String, MessageRejectErrorEnum> {
640 let mut fld = field::IssueDateField::new(String::new());
641 self.message.body.get_field(tag::ISSUE_DATE, &mut fld.0)?;
642 Ok(fld.value().to_string())
643 }
644
645
646 pub fn has_issue_date(&self) -> bool {
648 self.message.body.has(tag::ISSUE_DATE)
649 }
650
651
652
653
654 pub fn set_issuer(&mut self, v: String) {
656 self.message.body.set_field(tag::ISSUER, FIXString::from(v));
657 }
658
659 pub fn get_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
661 let mut fld = field::IssuerField::new(String::new());
662 self.message.body.get_field(tag::ISSUER, &mut fld.0)?;
663 Ok(fld.value().to_string())
664 }
665
666
667 pub fn has_issuer(&self) -> bool {
669 self.message.body.has(tag::ISSUER)
670 }
671
672
673
674
675 pub fn set_locale_of_issue(&mut self, v: String) {
677 self.message.body.set_field(tag::LOCALE_OF_ISSUE, FIXString::from(v));
678 }
679
680 pub fn get_locale_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
682 let mut fld = field::LocaleOfIssueField::new(String::new());
683 self.message.body.get_field(tag::LOCALE_OF_ISSUE, &mut fld.0)?;
684 Ok(fld.value().to_string())
685 }
686
687
688 pub fn has_locale_of_issue(&self) -> bool {
690 self.message.body.has(tag::LOCALE_OF_ISSUE)
691 }
692
693
694
695
696 pub fn set_maturity_date(&mut self, v: String) {
698 self.message.body.set_field(tag::MATURITY_DATE, FIXString::from(v));
699 }
700
701 pub fn get_maturity_date(&self) -> Result<String, MessageRejectErrorEnum> {
703 let mut fld = field::MaturityDateField::new(String::new());
704 self.message.body.get_field(tag::MATURITY_DATE, &mut fld.0)?;
705 Ok(fld.value().to_string())
706 }
707
708
709 pub fn has_maturity_date(&self) -> bool {
711 self.message.body.has(tag::MATURITY_DATE)
712 }
713
714
715
716
717 pub fn set_maturity_month_year(&mut self, v: String) {
719 self.message.body.set_field(tag::MATURITY_MONTH_YEAR, FIXString::from(v));
720 }
721
722 pub fn get_maturity_month_year(&self) -> Result<String, MessageRejectErrorEnum> {
724 let mut fld = field::MaturityMonthYearField::new(String::new());
725 self.message.body.get_field(tag::MATURITY_MONTH_YEAR, &mut fld.0)?;
726 Ok(fld.value().to_string())
727 }
728
729
730 pub fn has_maturity_month_year(&self) -> bool {
732 self.message.body.has(tag::MATURITY_MONTH_YEAR)
733 }
734
735
736
737
738 pub fn set_maturity_time(&mut self, v: String) {
740 self.message.body.set_field(tag::MATURITY_TIME, FIXString::from(v));
741 }
742
743 pub fn get_maturity_time(&self) -> Result<String, MessageRejectErrorEnum> {
745 let mut fld = field::MaturityTimeField::new(String::new());
746 self.message.body.get_field(tag::MATURITY_TIME, &mut fld.0)?;
747 Ok(fld.value().to_string())
748 }
749
750
751 pub fn has_maturity_time(&self) -> bool {
753 self.message.body.has(tag::MATURITY_TIME)
754 }
755
756
757
758
759 pub fn set_min_price_increment(&mut self, val: Decimal, scale: i32) {
761 self.message.body.set_field(tag::MIN_PRICE_INCREMENT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
762 }
763
764 pub fn get_min_price_increment(&self) -> Result<Decimal, MessageRejectErrorEnum> {
766 let mut fld = field::MinPriceIncrementField::new(Decimal::ZERO, 0);
767 self.message.body.get_field(tag::MIN_PRICE_INCREMENT, &mut fld.0)?;
768 Ok(fld.value())
769 }
770
771
772 pub fn has_min_price_increment(&self) -> bool {
774 self.message.body.has(tag::MIN_PRICE_INCREMENT)
775 }
776
777
778
779
780 pub fn set_min_trade_vol(&mut self, val: Decimal, scale: i32) {
782 self.message.body.set_field(tag::MIN_TRADE_VOL, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
783 }
784
785 pub fn get_min_trade_vol(&self) -> Result<Decimal, MessageRejectErrorEnum> {
787 let mut fld = field::MinTradeVolField::new(Decimal::ZERO, 0);
788 self.message.body.get_field(tag::MIN_TRADE_VOL, &mut fld.0)?;
789 Ok(fld.value())
790 }
791
792
793 pub fn has_min_trade_vol(&self) -> bool {
795 self.message.body.has(tag::MIN_TRADE_VOL)
796 }
797
798
799
800
801 pub fn set_nt_position_limit(&mut self, v: isize) {
803 self.message.body.set_field(tag::NT_POSITION_LIMIT, fixer::fix_int::FIXInt::from(v));
804 }
805
806 pub fn get_nt_position_limit(&self) -> Result<isize, MessageRejectErrorEnum> {
808 let mut fld = field::NTPositionLimitField::new(0);
809 self.message.body.get_field(tag::NT_POSITION_LIMIT, &mut fld.0)?;
810 Ok(fld.value())
811 }
812
813
814 pub fn has_nt_position_limit(&self) -> bool {
816 self.message.body.has(tag::NT_POSITION_LIMIT)
817 }
818
819
820
821
822 pub fn set_no_events(&mut self, v: isize) {
824 self.message.body.set_field(tag::NO_EVENTS, fixer::fix_int::FIXInt::from(v));
825 }
826
827 pub fn get_no_events(&self) -> Result<isize, MessageRejectErrorEnum> {
829 let mut fld = field::NoEventsField::new(0);
830 self.message.body.get_field(tag::NO_EVENTS, &mut fld.0)?;
831 Ok(fld.value())
832 }
833
834
835 pub fn has_no_events(&self) -> bool {
837 self.message.body.has(tag::NO_EVENTS)
838 }
839
840
841
842
843 pub fn set_no_instrument_parties(&mut self, v: isize) {
845 self.message.body.set_field(tag::NO_INSTRUMENT_PARTIES, fixer::fix_int::FIXInt::from(v));
846 }
847
848 pub fn get_no_instrument_parties(&self) -> Result<isize, MessageRejectErrorEnum> {
850 let mut fld = field::NoInstrumentPartiesField::new(0);
851 self.message.body.get_field(tag::NO_INSTRUMENT_PARTIES, &mut fld.0)?;
852 Ok(fld.value())
853 }
854
855
856 pub fn has_no_instrument_parties(&self) -> bool {
858 self.message.body.has(tag::NO_INSTRUMENT_PARTIES)
859 }
860
861
862
863
864 pub fn set_no_legs(&mut self, v: isize) {
866 self.message.body.set_field(tag::NO_LEGS, fixer::fix_int::FIXInt::from(v));
867 }
868
869 pub fn get_no_legs(&self) -> Result<isize, MessageRejectErrorEnum> {
871 let mut fld = field::NoLegsField::new(0);
872 self.message.body.get_field(tag::NO_LEGS, &mut fld.0)?;
873 Ok(fld.value())
874 }
875
876
877 pub fn has_no_legs(&self) -> bool {
879 self.message.body.has(tag::NO_LEGS)
880 }
881
882
883
884
885 pub fn set_no_security_alt_id(&mut self, v: isize) {
887 self.message.body.set_field(tag::NO_SECURITY_ALT_ID, fixer::fix_int::FIXInt::from(v));
888 }
889
890 pub fn get_no_security_alt_id(&self) -> Result<isize, MessageRejectErrorEnum> {
892 let mut fld = field::NoSecurityAltIDField::new(0);
893 self.message.body.get_field(tag::NO_SECURITY_ALT_ID, &mut fld.0)?;
894 Ok(fld.value())
895 }
896
897
898 pub fn has_no_security_alt_id(&self) -> bool {
900 self.message.body.has(tag::NO_SECURITY_ALT_ID)
901 }
902
903
904
905
906 pub fn set_no_underlying_security_alt_id(&mut self, v: isize) {
908 self.message.body.set_field(tag::NO_UNDERLYING_SECURITY_ALT_ID, fixer::fix_int::FIXInt::from(v));
909 }
910
911 pub fn get_no_underlying_security_alt_id(&self) -> Result<isize, MessageRejectErrorEnum> {
913 let mut fld = field::NoUnderlyingSecurityAltIDField::new(0);
914 self.message.body.get_field(tag::NO_UNDERLYING_SECURITY_ALT_ID, &mut fld.0)?;
915 Ok(fld.value())
916 }
917
918
919 pub fn has_no_underlying_security_alt_id(&self) -> bool {
921 self.message.body.has(tag::NO_UNDERLYING_SECURITY_ALT_ID)
922 }
923
924
925
926
927 pub fn set_no_underlying_stips(&mut self, v: isize) {
929 self.message.body.set_field(tag::NO_UNDERLYING_STIPS, fixer::fix_int::FIXInt::from(v));
930 }
931
932 pub fn get_no_underlying_stips(&self) -> Result<isize, MessageRejectErrorEnum> {
934 let mut fld = field::NoUnderlyingStipsField::new(0);
935 self.message.body.get_field(tag::NO_UNDERLYING_STIPS, &mut fld.0)?;
936 Ok(fld.value())
937 }
938
939
940 pub fn has_no_underlying_stips(&self) -> bool {
942 self.message.body.has(tag::NO_UNDERLYING_STIPS)
943 }
944
945
946
947
948 pub fn set_no_undly_instrument_parties(&mut self, v: isize) {
950 self.message.body.set_field(tag::NO_UNDLY_INSTRUMENT_PARTIES, fixer::fix_int::FIXInt::from(v));
951 }
952
953 pub fn get_no_undly_instrument_parties(&self) -> Result<isize, MessageRejectErrorEnum> {
955 let mut fld = field::NoUndlyInstrumentPartiesField::new(0);
956 self.message.body.get_field(tag::NO_UNDLY_INSTRUMENT_PARTIES, &mut fld.0)?;
957 Ok(fld.value())
958 }
959
960
961 pub fn has_no_undly_instrument_parties(&self) -> bool {
963 self.message.body.has(tag::NO_UNDLY_INSTRUMENT_PARTIES)
964 }
965
966
967
968
969 pub fn set_opt_attribute(&mut self, v: String) {
971 self.message.body.set_field(tag::OPT_ATTRIBUTE, FIXString::from(v));
972 }
973
974 pub fn get_opt_attribute(&self) -> Result<String, MessageRejectErrorEnum> {
976 let mut fld = field::OptAttributeField::new(String::new());
977 self.message.body.get_field(tag::OPT_ATTRIBUTE, &mut fld.0)?;
978 Ok(fld.value().to_string())
979 }
980
981
982 pub fn has_opt_attribute(&self) -> bool {
984 self.message.body.has(tag::OPT_ATTRIBUTE)
985 }
986
987
988
989
990 pub fn set_pool(&mut self, v: String) {
992 self.message.body.set_field(tag::POOL, FIXString::from(v));
993 }
994
995 pub fn get_pool(&self) -> Result<String, MessageRejectErrorEnum> {
997 let mut fld = field::PoolField::new(String::new());
998 self.message.body.get_field(tag::POOL, &mut fld.0)?;
999 Ok(fld.value().to_string())
1000 }
1001
1002
1003 pub fn has_pool(&self) -> bool {
1005 self.message.body.has(tag::POOL)
1006 }
1007
1008
1009
1010
1011 pub fn set_position_limit(&mut self, v: isize) {
1013 self.message.body.set_field(tag::POSITION_LIMIT, fixer::fix_int::FIXInt::from(v));
1014 }
1015
1016 pub fn get_position_limit(&self) -> Result<isize, MessageRejectErrorEnum> {
1018 let mut fld = field::PositionLimitField::new(0);
1019 self.message.body.get_field(tag::POSITION_LIMIT, &mut fld.0)?;
1020 Ok(fld.value())
1021 }
1022
1023
1024 pub fn has_position_limit(&self) -> bool {
1026 self.message.body.has(tag::POSITION_LIMIT)
1027 }
1028
1029
1030
1031
1032 pub fn set_product(&mut self, v: isize) {
1034 self.message.body.set_field(tag::PRODUCT, fixer::fix_int::FIXInt::from(v));
1035 }
1036
1037 pub fn get_product(&self) -> Result<isize, MessageRejectErrorEnum> {
1039 let mut fld = field::ProductField::new(0);
1040 self.message.body.get_field(tag::PRODUCT, &mut fld.0)?;
1041 Ok(fld.value())
1042 }
1043
1044
1045 pub fn has_product(&self) -> bool {
1047 self.message.body.has(tag::PRODUCT)
1048 }
1049
1050
1051
1052
1053 pub fn set_redemption_date(&mut self, v: String) {
1055 self.message.body.set_field(tag::REDEMPTION_DATE, FIXString::from(v));
1056 }
1057
1058 pub fn get_redemption_date(&self) -> Result<String, MessageRejectErrorEnum> {
1060 let mut fld = field::RedemptionDateField::new(String::new());
1061 self.message.body.get_field(tag::REDEMPTION_DATE, &mut fld.0)?;
1062 Ok(fld.value().to_string())
1063 }
1064
1065
1066 pub fn has_redemption_date(&self) -> bool {
1068 self.message.body.has(tag::REDEMPTION_DATE)
1069 }
1070
1071
1072
1073
1074 pub fn set_repo_collateral_security_type(&mut self, v: isize) {
1076 self.message.body.set_field(tag::REPO_COLLATERAL_SECURITY_TYPE, fixer::fix_int::FIXInt::from(v));
1077 }
1078
1079 pub fn get_repo_collateral_security_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1081 let mut fld = field::RepoCollateralSecurityTypeField::new(0);
1082 self.message.body.get_field(tag::REPO_COLLATERAL_SECURITY_TYPE, &mut fld.0)?;
1083 Ok(fld.value())
1084 }
1085
1086
1087 pub fn has_repo_collateral_security_type(&self) -> bool {
1089 self.message.body.has(tag::REPO_COLLATERAL_SECURITY_TYPE)
1090 }
1091
1092
1093
1094
1095 pub fn set_repurchase_rate(&mut self, val: Decimal, scale: i32) {
1097 self.message.body.set_field(tag::REPURCHASE_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1098 }
1099
1100 pub fn get_repurchase_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1102 let mut fld = field::RepurchaseRateField::new(Decimal::ZERO, 0);
1103 self.message.body.get_field(tag::REPURCHASE_RATE, &mut fld.0)?;
1104 Ok(fld.value())
1105 }
1106
1107
1108 pub fn has_repurchase_rate(&self) -> bool {
1110 self.message.body.has(tag::REPURCHASE_RATE)
1111 }
1112
1113
1114
1115
1116 pub fn set_repurchase_term(&mut self, v: isize) {
1118 self.message.body.set_field(tag::REPURCHASE_TERM, fixer::fix_int::FIXInt::from(v));
1119 }
1120
1121 pub fn get_repurchase_term(&self) -> Result<isize, MessageRejectErrorEnum> {
1123 let mut fld = field::RepurchaseTermField::new(0);
1124 self.message.body.get_field(tag::REPURCHASE_TERM, &mut fld.0)?;
1125 Ok(fld.value())
1126 }
1127
1128
1129 pub fn has_repurchase_term(&self) -> bool {
1131 self.message.body.has(tag::REPURCHASE_TERM)
1132 }
1133
1134
1135
1136
1137 pub fn set_round_lot(&mut self, val: Decimal, scale: i32) {
1139 self.message.body.set_field(tag::ROUND_LOT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1140 }
1141
1142 pub fn get_round_lot(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1144 let mut fld = field::RoundLotField::new(Decimal::ZERO, 0);
1145 self.message.body.get_field(tag::ROUND_LOT, &mut fld.0)?;
1146 Ok(fld.value())
1147 }
1148
1149
1150 pub fn has_round_lot(&self) -> bool {
1152 self.message.body.has(tag::ROUND_LOT)
1153 }
1154
1155
1156
1157
1158 pub fn set_security_desc(&mut self, v: String) {
1160 self.message.body.set_field(tag::SECURITY_DESC, FIXString::from(v));
1161 }
1162
1163 pub fn get_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
1165 let mut fld = field::SecurityDescField::new(String::new());
1166 self.message.body.get_field(tag::SECURITY_DESC, &mut fld.0)?;
1167 Ok(fld.value().to_string())
1168 }
1169
1170
1171 pub fn has_security_desc(&self) -> bool {
1173 self.message.body.has(tag::SECURITY_DESC)
1174 }
1175
1176
1177
1178
1179 pub fn set_security_exchange(&mut self, v: String) {
1181 self.message.body.set_field(tag::SECURITY_EXCHANGE, FIXString::from(v));
1182 }
1183
1184 pub fn get_security_exchange(&self) -> Result<String, MessageRejectErrorEnum> {
1186 let mut fld = field::SecurityExchangeField::new(String::new());
1187 self.message.body.get_field(tag::SECURITY_EXCHANGE, &mut fld.0)?;
1188 Ok(fld.value().to_string())
1189 }
1190
1191
1192 pub fn has_security_exchange(&self) -> bool {
1194 self.message.body.has(tag::SECURITY_EXCHANGE)
1195 }
1196
1197
1198
1199
1200 pub fn set_security_id(&mut self, v: String) {
1202 self.message.body.set_field(tag::SECURITY_ID, FIXString::from(v));
1203 }
1204
1205 pub fn get_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
1207 let mut fld = field::SecurityIDField::new(String::new());
1208 self.message.body.get_field(tag::SECURITY_ID, &mut fld.0)?;
1209 Ok(fld.value().to_string())
1210 }
1211
1212
1213 pub fn has_security_id(&self) -> bool {
1215 self.message.body.has(tag::SECURITY_ID)
1216 }
1217
1218
1219
1220
1221 pub fn set_security_id_source(&mut self, v: String) {
1223 self.message.body.set_field(tag::SECURITY_ID_SOURCE, FIXString::from(v));
1224 }
1225
1226 pub fn get_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
1228 let mut fld = field::SecurityIDSourceField::new(String::new());
1229 self.message.body.get_field(tag::SECURITY_ID_SOURCE, &mut fld.0)?;
1230 Ok(fld.value().to_string())
1231 }
1232
1233
1234 pub fn has_security_id_source(&self) -> bool {
1236 self.message.body.has(tag::SECURITY_ID_SOURCE)
1237 }
1238
1239
1240
1241
1242 pub fn set_security_report_id(&mut self, v: isize) {
1244 self.message.body.set_field(tag::SECURITY_REPORT_ID, fixer::fix_int::FIXInt::from(v));
1245 }
1246
1247 pub fn get_security_report_id(&self) -> Result<isize, MessageRejectErrorEnum> {
1249 let mut fld = field::SecurityReportIDField::new(0);
1250 self.message.body.get_field(tag::SECURITY_REPORT_ID, &mut fld.0)?;
1251 Ok(fld.value())
1252 }
1253
1254
1255 pub fn has_security_report_id(&self) -> bool {
1257 self.message.body.has(tag::SECURITY_REPORT_ID)
1258 }
1259
1260
1261
1262
1263 pub fn set_security_req_id(&mut self, v: String) {
1265 self.message.body.set_field(tag::SECURITY_REQ_ID, FIXString::from(v));
1266 }
1267
1268 pub fn get_security_req_id(&self) -> Result<String, MessageRejectErrorEnum> {
1270 let mut fld = field::SecurityReqIDField::new(String::new());
1271 self.message.body.get_field(tag::SECURITY_REQ_ID, &mut fld.0)?;
1272 Ok(fld.value().to_string())
1273 }
1274
1275
1276 pub fn has_security_req_id(&self) -> bool {
1278 self.message.body.has(tag::SECURITY_REQ_ID)
1279 }
1280
1281
1282
1283
1284 pub fn set_security_response_id(&mut self, v: String) {
1286 self.message.body.set_field(tag::SECURITY_RESPONSE_ID, FIXString::from(v));
1287 }
1288
1289 pub fn get_security_response_id(&self) -> Result<String, MessageRejectErrorEnum> {
1291 let mut fld = field::SecurityResponseIDField::new(String::new());
1292 self.message.body.get_field(tag::SECURITY_RESPONSE_ID, &mut fld.0)?;
1293 Ok(fld.value().to_string())
1294 }
1295
1296
1297 pub fn has_security_response_id(&self) -> bool {
1299 self.message.body.has(tag::SECURITY_RESPONSE_ID)
1300 }
1301
1302
1303
1304
1305 pub fn set_security_response_type(&mut self, v: isize) {
1307 self.message.body.set_field(tag::SECURITY_RESPONSE_TYPE, fixer::fix_int::FIXInt::from(v));
1308 }
1309
1310 pub fn get_security_response_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1312 let mut fld = field::SecurityResponseTypeField::new(0);
1313 self.message.body.get_field(tag::SECURITY_RESPONSE_TYPE, &mut fld.0)?;
1314 Ok(fld.value())
1315 }
1316
1317
1318 pub fn has_security_response_type(&self) -> bool {
1320 self.message.body.has(tag::SECURITY_RESPONSE_TYPE)
1321 }
1322
1323
1324
1325
1326 pub fn set_security_status(&mut self, v: String) {
1328 self.message.body.set_field(tag::SECURITY_STATUS, FIXString::from(v));
1329 }
1330
1331 pub fn get_security_status(&self) -> Result<String, MessageRejectErrorEnum> {
1333 let mut fld = field::SecurityStatusField::new(String::new());
1334 self.message.body.get_field(tag::SECURITY_STATUS, &mut fld.0)?;
1335 Ok(fld.value().to_string())
1336 }
1337
1338
1339 pub fn has_security_status(&self) -> bool {
1341 self.message.body.has(tag::SECURITY_STATUS)
1342 }
1343
1344
1345
1346
1347 pub fn set_security_sub_type(&mut self, v: String) {
1349 self.message.body.set_field(tag::SECURITY_SUB_TYPE, FIXString::from(v));
1350 }
1351
1352 pub fn get_security_sub_type(&self) -> Result<String, MessageRejectErrorEnum> {
1354 let mut fld = field::SecuritySubTypeField::new(String::new());
1355 self.message.body.get_field(tag::SECURITY_SUB_TYPE, &mut fld.0)?;
1356 Ok(fld.value().to_string())
1357 }
1358
1359
1360 pub fn has_security_sub_type(&self) -> bool {
1362 self.message.body.has(tag::SECURITY_SUB_TYPE)
1363 }
1364
1365
1366
1367
1368 pub fn set_security_type(&mut self, v: String) {
1370 self.message.body.set_field(tag::SECURITY_TYPE, FIXString::from(v));
1371 }
1372
1373 pub fn get_security_type(&self) -> Result<String, MessageRejectErrorEnum> {
1375 let mut fld = field::SecurityTypeField::new(String::new());
1376 self.message.body.get_field(tag::SECURITY_TYPE, &mut fld.0)?;
1377 Ok(fld.value().to_string())
1378 }
1379
1380
1381 pub fn has_security_type(&self) -> bool {
1383 self.message.body.has(tag::SECURITY_TYPE)
1384 }
1385
1386
1387
1388
1389 pub fn set_security_update_action(&mut self, v: String) {
1391 self.message.body.set_field(tag::SECURITY_UPDATE_ACTION, FIXString::from(v));
1392 }
1393
1394 pub fn get_security_update_action(&self) -> Result<String, MessageRejectErrorEnum> {
1396 let mut fld = field::SecurityUpdateActionField::new(String::new());
1397 self.message.body.get_field(tag::SECURITY_UPDATE_ACTION, &mut fld.0)?;
1398 Ok(fld.value().to_string())
1399 }
1400
1401
1402 pub fn has_security_update_action(&self) -> bool {
1404 self.message.body.has(tag::SECURITY_UPDATE_ACTION)
1405 }
1406
1407
1408
1409
1410 pub fn set_settle_on_open_flag(&mut self, v: String) {
1412 self.message.body.set_field(tag::SETTLE_ON_OPEN_FLAG, FIXString::from(v));
1413 }
1414
1415 pub fn get_settle_on_open_flag(&self) -> Result<String, MessageRejectErrorEnum> {
1417 let mut fld = field::SettleOnOpenFlagField::new(String::new());
1418 self.message.body.get_field(tag::SETTLE_ON_OPEN_FLAG, &mut fld.0)?;
1419 Ok(fld.value().to_string())
1420 }
1421
1422
1423 pub fn has_settle_on_open_flag(&self) -> bool {
1425 self.message.body.has(tag::SETTLE_ON_OPEN_FLAG)
1426 }
1427
1428
1429
1430
1431 pub fn set_state_or_province_of_issue(&mut self, v: String) {
1433 self.message.body.set_field(tag::STATE_OR_PROVINCE_OF_ISSUE, FIXString::from(v));
1434 }
1435
1436 pub fn get_state_or_province_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
1438 let mut fld = field::StateOrProvinceOfIssueField::new(String::new());
1439 self.message.body.get_field(tag::STATE_OR_PROVINCE_OF_ISSUE, &mut fld.0)?;
1440 Ok(fld.value().to_string())
1441 }
1442
1443
1444 pub fn has_state_or_province_of_issue(&self) -> bool {
1446 self.message.body.has(tag::STATE_OR_PROVINCE_OF_ISSUE)
1447 }
1448
1449
1450
1451
1452 pub fn set_strike_currency(&mut self, v: String) {
1454 self.message.body.set_field(tag::STRIKE_CURRENCY, FIXString::from(v));
1455 }
1456
1457 pub fn get_strike_currency(&self) -> Result<String, MessageRejectErrorEnum> {
1459 let mut fld = field::StrikeCurrencyField::new(String::new());
1460 self.message.body.get_field(tag::STRIKE_CURRENCY, &mut fld.0)?;
1461 Ok(fld.value().to_string())
1462 }
1463
1464
1465 pub fn has_strike_currency(&self) -> bool {
1467 self.message.body.has(tag::STRIKE_CURRENCY)
1468 }
1469
1470
1471
1472
1473 pub fn set_strike_multiplier(&mut self, val: Decimal, scale: i32) {
1475 self.message.body.set_field(tag::STRIKE_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1476 }
1477
1478 pub fn get_strike_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1480 let mut fld = field::StrikeMultiplierField::new(Decimal::ZERO, 0);
1481 self.message.body.get_field(tag::STRIKE_MULTIPLIER, &mut fld.0)?;
1482 Ok(fld.value())
1483 }
1484
1485
1486 pub fn has_strike_multiplier(&self) -> bool {
1488 self.message.body.has(tag::STRIKE_MULTIPLIER)
1489 }
1490
1491
1492
1493
1494 pub fn set_strike_price(&mut self, val: Decimal, scale: i32) {
1496 self.message.body.set_field(tag::STRIKE_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1497 }
1498
1499 pub fn get_strike_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1501 let mut fld = field::StrikePriceField::new(Decimal::ZERO, 0);
1502 self.message.body.get_field(tag::STRIKE_PRICE, &mut fld.0)?;
1503 Ok(fld.value())
1504 }
1505
1506
1507 pub fn has_strike_price(&self) -> bool {
1509 self.message.body.has(tag::STRIKE_PRICE)
1510 }
1511
1512
1513
1514
1515 pub fn set_strike_value(&mut self, val: Decimal, scale: i32) {
1517 self.message.body.set_field(tag::STRIKE_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1518 }
1519
1520 pub fn get_strike_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1522 let mut fld = field::StrikeValueField::new(Decimal::ZERO, 0);
1523 self.message.body.get_field(tag::STRIKE_VALUE, &mut fld.0)?;
1524 Ok(fld.value())
1525 }
1526
1527
1528 pub fn has_strike_value(&self) -> bool {
1530 self.message.body.has(tag::STRIKE_VALUE)
1531 }
1532
1533
1534
1535
1536 pub fn set_symbol(&mut self, v: String) {
1538 self.message.body.set_field(tag::SYMBOL, FIXString::from(v));
1539 }
1540
1541 pub fn get_symbol(&self) -> Result<String, MessageRejectErrorEnum> {
1543 let mut fld = field::SymbolField::new(String::new());
1544 self.message.body.get_field(tag::SYMBOL, &mut fld.0)?;
1545 Ok(fld.value().to_string())
1546 }
1547
1548
1549 pub fn has_symbol(&self) -> bool {
1551 self.message.body.has(tag::SYMBOL)
1552 }
1553
1554
1555
1556
1557 pub fn set_symbol_sfx(&mut self, v: String) {
1559 self.message.body.set_field(tag::SYMBOL_SFX, FIXString::from(v));
1560 }
1561
1562 pub fn get_symbol_sfx(&self) -> Result<String, MessageRejectErrorEnum> {
1564 let mut fld = field::SymbolSfxField::new(String::new());
1565 self.message.body.get_field(tag::SYMBOL_SFX, &mut fld.0)?;
1566 Ok(fld.value().to_string())
1567 }
1568
1569
1570 pub fn has_symbol_sfx(&self) -> bool {
1572 self.message.body.has(tag::SYMBOL_SFX)
1573 }
1574
1575
1576
1577
1578 pub fn set_text(&mut self, v: String) {
1580 self.message.body.set_field(tag::TEXT, FIXString::from(v));
1581 }
1582
1583 pub fn get_text(&self) -> Result<String, MessageRejectErrorEnum> {
1585 let mut fld = field::TextField::new(String::new());
1586 self.message.body.get_field(tag::TEXT, &mut fld.0)?;
1587 Ok(fld.value().to_string())
1588 }
1589
1590
1591 pub fn has_text(&self) -> bool {
1593 self.message.body.has(tag::TEXT)
1594 }
1595
1596
1597
1598
1599 pub fn set_time_unit(&mut self, v: String) {
1601 self.message.body.set_field(tag::TIME_UNIT, FIXString::from(v));
1602 }
1603
1604 pub fn get_time_unit(&self) -> Result<String, MessageRejectErrorEnum> {
1606 let mut fld = field::TimeUnitField::new(String::new());
1607 self.message.body.get_field(tag::TIME_UNIT, &mut fld.0)?;
1608 Ok(fld.value().to_string())
1609 }
1610
1611
1612 pub fn has_time_unit(&self) -> bool {
1614 self.message.body.has(tag::TIME_UNIT)
1615 }
1616
1617
1618
1619
1620 pub fn set_trading_session_id(&mut self, v: String) {
1622 self.message.body.set_field(tag::TRADING_SESSION_ID, FIXString::from(v));
1623 }
1624
1625 pub fn get_trading_session_id(&self) -> Result<String, MessageRejectErrorEnum> {
1627 let mut fld = field::TradingSessionIDField::new(String::new());
1628 self.message.body.get_field(tag::TRADING_SESSION_ID, &mut fld.0)?;
1629 Ok(fld.value().to_string())
1630 }
1631
1632
1633 pub fn has_trading_session_id(&self) -> bool {
1635 self.message.body.has(tag::TRADING_SESSION_ID)
1636 }
1637
1638
1639
1640
1641 pub fn set_trading_session_sub_id(&mut self, v: String) {
1643 self.message.body.set_field(tag::TRADING_SESSION_SUB_ID, FIXString::from(v));
1644 }
1645
1646 pub fn get_trading_session_sub_id(&self) -> Result<String, MessageRejectErrorEnum> {
1648 let mut fld = field::TradingSessionSubIDField::new(String::new());
1649 self.message.body.get_field(tag::TRADING_SESSION_SUB_ID, &mut fld.0)?;
1650 Ok(fld.value().to_string())
1651 }
1652
1653
1654 pub fn has_trading_session_sub_id(&self) -> bool {
1656 self.message.body.has(tag::TRADING_SESSION_SUB_ID)
1657 }
1658
1659
1660
1661
1662 pub fn set_underlying_adjusted_quantity(&mut self, val: Decimal, scale: i32) {
1664 self.message.body.set_field(tag::UNDERLYING_ADJUSTED_QUANTITY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1665 }
1666
1667 pub fn get_underlying_adjusted_quantity(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1669 let mut fld = field::UnderlyingAdjustedQuantityField::new(Decimal::ZERO, 0);
1670 self.message.body.get_field(tag::UNDERLYING_ADJUSTED_QUANTITY, &mut fld.0)?;
1671 Ok(fld.value())
1672 }
1673
1674
1675 pub fn has_underlying_adjusted_quantity(&self) -> bool {
1677 self.message.body.has(tag::UNDERLYING_ADJUSTED_QUANTITY)
1678 }
1679
1680
1681
1682
1683 pub fn set_underlying_allocation_percent(&mut self, val: Decimal, scale: i32) {
1685 self.message.body.set_field(tag::UNDERLYING_ALLOCATION_PERCENT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1686 }
1687
1688 pub fn get_underlying_allocation_percent(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1690 let mut fld = field::UnderlyingAllocationPercentField::new(Decimal::ZERO, 0);
1691 self.message.body.get_field(tag::UNDERLYING_ALLOCATION_PERCENT, &mut fld.0)?;
1692 Ok(fld.value())
1693 }
1694
1695
1696 pub fn has_underlying_allocation_percent(&self) -> bool {
1698 self.message.body.has(tag::UNDERLYING_ALLOCATION_PERCENT)
1699 }
1700
1701
1702
1703
1704 pub fn set_underlying_cfi_code(&mut self, v: String) {
1706 self.message.body.set_field(tag::UNDERLYING_CFI_CODE, FIXString::from(v));
1707 }
1708
1709 pub fn get_underlying_cfi_code(&self) -> Result<String, MessageRejectErrorEnum> {
1711 let mut fld = field::UnderlyingCFICodeField::new(String::new());
1712 self.message.body.get_field(tag::UNDERLYING_CFI_CODE, &mut fld.0)?;
1713 Ok(fld.value().to_string())
1714 }
1715
1716
1717 pub fn has_underlying_cfi_code(&self) -> bool {
1719 self.message.body.has(tag::UNDERLYING_CFI_CODE)
1720 }
1721
1722
1723
1724
1725 pub fn set_underlying_cp_program(&mut self, v: String) {
1727 self.message.body.set_field(tag::UNDERLYING_CP_PROGRAM, FIXString::from(v));
1728 }
1729
1730 pub fn get_underlying_cp_program(&self) -> Result<String, MessageRejectErrorEnum> {
1732 let mut fld = field::UnderlyingCPProgramField::new(String::new());
1733 self.message.body.get_field(tag::UNDERLYING_CP_PROGRAM, &mut fld.0)?;
1734 Ok(fld.value().to_string())
1735 }
1736
1737
1738 pub fn has_underlying_cp_program(&self) -> bool {
1740 self.message.body.has(tag::UNDERLYING_CP_PROGRAM)
1741 }
1742
1743
1744
1745
1746 pub fn set_underlying_cp_reg_type(&mut self, v: String) {
1748 self.message.body.set_field(tag::UNDERLYING_CP_REG_TYPE, FIXString::from(v));
1749 }
1750
1751 pub fn get_underlying_cp_reg_type(&self) -> Result<String, MessageRejectErrorEnum> {
1753 let mut fld = field::UnderlyingCPRegTypeField::new(String::new());
1754 self.message.body.get_field(tag::UNDERLYING_CP_REG_TYPE, &mut fld.0)?;
1755 Ok(fld.value().to_string())
1756 }
1757
1758
1759 pub fn has_underlying_cp_reg_type(&self) -> bool {
1761 self.message.body.has(tag::UNDERLYING_CP_REG_TYPE)
1762 }
1763
1764
1765
1766
1767 pub fn set_underlying_cap_value(&mut self, val: Decimal, scale: i32) {
1769 self.message.body.set_field(tag::UNDERLYING_CAP_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1770 }
1771
1772 pub fn get_underlying_cap_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1774 let mut fld = field::UnderlyingCapValueField::new(Decimal::ZERO, 0);
1775 self.message.body.get_field(tag::UNDERLYING_CAP_VALUE, &mut fld.0)?;
1776 Ok(fld.value())
1777 }
1778
1779
1780 pub fn has_underlying_cap_value(&self) -> bool {
1782 self.message.body.has(tag::UNDERLYING_CAP_VALUE)
1783 }
1784
1785
1786
1787
1788 pub fn set_underlying_cash_amount(&mut self, val: Decimal, scale: i32) {
1790 self.message.body.set_field(tag::UNDERLYING_CASH_AMOUNT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1791 }
1792
1793 pub fn get_underlying_cash_amount(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1795 let mut fld = field::UnderlyingCashAmountField::new(Decimal::ZERO, 0);
1796 self.message.body.get_field(tag::UNDERLYING_CASH_AMOUNT, &mut fld.0)?;
1797 Ok(fld.value())
1798 }
1799
1800
1801 pub fn has_underlying_cash_amount(&self) -> bool {
1803 self.message.body.has(tag::UNDERLYING_CASH_AMOUNT)
1804 }
1805
1806
1807
1808
1809 pub fn set_underlying_cash_type(&mut self, v: String) {
1811 self.message.body.set_field(tag::UNDERLYING_CASH_TYPE, FIXString::from(v));
1812 }
1813
1814 pub fn get_underlying_cash_type(&self) -> Result<String, MessageRejectErrorEnum> {
1816 let mut fld = field::UnderlyingCashTypeField::new(String::new());
1817 self.message.body.get_field(tag::UNDERLYING_CASH_TYPE, &mut fld.0)?;
1818 Ok(fld.value().to_string())
1819 }
1820
1821
1822 pub fn has_underlying_cash_type(&self) -> bool {
1824 self.message.body.has(tag::UNDERLYING_CASH_TYPE)
1825 }
1826
1827
1828
1829
1830 pub fn set_underlying_contract_multiplier(&mut self, val: Decimal, scale: i32) {
1832 self.message.body.set_field(tag::UNDERLYING_CONTRACT_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1833 }
1834
1835 pub fn get_underlying_contract_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1837 let mut fld = field::UnderlyingContractMultiplierField::new(Decimal::ZERO, 0);
1838 self.message.body.get_field(tag::UNDERLYING_CONTRACT_MULTIPLIER, &mut fld.0)?;
1839 Ok(fld.value())
1840 }
1841
1842
1843 pub fn has_underlying_contract_multiplier(&self) -> bool {
1845 self.message.body.has(tag::UNDERLYING_CONTRACT_MULTIPLIER)
1846 }
1847
1848
1849
1850
1851 pub fn set_underlying_country_of_issue(&mut self, v: String) {
1853 self.message.body.set_field(tag::UNDERLYING_COUNTRY_OF_ISSUE, FIXString::from(v));
1854 }
1855
1856 pub fn get_underlying_country_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
1858 let mut fld = field::UnderlyingCountryOfIssueField::new(String::new());
1859 self.message.body.get_field(tag::UNDERLYING_COUNTRY_OF_ISSUE, &mut fld.0)?;
1860 Ok(fld.value().to_string())
1861 }
1862
1863
1864 pub fn has_underlying_country_of_issue(&self) -> bool {
1866 self.message.body.has(tag::UNDERLYING_COUNTRY_OF_ISSUE)
1867 }
1868
1869
1870
1871
1872 pub fn set_underlying_coupon_payment_date(&mut self, v: String) {
1874 self.message.body.set_field(tag::UNDERLYING_COUPON_PAYMENT_DATE, FIXString::from(v));
1875 }
1876
1877 pub fn get_underlying_coupon_payment_date(&self) -> Result<String, MessageRejectErrorEnum> {
1879 let mut fld = field::UnderlyingCouponPaymentDateField::new(String::new());
1880 self.message.body.get_field(tag::UNDERLYING_COUPON_PAYMENT_DATE, &mut fld.0)?;
1881 Ok(fld.value().to_string())
1882 }
1883
1884
1885 pub fn has_underlying_coupon_payment_date(&self) -> bool {
1887 self.message.body.has(tag::UNDERLYING_COUPON_PAYMENT_DATE)
1888 }
1889
1890
1891
1892
1893 pub fn set_underlying_coupon_rate(&mut self, val: Decimal, scale: i32) {
1895 self.message.body.set_field(tag::UNDERLYING_COUPON_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1896 }
1897
1898 pub fn get_underlying_coupon_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1900 let mut fld = field::UnderlyingCouponRateField::new(Decimal::ZERO, 0);
1901 self.message.body.get_field(tag::UNDERLYING_COUPON_RATE, &mut fld.0)?;
1902 Ok(fld.value())
1903 }
1904
1905
1906 pub fn has_underlying_coupon_rate(&self) -> bool {
1908 self.message.body.has(tag::UNDERLYING_COUPON_RATE)
1909 }
1910
1911
1912
1913
1914 pub fn set_underlying_credit_rating(&mut self, v: String) {
1916 self.message.body.set_field(tag::UNDERLYING_CREDIT_RATING, FIXString::from(v));
1917 }
1918
1919 pub fn get_underlying_credit_rating(&self) -> Result<String, MessageRejectErrorEnum> {
1921 let mut fld = field::UnderlyingCreditRatingField::new(String::new());
1922 self.message.body.get_field(tag::UNDERLYING_CREDIT_RATING, &mut fld.0)?;
1923 Ok(fld.value().to_string())
1924 }
1925
1926
1927 pub fn has_underlying_credit_rating(&self) -> bool {
1929 self.message.body.has(tag::UNDERLYING_CREDIT_RATING)
1930 }
1931
1932
1933
1934
1935 pub fn set_underlying_currency(&mut self, v: String) {
1937 self.message.body.set_field(tag::UNDERLYING_CURRENCY, FIXString::from(v));
1938 }
1939
1940 pub fn get_underlying_currency(&self) -> Result<String, MessageRejectErrorEnum> {
1942 let mut fld = field::UnderlyingCurrencyField::new(String::new());
1943 self.message.body.get_field(tag::UNDERLYING_CURRENCY, &mut fld.0)?;
1944 Ok(fld.value().to_string())
1945 }
1946
1947
1948 pub fn has_underlying_currency(&self) -> bool {
1950 self.message.body.has(tag::UNDERLYING_CURRENCY)
1951 }
1952
1953
1954
1955
1956 pub fn set_underlying_current_value(&mut self, val: Decimal, scale: i32) {
1958 self.message.body.set_field(tag::UNDERLYING_CURRENT_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1959 }
1960
1961 pub fn get_underlying_current_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1963 let mut fld = field::UnderlyingCurrentValueField::new(Decimal::ZERO, 0);
1964 self.message.body.get_field(tag::UNDERLYING_CURRENT_VALUE, &mut fld.0)?;
1965 Ok(fld.value())
1966 }
1967
1968
1969 pub fn has_underlying_current_value(&self) -> bool {
1971 self.message.body.has(tag::UNDERLYING_CURRENT_VALUE)
1972 }
1973
1974
1975
1976
1977 pub fn set_underlying_dirty_price(&mut self, val: Decimal, scale: i32) {
1979 self.message.body.set_field(tag::UNDERLYING_DIRTY_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1980 }
1981
1982 pub fn get_underlying_dirty_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1984 let mut fld = field::UnderlyingDirtyPriceField::new(Decimal::ZERO, 0);
1985 self.message.body.get_field(tag::UNDERLYING_DIRTY_PRICE, &mut fld.0)?;
1986 Ok(fld.value())
1987 }
1988
1989
1990 pub fn has_underlying_dirty_price(&self) -> bool {
1992 self.message.body.has(tag::UNDERLYING_DIRTY_PRICE)
1993 }
1994
1995
1996
1997
1998 pub fn set_underlying_end_price(&mut self, val: Decimal, scale: i32) {
2000 self.message.body.set_field(tag::UNDERLYING_END_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2001 }
2002
2003 pub fn get_underlying_end_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2005 let mut fld = field::UnderlyingEndPriceField::new(Decimal::ZERO, 0);
2006 self.message.body.get_field(tag::UNDERLYING_END_PRICE, &mut fld.0)?;
2007 Ok(fld.value())
2008 }
2009
2010
2011 pub fn has_underlying_end_price(&self) -> bool {
2013 self.message.body.has(tag::UNDERLYING_END_PRICE)
2014 }
2015
2016
2017
2018
2019 pub fn set_underlying_end_value(&mut self, val: Decimal, scale: i32) {
2021 self.message.body.set_field(tag::UNDERLYING_END_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2022 }
2023
2024 pub fn get_underlying_end_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2026 let mut fld = field::UnderlyingEndValueField::new(Decimal::ZERO, 0);
2027 self.message.body.get_field(tag::UNDERLYING_END_VALUE, &mut fld.0)?;
2028 Ok(fld.value())
2029 }
2030
2031
2032 pub fn has_underlying_end_value(&self) -> bool {
2034 self.message.body.has(tag::UNDERLYING_END_VALUE)
2035 }
2036
2037
2038
2039
2040 pub fn set_underlying_fx_rate(&mut self, val: Decimal, scale: i32) {
2042 self.message.body.set_field(tag::UNDERLYING_FX_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2043 }
2044
2045 pub fn get_underlying_fx_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2047 let mut fld = field::UnderlyingFXRateField::new(Decimal::ZERO, 0);
2048 self.message.body.get_field(tag::UNDERLYING_FX_RATE, &mut fld.0)?;
2049 Ok(fld.value())
2050 }
2051
2052
2053 pub fn has_underlying_fx_rate(&self) -> bool {
2055 self.message.body.has(tag::UNDERLYING_FX_RATE)
2056 }
2057
2058
2059
2060
2061 pub fn set_underlying_fx_rate_calc(&mut self, v: String) {
2063 self.message.body.set_field(tag::UNDERLYING_FX_RATE_CALC, FIXString::from(v));
2064 }
2065
2066 pub fn get_underlying_fx_rate_calc(&self) -> Result<String, MessageRejectErrorEnum> {
2068 let mut fld = field::UnderlyingFXRateCalcField::new(String::new());
2069 self.message.body.get_field(tag::UNDERLYING_FX_RATE_CALC, &mut fld.0)?;
2070 Ok(fld.value().to_string())
2071 }
2072
2073
2074 pub fn has_underlying_fx_rate_calc(&self) -> bool {
2076 self.message.body.has(tag::UNDERLYING_FX_RATE_CALC)
2077 }
2078
2079
2080
2081
2082 pub fn set_underlying_factor(&mut self, val: Decimal, scale: i32) {
2084 self.message.body.set_field(tag::UNDERLYING_FACTOR, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2085 }
2086
2087 pub fn get_underlying_factor(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2089 let mut fld = field::UnderlyingFactorField::new(Decimal::ZERO, 0);
2090 self.message.body.get_field(tag::UNDERLYING_FACTOR, &mut fld.0)?;
2091 Ok(fld.value())
2092 }
2093
2094
2095 pub fn has_underlying_factor(&self) -> bool {
2097 self.message.body.has(tag::UNDERLYING_FACTOR)
2098 }
2099
2100
2101
2102
2103 pub fn set_underlying_instr_registry(&mut self, v: String) {
2105 self.message.body.set_field(tag::UNDERLYING_INSTR_REGISTRY, FIXString::from(v));
2106 }
2107
2108 pub fn get_underlying_instr_registry(&self) -> Result<String, MessageRejectErrorEnum> {
2110 let mut fld = field::UnderlyingInstrRegistryField::new(String::new());
2111 self.message.body.get_field(tag::UNDERLYING_INSTR_REGISTRY, &mut fld.0)?;
2112 Ok(fld.value().to_string())
2113 }
2114
2115
2116 pub fn has_underlying_instr_registry(&self) -> bool {
2118 self.message.body.has(tag::UNDERLYING_INSTR_REGISTRY)
2119 }
2120
2121
2122
2123
2124 pub fn set_underlying_issue_date(&mut self, v: String) {
2126 self.message.body.set_field(tag::UNDERLYING_ISSUE_DATE, FIXString::from(v));
2127 }
2128
2129 pub fn get_underlying_issue_date(&self) -> Result<String, MessageRejectErrorEnum> {
2131 let mut fld = field::UnderlyingIssueDateField::new(String::new());
2132 self.message.body.get_field(tag::UNDERLYING_ISSUE_DATE, &mut fld.0)?;
2133 Ok(fld.value().to_string())
2134 }
2135
2136
2137 pub fn has_underlying_issue_date(&self) -> bool {
2139 self.message.body.has(tag::UNDERLYING_ISSUE_DATE)
2140 }
2141
2142
2143
2144
2145 pub fn set_underlying_issuer(&mut self, v: String) {
2147 self.message.body.set_field(tag::UNDERLYING_ISSUER, FIXString::from(v));
2148 }
2149
2150 pub fn get_underlying_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
2152 let mut fld = field::UnderlyingIssuerField::new(String::new());
2153 self.message.body.get_field(tag::UNDERLYING_ISSUER, &mut fld.0)?;
2154 Ok(fld.value().to_string())
2155 }
2156
2157
2158 pub fn has_underlying_issuer(&self) -> bool {
2160 self.message.body.has(tag::UNDERLYING_ISSUER)
2161 }
2162
2163
2164
2165
2166 pub fn set_underlying_locale_of_issue(&mut self, v: String) {
2168 self.message.body.set_field(tag::UNDERLYING_LOCALE_OF_ISSUE, FIXString::from(v));
2169 }
2170
2171 pub fn get_underlying_locale_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
2173 let mut fld = field::UnderlyingLocaleOfIssueField::new(String::new());
2174 self.message.body.get_field(tag::UNDERLYING_LOCALE_OF_ISSUE, &mut fld.0)?;
2175 Ok(fld.value().to_string())
2176 }
2177
2178
2179 pub fn has_underlying_locale_of_issue(&self) -> bool {
2181 self.message.body.has(tag::UNDERLYING_LOCALE_OF_ISSUE)
2182 }
2183
2184
2185
2186
2187 pub fn set_underlying_maturity_date(&mut self, v: String) {
2189 self.message.body.set_field(tag::UNDERLYING_MATURITY_DATE, FIXString::from(v));
2190 }
2191
2192 pub fn get_underlying_maturity_date(&self) -> Result<String, MessageRejectErrorEnum> {
2194 let mut fld = field::UnderlyingMaturityDateField::new(String::new());
2195 self.message.body.get_field(tag::UNDERLYING_MATURITY_DATE, &mut fld.0)?;
2196 Ok(fld.value().to_string())
2197 }
2198
2199
2200 pub fn has_underlying_maturity_date(&self) -> bool {
2202 self.message.body.has(tag::UNDERLYING_MATURITY_DATE)
2203 }
2204
2205
2206
2207
2208 pub fn set_underlying_maturity_month_year(&mut self, v: String) {
2210 self.message.body.set_field(tag::UNDERLYING_MATURITY_MONTH_YEAR, FIXString::from(v));
2211 }
2212
2213 pub fn get_underlying_maturity_month_year(&self) -> Result<String, MessageRejectErrorEnum> {
2215 let mut fld = field::UnderlyingMaturityMonthYearField::new(String::new());
2216 self.message.body.get_field(tag::UNDERLYING_MATURITY_MONTH_YEAR, &mut fld.0)?;
2217 Ok(fld.value().to_string())
2218 }
2219
2220
2221 pub fn has_underlying_maturity_month_year(&self) -> bool {
2223 self.message.body.has(tag::UNDERLYING_MATURITY_MONTH_YEAR)
2224 }
2225
2226
2227
2228
2229 pub fn set_underlying_opt_attribute(&mut self, v: String) {
2231 self.message.body.set_field(tag::UNDERLYING_OPT_ATTRIBUTE, FIXString::from(v));
2232 }
2233
2234 pub fn get_underlying_opt_attribute(&self) -> Result<String, MessageRejectErrorEnum> {
2236 let mut fld = field::UnderlyingOptAttributeField::new(String::new());
2237 self.message.body.get_field(tag::UNDERLYING_OPT_ATTRIBUTE, &mut fld.0)?;
2238 Ok(fld.value().to_string())
2239 }
2240
2241
2242 pub fn has_underlying_opt_attribute(&self) -> bool {
2244 self.message.body.has(tag::UNDERLYING_OPT_ATTRIBUTE)
2245 }
2246
2247
2248
2249
2250 pub fn set_underlying_product(&mut self, v: isize) {
2252 self.message.body.set_field(tag::UNDERLYING_PRODUCT, fixer::fix_int::FIXInt::from(v));
2253 }
2254
2255 pub fn get_underlying_product(&self) -> Result<isize, MessageRejectErrorEnum> {
2257 let mut fld = field::UnderlyingProductField::new(0);
2258 self.message.body.get_field(tag::UNDERLYING_PRODUCT, &mut fld.0)?;
2259 Ok(fld.value())
2260 }
2261
2262
2263 pub fn has_underlying_product(&self) -> bool {
2265 self.message.body.has(tag::UNDERLYING_PRODUCT)
2266 }
2267
2268
2269
2270
2271 pub fn set_underlying_px(&mut self, val: Decimal, scale: i32) {
2273 self.message.body.set_field(tag::UNDERLYING_PX, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2274 }
2275
2276 pub fn get_underlying_px(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2278 let mut fld = field::UnderlyingPxField::new(Decimal::ZERO, 0);
2279 self.message.body.get_field(tag::UNDERLYING_PX, &mut fld.0)?;
2280 Ok(fld.value())
2281 }
2282
2283
2284 pub fn has_underlying_px(&self) -> bool {
2286 self.message.body.has(tag::UNDERLYING_PX)
2287 }
2288
2289
2290
2291
2292 pub fn set_underlying_qty(&mut self, val: Decimal, scale: i32) {
2294 self.message.body.set_field(tag::UNDERLYING_QTY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2295 }
2296
2297 pub fn get_underlying_qty(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2299 let mut fld = field::UnderlyingQtyField::new(Decimal::ZERO, 0);
2300 self.message.body.get_field(tag::UNDERLYING_QTY, &mut fld.0)?;
2301 Ok(fld.value())
2302 }
2303
2304
2305 pub fn has_underlying_qty(&self) -> bool {
2307 self.message.body.has(tag::UNDERLYING_QTY)
2308 }
2309
2310
2311
2312
2313 pub fn set_underlying_redemption_date(&mut self, v: String) {
2315 self.message.body.set_field(tag::UNDERLYING_REDEMPTION_DATE, FIXString::from(v));
2316 }
2317
2318 pub fn get_underlying_redemption_date(&self) -> Result<String, MessageRejectErrorEnum> {
2320 let mut fld = field::UnderlyingRedemptionDateField::new(String::new());
2321 self.message.body.get_field(tag::UNDERLYING_REDEMPTION_DATE, &mut fld.0)?;
2322 Ok(fld.value().to_string())
2323 }
2324
2325
2326 pub fn has_underlying_redemption_date(&self) -> bool {
2328 self.message.body.has(tag::UNDERLYING_REDEMPTION_DATE)
2329 }
2330
2331
2332
2333
2334 pub fn set_underlying_repo_collateral_security_type(&mut self, v: isize) {
2336 self.message.body.set_field(tag::UNDERLYING_REPO_COLLATERAL_SECURITY_TYPE, fixer::fix_int::FIXInt::from(v));
2337 }
2338
2339 pub fn get_underlying_repo_collateral_security_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2341 let mut fld = field::UnderlyingRepoCollateralSecurityTypeField::new(0);
2342 self.message.body.get_field(tag::UNDERLYING_REPO_COLLATERAL_SECURITY_TYPE, &mut fld.0)?;
2343 Ok(fld.value())
2344 }
2345
2346
2347 pub fn has_underlying_repo_collateral_security_type(&self) -> bool {
2349 self.message.body.has(tag::UNDERLYING_REPO_COLLATERAL_SECURITY_TYPE)
2350 }
2351
2352
2353
2354
2355 pub fn set_underlying_repurchase_rate(&mut self, val: Decimal, scale: i32) {
2357 self.message.body.set_field(tag::UNDERLYING_REPURCHASE_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2358 }
2359
2360 pub fn get_underlying_repurchase_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2362 let mut fld = field::UnderlyingRepurchaseRateField::new(Decimal::ZERO, 0);
2363 self.message.body.get_field(tag::UNDERLYING_REPURCHASE_RATE, &mut fld.0)?;
2364 Ok(fld.value())
2365 }
2366
2367
2368 pub fn has_underlying_repurchase_rate(&self) -> bool {
2370 self.message.body.has(tag::UNDERLYING_REPURCHASE_RATE)
2371 }
2372
2373
2374
2375
2376 pub fn set_underlying_repurchase_term(&mut self, v: isize) {
2378 self.message.body.set_field(tag::UNDERLYING_REPURCHASE_TERM, fixer::fix_int::FIXInt::from(v));
2379 }
2380
2381 pub fn get_underlying_repurchase_term(&self) -> Result<isize, MessageRejectErrorEnum> {
2383 let mut fld = field::UnderlyingRepurchaseTermField::new(0);
2384 self.message.body.get_field(tag::UNDERLYING_REPURCHASE_TERM, &mut fld.0)?;
2385 Ok(fld.value())
2386 }
2387
2388
2389 pub fn has_underlying_repurchase_term(&self) -> bool {
2391 self.message.body.has(tag::UNDERLYING_REPURCHASE_TERM)
2392 }
2393
2394
2395
2396
2397 pub fn set_underlying_security_desc(&mut self, v: String) {
2399 self.message.body.set_field(tag::UNDERLYING_SECURITY_DESC, FIXString::from(v));
2400 }
2401
2402 pub fn get_underlying_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
2404 let mut fld = field::UnderlyingSecurityDescField::new(String::new());
2405 self.message.body.get_field(tag::UNDERLYING_SECURITY_DESC, &mut fld.0)?;
2406 Ok(fld.value().to_string())
2407 }
2408
2409
2410 pub fn has_underlying_security_desc(&self) -> bool {
2412 self.message.body.has(tag::UNDERLYING_SECURITY_DESC)
2413 }
2414
2415
2416
2417
2418 pub fn set_underlying_security_exchange(&mut self, v: String) {
2420 self.message.body.set_field(tag::UNDERLYING_SECURITY_EXCHANGE, FIXString::from(v));
2421 }
2422
2423 pub fn get_underlying_security_exchange(&self) -> Result<String, MessageRejectErrorEnum> {
2425 let mut fld = field::UnderlyingSecurityExchangeField::new(String::new());
2426 self.message.body.get_field(tag::UNDERLYING_SECURITY_EXCHANGE, &mut fld.0)?;
2427 Ok(fld.value().to_string())
2428 }
2429
2430
2431 pub fn has_underlying_security_exchange(&self) -> bool {
2433 self.message.body.has(tag::UNDERLYING_SECURITY_EXCHANGE)
2434 }
2435
2436
2437
2438
2439 pub fn set_underlying_security_id(&mut self, v: String) {
2441 self.message.body.set_field(tag::UNDERLYING_SECURITY_ID, FIXString::from(v));
2442 }
2443
2444 pub fn get_underlying_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
2446 let mut fld = field::UnderlyingSecurityIDField::new(String::new());
2447 self.message.body.get_field(tag::UNDERLYING_SECURITY_ID, &mut fld.0)?;
2448 Ok(fld.value().to_string())
2449 }
2450
2451
2452 pub fn has_underlying_security_id(&self) -> bool {
2454 self.message.body.has(tag::UNDERLYING_SECURITY_ID)
2455 }
2456
2457
2458
2459
2460 pub fn set_underlying_security_id_source(&mut self, v: String) {
2462 self.message.body.set_field(tag::UNDERLYING_SECURITY_ID_SOURCE, FIXString::from(v));
2463 }
2464
2465 pub fn get_underlying_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
2467 let mut fld = field::UnderlyingSecurityIDSourceField::new(String::new());
2468 self.message.body.get_field(tag::UNDERLYING_SECURITY_ID_SOURCE, &mut fld.0)?;
2469 Ok(fld.value().to_string())
2470 }
2471
2472
2473 pub fn has_underlying_security_id_source(&self) -> bool {
2475 self.message.body.has(tag::UNDERLYING_SECURITY_ID_SOURCE)
2476 }
2477
2478
2479
2480
2481 pub fn set_underlying_security_sub_type(&mut self, v: String) {
2483 self.message.body.set_field(tag::UNDERLYING_SECURITY_SUB_TYPE, FIXString::from(v));
2484 }
2485
2486 pub fn get_underlying_security_sub_type(&self) -> Result<String, MessageRejectErrorEnum> {
2488 let mut fld = field::UnderlyingSecuritySubTypeField::new(String::new());
2489 self.message.body.get_field(tag::UNDERLYING_SECURITY_SUB_TYPE, &mut fld.0)?;
2490 Ok(fld.value().to_string())
2491 }
2492
2493
2494 pub fn has_underlying_security_sub_type(&self) -> bool {
2496 self.message.body.has(tag::UNDERLYING_SECURITY_SUB_TYPE)
2497 }
2498
2499
2500
2501
2502 pub fn set_underlying_security_type(&mut self, v: String) {
2504 self.message.body.set_field(tag::UNDERLYING_SECURITY_TYPE, FIXString::from(v));
2505 }
2506
2507 pub fn get_underlying_security_type(&self) -> Result<String, MessageRejectErrorEnum> {
2509 let mut fld = field::UnderlyingSecurityTypeField::new(String::new());
2510 self.message.body.get_field(tag::UNDERLYING_SECURITY_TYPE, &mut fld.0)?;
2511 Ok(fld.value().to_string())
2512 }
2513
2514
2515 pub fn has_underlying_security_type(&self) -> bool {
2517 self.message.body.has(tag::UNDERLYING_SECURITY_TYPE)
2518 }
2519
2520
2521
2522
2523 pub fn set_underlying_settl_method(&mut self, v: String) {
2525 self.message.body.set_field(tag::UNDERLYING_SETTL_METHOD, FIXString::from(v));
2526 }
2527
2528 pub fn get_underlying_settl_method(&self) -> Result<String, MessageRejectErrorEnum> {
2530 let mut fld = field::UnderlyingSettlMethodField::new(String::new());
2531 self.message.body.get_field(tag::UNDERLYING_SETTL_METHOD, &mut fld.0)?;
2532 Ok(fld.value().to_string())
2533 }
2534
2535
2536 pub fn has_underlying_settl_method(&self) -> bool {
2538 self.message.body.has(tag::UNDERLYING_SETTL_METHOD)
2539 }
2540
2541
2542
2543
2544 pub fn set_underlying_settlement_type(&mut self, v: isize) {
2546 self.message.body.set_field(tag::UNDERLYING_SETTLEMENT_TYPE, fixer::fix_int::FIXInt::from(v));
2547 }
2548
2549 pub fn get_underlying_settlement_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2551 let mut fld = field::UnderlyingSettlementTypeField::new(0);
2552 self.message.body.get_field(tag::UNDERLYING_SETTLEMENT_TYPE, &mut fld.0)?;
2553 Ok(fld.value())
2554 }
2555
2556
2557 pub fn has_underlying_settlement_type(&self) -> bool {
2559 self.message.body.has(tag::UNDERLYING_SETTLEMENT_TYPE)
2560 }
2561
2562
2563
2564
2565 pub fn set_underlying_start_value(&mut self, val: Decimal, scale: i32) {
2567 self.message.body.set_field(tag::UNDERLYING_START_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2568 }
2569
2570 pub fn get_underlying_start_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2572 let mut fld = field::UnderlyingStartValueField::new(Decimal::ZERO, 0);
2573 self.message.body.get_field(tag::UNDERLYING_START_VALUE, &mut fld.0)?;
2574 Ok(fld.value())
2575 }
2576
2577
2578 pub fn has_underlying_start_value(&self) -> bool {
2580 self.message.body.has(tag::UNDERLYING_START_VALUE)
2581 }
2582
2583
2584
2585
2586 pub fn set_underlying_state_or_province_of_issue(&mut self, v: String) {
2588 self.message.body.set_field(tag::UNDERLYING_STATE_OR_PROVINCE_OF_ISSUE, FIXString::from(v));
2589 }
2590
2591 pub fn get_underlying_state_or_province_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
2593 let mut fld = field::UnderlyingStateOrProvinceOfIssueField::new(String::new());
2594 self.message.body.get_field(tag::UNDERLYING_STATE_OR_PROVINCE_OF_ISSUE, &mut fld.0)?;
2595 Ok(fld.value().to_string())
2596 }
2597
2598
2599 pub fn has_underlying_state_or_province_of_issue(&self) -> bool {
2601 self.message.body.has(tag::UNDERLYING_STATE_OR_PROVINCE_OF_ISSUE)
2602 }
2603
2604
2605
2606
2607 pub fn set_underlying_strike_currency(&mut self, v: String) {
2609 self.message.body.set_field(tag::UNDERLYING_STRIKE_CURRENCY, FIXString::from(v));
2610 }
2611
2612 pub fn get_underlying_strike_currency(&self) -> Result<String, MessageRejectErrorEnum> {
2614 let mut fld = field::UnderlyingStrikeCurrencyField::new(String::new());
2615 self.message.body.get_field(tag::UNDERLYING_STRIKE_CURRENCY, &mut fld.0)?;
2616 Ok(fld.value().to_string())
2617 }
2618
2619
2620 pub fn has_underlying_strike_currency(&self) -> bool {
2622 self.message.body.has(tag::UNDERLYING_STRIKE_CURRENCY)
2623 }
2624
2625
2626
2627
2628 pub fn set_underlying_strike_price(&mut self, val: Decimal, scale: i32) {
2630 self.message.body.set_field(tag::UNDERLYING_STRIKE_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2631 }
2632
2633 pub fn get_underlying_strike_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2635 let mut fld = field::UnderlyingStrikePriceField::new(Decimal::ZERO, 0);
2636 self.message.body.get_field(tag::UNDERLYING_STRIKE_PRICE, &mut fld.0)?;
2637 Ok(fld.value())
2638 }
2639
2640
2641 pub fn has_underlying_strike_price(&self) -> bool {
2643 self.message.body.has(tag::UNDERLYING_STRIKE_PRICE)
2644 }
2645
2646
2647
2648
2649 pub fn set_underlying_symbol(&mut self, v: String) {
2651 self.message.body.set_field(tag::UNDERLYING_SYMBOL, FIXString::from(v));
2652 }
2653
2654 pub fn get_underlying_symbol(&self) -> Result<String, MessageRejectErrorEnum> {
2656 let mut fld = field::UnderlyingSymbolField::new(String::new());
2657 self.message.body.get_field(tag::UNDERLYING_SYMBOL, &mut fld.0)?;
2658 Ok(fld.value().to_string())
2659 }
2660
2661
2662 pub fn has_underlying_symbol(&self) -> bool {
2664 self.message.body.has(tag::UNDERLYING_SYMBOL)
2665 }
2666
2667
2668
2669
2670 pub fn set_underlying_symbol_sfx(&mut self, v: String) {
2672 self.message.body.set_field(tag::UNDERLYING_SYMBOL_SFX, FIXString::from(v));
2673 }
2674
2675 pub fn get_underlying_symbol_sfx(&self) -> Result<String, MessageRejectErrorEnum> {
2677 let mut fld = field::UnderlyingSymbolSfxField::new(String::new());
2678 self.message.body.get_field(tag::UNDERLYING_SYMBOL_SFX, &mut fld.0)?;
2679 Ok(fld.value().to_string())
2680 }
2681
2682
2683 pub fn has_underlying_symbol_sfx(&self) -> bool {
2685 self.message.body.has(tag::UNDERLYING_SYMBOL_SFX)
2686 }
2687
2688
2689
2690
2691 pub fn set_underlying_time_unit(&mut self, v: String) {
2693 self.message.body.set_field(tag::UNDERLYING_TIME_UNIT, FIXString::from(v));
2694 }
2695
2696 pub fn get_underlying_time_unit(&self) -> Result<String, MessageRejectErrorEnum> {
2698 let mut fld = field::UnderlyingTimeUnitField::new(String::new());
2699 self.message.body.get_field(tag::UNDERLYING_TIME_UNIT, &mut fld.0)?;
2700 Ok(fld.value().to_string())
2701 }
2702
2703
2704 pub fn has_underlying_time_unit(&self) -> bool {
2706 self.message.body.has(tag::UNDERLYING_TIME_UNIT)
2707 }
2708
2709
2710
2711
2712 pub fn set_underlying_unit_of_measure(&mut self, v: String) {
2714 self.message.body.set_field(tag::UNDERLYING_UNIT_OF_MEASURE, FIXString::from(v));
2715 }
2716
2717 pub fn get_underlying_unit_of_measure(&self) -> Result<String, MessageRejectErrorEnum> {
2719 let mut fld = field::UnderlyingUnitOfMeasureField::new(String::new());
2720 self.message.body.get_field(tag::UNDERLYING_UNIT_OF_MEASURE, &mut fld.0)?;
2721 Ok(fld.value().to_string())
2722 }
2723
2724
2725 pub fn has_underlying_unit_of_measure(&self) -> bool {
2727 self.message.body.has(tag::UNDERLYING_UNIT_OF_MEASURE)
2728 }
2729
2730
2731
2732
2733 pub fn set_unit_of_measure(&mut self, v: String) {
2735 self.message.body.set_field(tag::UNIT_OF_MEASURE, FIXString::from(v));
2736 }
2737
2738 pub fn get_unit_of_measure(&self) -> Result<String, MessageRejectErrorEnum> {
2740 let mut fld = field::UnitOfMeasureField::new(String::new());
2741 self.message.body.get_field(tag::UNIT_OF_MEASURE, &mut fld.0)?;
2742 Ok(fld.value().to_string())
2743 }
2744
2745
2746 pub fn has_unit_of_measure(&self) -> bool {
2748 self.message.body.has(tag::UNIT_OF_MEASURE)
2749 }
2750
2751
2752}
2753
2754pub type RouteOut = fn(msg: SecurityDefinitionUpdateReport, session_id: SessionID) -> Result<(), MessageRejectErrorEnum>;
2756
2757pub type Route = (&'static str, &'static str, Box<dyn Fn(&Message, SessionID) -> Result<(), MessageRejectErrorEnum> + Send>);
2759
2760pub fn route(router: RouteOut) -> Route {
2762 let r = move |msg: &Message, session_id: SessionID| -> Result<(), MessageRejectErrorEnum> {
2763 router(SecurityDefinitionUpdateReport::from_message(msg.clone()), session_id)
2764 };
2765 ("7", "BP", Box::new(r))
2766}