"
(C) 2014 by Holger Hans Peter Freyther
All Rights Reserved
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see .
"
Object subclass: SMPPValueHolder [
| tag value |
SMPPValueHolder class >> for: aString tag: aTag [
^Osmo.TLVDescription new
instVarName: aString;
parseClass: self;
tag: aTag;
beOptional;
beTLV;
yourself
]
SMPPValueHolder class >> readFrom: aStream with: anAttribute [
| len |
len := ((aStream next: 2) shortAt: 1) swap16.
^(aStream next: len)
]
SMPPValueHolder class >> write: aValue on: aMsg with: anAttribute [
aMsg
putLen16: aValue size;
putByteArray: aValue asByteArray.
]
]