Skip to content

Commit d11bdd7

Browse files
committed
refactor, use KVP
1 parent 5323c98 commit d11bdd7

File tree

9 files changed

+113
-129
lines changed

9 files changed

+113
-129
lines changed

src/main/java/nl/digitalekabeltelevisie/data/mpeg/descriptors/DescriptorFactory.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -253,16 +253,16 @@ private static Descriptor getPrivateDVBSIDescriptor(final byte[] data, final Tab
253253
} else if (private_data_specifier == 0x28) { // EACEM
254254
switch (descriptor_tag) {
255255
case 0x83:
256-
return new LogicalChannelDescriptor(data, 0, tableSection, descriptorContext);
256+
return new LogicalChannelDescriptor(data, tableSection, descriptorContext);
257257
case 0x86:
258258
return new EACEMStreamIdentifierDescriptor(data, 0, tableSection);
259259
case 0x88:
260-
return new HDSimulcastLogicalChannelDescriptor(data, 0, tableSection, descriptorContext);
260+
return new HDSimulcastLogicalChannelDescriptor(data, tableSection, descriptorContext);
261261
}
262262
} else if (private_data_specifier == 0x29) { // Nordig
263263
switch (descriptor_tag) {
264264
case 0x83:
265-
return new NordigLogicalChannelDescriptorV1(data, 0, tableSection, descriptorContext);
265+
return new NordigLogicalChannelDescriptorV1(data, tableSection, descriptorContext);
266266
case 0x87:
267267
return new NordigLogicalChannelDescriptorV2(data, tableSection, descriptorContext);
268268
}
@@ -280,14 +280,14 @@ private static Descriptor getPrivateDVBSIDescriptor(final byte[] data, final Tab
280280
case 0x81:
281281
return new CosInformationParametersDescriptor(data, 0, tableSection);
282282
case 0x83:
283-
return new CosLogicalChannelDescriptor(data, 0, tableSection, descriptorContext);
283+
return new CosLogicalChannelDescriptor(data, tableSection, descriptorContext);
284284
case 0x88:
285285
return new CosTimezoneDescriptor(data, 0, tableSection);
286286
}
287287
} else if (private_data_specifier == 0x233a) { // DTG
288288
switch (descriptor_tag) {
289289
case 0x83: // can not re-use LogicalChannelDescriptor from EACEM, DTG has no visible flag
290-
return new nl.digitalekabeltelevisie.data.mpeg.descriptors.privatedescriptors.dtg.LogicalChannelDescriptor(data, 0, tableSection, descriptorContext);
290+
return new nl.digitalekabeltelevisie.data.mpeg.descriptors.privatedescriptors.dtg.LogicalChannelDescriptor(data, tableSection, descriptorContext);
291291
case 0x86:
292292
return new ServiceAttributeDescriptor(data, 0, tableSection);
293293
case 0x89:
@@ -296,7 +296,7 @@ private static Descriptor getPrivateDVBSIDescriptor(final byte[] data, final Tab
296296
} else if (private_data_specifier >= 0x00003200 && private_data_specifier <= 0x0000320F ) { // FREE TV AUSTRALIA OPERATIONAL PRACTICE OP-40
297297
switch (descriptor_tag) {
298298
case 0x83:
299-
return new nl.digitalekabeltelevisie.data.mpeg.descriptors.privatedescriptors.au.LogicalChannelDescriptor(data, 0, tableSection, descriptorContext);
299+
return new nl.digitalekabeltelevisie.data.mpeg.descriptors.privatedescriptors.au.LogicalChannelDescriptor(data, tableSection, descriptorContext);
300300
}
301301

302302
} else if (private_data_specifier == 0x41565356) { // AVS Video

src/main/java/nl/digitalekabeltelevisie/data/mpeg/descriptors/logicalchannel/AbstractLogicalChannelDescriptor.java

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@
3333
import java.util.List;
3434

3535
import javax.swing.table.TableModel;
36-
import javax.swing.tree.DefaultMutableTreeNode;
3736

3837
import nl.digitalekabeltelevisie.controller.KVP;
3938
import nl.digitalekabeltelevisie.data.mpeg.descriptors.Descriptor;
@@ -62,10 +61,10 @@ protected AbstractLogicalChannel(int service_id, int visible_service_flag, int r
6261
this.logical_channel_number = logical_channel_number;
6362
}
6463

65-
protected final int service_id;
66-
protected final int visible_service_flag;
67-
protected final int reserved;
68-
protected final int logical_channel_number;
64+
protected int service_id;
65+
protected int visible_service_flag;
66+
protected int reserved;
67+
protected int logical_channel_number;
6968

7069

7170
@Override
@@ -93,13 +92,13 @@ public String getServiceName() {
9392
}
9493

9594
@Override
96-
public DefaultMutableTreeNode getJTreeNode(final int modus) {
95+
public KVP getJTreeNode(final int modus) {
9796

98-
final DefaultMutableTreeNode s = new DefaultMutableTreeNode(new KVP(createNodeLabel(service_id, logical_channel_number)));
99-
s.add(new DefaultMutableTreeNode(new KVP("service_id", service_id, null)));
100-
s.add(new DefaultMutableTreeNode(new KVP("visible_service_flag", visible_service_flag, null)));
101-
s.add(new DefaultMutableTreeNode(new KVP("reserved", reserved, null)));
102-
s.add(new DefaultMutableTreeNode(new KVP("logical_channel_number", logical_channel_number, null)));
97+
final KVP s = new KVP(createNodeLabel(service_id, logical_channel_number));
98+
s.add(new KVP("service_id", service_id ));
99+
s.add(new KVP("visible_service_flag", visible_service_flag ));
100+
s.add(new KVP("reserved", reserved ));
101+
s.add(new KVP("logical_channel_number", logical_channel_number ));
103102
return s;
104103
}
105104

@@ -110,8 +109,8 @@ public DefaultMutableTreeNode getJTreeNode(final int modus) {
110109
protected final List<AbstractLogicalChannel> channelList = new ArrayList<>();
111110

112111

113-
protected AbstractLogicalChannelDescriptor(byte[] b, int offset, TableSection parent, DescriptorContext descriptorContext) {
114-
super(b, offset, parent);
112+
protected AbstractLogicalChannelDescriptor(byte[] b, TableSection parent, DescriptorContext descriptorContext) {
113+
super(b, parent);
115114
this.descriptorContext = descriptorContext;
116115

117116
}
@@ -131,12 +130,10 @@ public String createNodeLabel(int service_id, int logical_channel_number) {
131130
}
132131

133132
@Override
134-
public DefaultMutableTreeNode getJTreeNode(final int modus){
133+
public KVP getJTreeNode(final int modus){
135134

136-
final DefaultMutableTreeNode t = super.getJTreeNode(modus);
137-
if (t.getUserObject() instanceof KVP kvp) {
138-
kvp.addTableSource(this, "logical_channels");
139-
}
135+
final KVP t = (KVP) super.getJTreeNode(modus);
136+
t.addTableSource(this, "logical_channels");
140137

141138
addListJTree(t,channelList,modus,"logical_channels",this);
142139
return t;
@@ -174,6 +171,7 @@ private static TableHeader<AbstractLogicalChannel,AbstractLogicalChannel> build
174171
}
175172

176173

174+
@Override
177175
public TableModel getTableModel() {
178176
FlexTableModel<AbstractLogicalChannel,AbstractLogicalChannel> tableModel = new FlexTableModel<>(buildTableHeader());
179177

src/main/java/nl/digitalekabeltelevisie/data/mpeg/descriptors/privatedescriptors/au/LogicalChannelDescriptor.java

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
*
33
* http://www.digitalekabeltelevisie.nl/dvb_inspector
44
*
5-
* This code is Copyright 2009-2024 by Eric Berendsen ([email protected])
5+
* This code is Copyright 2009-2025 by Eric Berendsen ([email protected])
66
*
77
* This file is part of DVB Inspector.
88
*
@@ -49,22 +49,21 @@ public LogicalChannel(int service_id, int visible_service_flag, int reserved, in
4949
}
5050
}
5151

52-
public LogicalChannelDescriptor(final byte[] b, final int offset, final TableSection parent, DescriptorContext descriptorContext) {
53-
super(b, offset,parent, descriptorContext);
54-
55-
int t=0;
56-
while (t<descriptorLength) {
57-
final int serviceId=getInt(b, offset+2+t,2,MASK_16BITS);
58-
final int visible = getInt(b,offset+t+4,1,0x80) >>7;
59-
final int reserved = getInt(b,offset+t+4,1,0x7C) >>2;
60-
final int chNumber=getInt(b, offset+t+4,2,MASK_10BITS);
61-
final AbstractLogicalChannel s = new LogicalChannel(serviceId, visible, reserved, chNumber);
52+
public LogicalChannelDescriptor(byte[] b, TableSection parent, DescriptorContext descriptorContext) {
53+
super(b, parent, descriptorContext);
54+
55+
int t = 0;
56+
while (t < descriptorLength) {
57+
int serviceId = getInt(b, 2 + t, 2, MASK_16BITS);
58+
int visible = getInt(b, t + 4, 1, 0x80) >> 7;
59+
int reserved = getInt(b, t + 4, 1, 0x7C) >> 2;
60+
int chNumber = getInt(b, t + 4, 2, MASK_10BITS);
61+
AbstractLogicalChannel s = new LogicalChannel(serviceId, visible, reserved, chNumber);
6262
channelList.add(s);
63-
t+=4;
63+
t += 4;
6464
}
6565
}
6666

67-
6867
@Override
6968
public String getDescriptorname(){
7069
return "Free TV Australia Logical Channel Descriptor";

src/main/java/nl/digitalekabeltelevisie/data/mpeg/descriptors/privatedescriptors/canal_international/CosLogicalChannelDescriptor.java

Lines changed: 18 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
*
33
* http://www.digitalekabeltelevisie.nl/dvb_inspector
44
*
5-
* This code is Copyright 2009-2022 by Eric Berendsen ([email protected])
5+
* This code is Copyright 2009-2025 by Eric Berendsen ([email protected])
66
*
77
* This file is part of DVB Inspector.
88
*
@@ -31,8 +31,6 @@
3131
import static nl.digitalekabeltelevisie.util.Utils.MASK_16BITS;
3232
import static nl.digitalekabeltelevisie.util.Utils.getInt;
3333

34-
import javax.swing.tree.DefaultMutableTreeNode;
35-
3634
import nl.digitalekabeltelevisie.controller.KVP;
3735
import nl.digitalekabeltelevisie.data.mpeg.descriptors.DescriptorContext;
3836
import nl.digitalekabeltelevisie.data.mpeg.descriptors.logicalchannel.AbstractLogicalChannelDescriptor;
@@ -51,32 +49,31 @@ public class CosLogicalChannel extends AbstractLogicalChannel {
5149
}
5250

5351
@Override
54-
public DefaultMutableTreeNode getJTreeNode(final int modus){
55-
final DefaultMutableTreeNode s=new DefaultMutableTreeNode(new KVP(createNodeLabel(service_id, logical_channel_number)));
56-
s.add(new DefaultMutableTreeNode(new KVP("service_id",service_id,null)));
57-
s.add(new DefaultMutableTreeNode(new KVP("visible_service_flag",visible_service_flag,null)));
58-
s.add(new DefaultMutableTreeNode(new KVP("free_access_flag",free_access_flag,null)));
59-
s.add(new DefaultMutableTreeNode(new KVP("reserved",reserved,null)));
60-
s.add(new DefaultMutableTreeNode(new KVP("logical_channel_number",logical_channel_number,null)));
52+
public KVP getJTreeNode(final int modus){
53+
final KVP s=(new KVP(createNodeLabel(service_id, logical_channel_number)));
54+
s.add(new KVP("service_id",service_id));
55+
s.add(new KVP("visible_service_flag",visible_service_flag));
56+
s.add(new KVP("free_access_flag",free_access_flag));
57+
s.add(new KVP("reserved",reserved));
58+
s.add(new KVP("logical_channel_number",logical_channel_number));
6159
return s;
6260
}
6361
}
6462

65-
public CosLogicalChannelDescriptor(final byte[] b, final int offset, final TableSection parent, DescriptorContext descriptorContext) {
66-
super(b, offset,parent, descriptorContext);
67-
int t=0;
68-
while (t<descriptorLength) {
69-
final int serviceId=getInt(b, offset+2+t,2,MASK_16BITS);
70-
final int visible = getInt(b,offset+t+4,1,0x80) >>7;
71-
final int free_access = getInt(b,offset+t+4,1,0x40) >>6;
72-
final int reserved = getInt(b,offset+t+4,1,0x3C) >>2;
73-
final int chNumber=getInt(b, offset+t+4,2,MASK_10BITS);
63+
public CosLogicalChannelDescriptor(byte[] b, TableSection parent, DescriptorContext descriptorContext) {
64+
super(b, parent, descriptorContext);
65+
int t = 0;
66+
while (t < descriptorLength) {
67+
int serviceId = getInt(b, 2 + t, 2, MASK_16BITS);
68+
int visible = getInt(b, t + 4, 1, 0x80) >> 7;
69+
int free_access = getInt(b, t + 4, 1, 0x40) >> 6;
70+
int reserved = getInt(b, t + 4, 1, 0x3C) >> 2;
71+
int chNumber = getInt(b, t + 4, 2, MASK_10BITS);
7472
channelList.add(new CosLogicalChannel(serviceId, visible, free_access, reserved, chNumber));
75-
t+=4;
73+
t += 4;
7674
}
7775
}
7876

79-
8077
@Override
8178
public String getDescriptorname(){
8279
return "cos_logical_channel_descriptor";

src/main/java/nl/digitalekabeltelevisie/data/mpeg/descriptors/privatedescriptors/dtg/LogicalChannelDescriptor.java

Lines changed: 17 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
*
33
* http://www.digitalekabeltelevisie.nl/dvb_inspector
44
*
5-
* This code is Copyright 2009-2022 by Eric Berendsen ([email protected])
5+
* This code is Copyright 2009-2025 by Eric Berendsen ([email protected])
66
*
77
* This file is part of DVB Inspector.
88
*
@@ -31,8 +31,6 @@
3131
import static nl.digitalekabeltelevisie.util.Utils.MASK_16BITS;
3232
import static nl.digitalekabeltelevisie.util.Utils.getInt;
3333

34-
import javax.swing.tree.DefaultMutableTreeNode;
35-
3634
import nl.digitalekabeltelevisie.controller.KVP;
3735
import nl.digitalekabeltelevisie.data.mpeg.descriptors.DescriptorContext;
3836
import nl.digitalekabeltelevisie.data.mpeg.descriptors.logicalchannel.AbstractLogicalChannelDescriptor;
@@ -45,33 +43,31 @@ public class LogicalChannel extends AbstractLogicalChannel{
4543

4644
// ignore visible_service
4745

48-
public LogicalChannel(final int service_id, final int reserved, final int logical_channel_number){
46+
public LogicalChannel(int service_id, int reserved, int logical_channel_number){
4947
super(service_id, 1, reserved, logical_channel_number);
5048
}
5149

52-
@Override
53-
public DefaultMutableTreeNode getJTreeNode(final int modus){
54-
final DefaultMutableTreeNode s = new DefaultMutableTreeNode(new KVP(createNodeLabel(service_id, logical_channel_number)));
55-
s.add(new DefaultMutableTreeNode(new KVP("service_id",service_id,null)));
56-
s.add(new DefaultMutableTreeNode(new KVP("reserved",reserved,null)));
57-
s.add(new DefaultMutableTreeNode(new KVP("logical_channel_number",logical_channel_number,null)));
50+
@Override
51+
public KVP getJTreeNode(final int modus) {
52+
final KVP s = new KVP(createNodeLabel(service_id, logical_channel_number));
53+
s.add(new KVP("service_id", service_id));
54+
s.add(new KVP("reserved", reserved));
55+
s.add(new KVP("logical_channel_number", logical_channel_number));
5856
return s;
5957
}
6058

61-
62-
6359
}
6460

65-
public LogicalChannelDescriptor(final byte[] b, final int offset, final TableSection parent, DescriptorContext descriptorContext) {
66-
super(b, offset,parent, descriptorContext);
67-
int t=0;
68-
while (t<descriptorLength) {
69-
final int serviceId=getInt(b, offset+2+t,2,MASK_16BITS);
70-
final int reserved = getInt(b,offset+t+4,1,0xFC) >>2;
71-
final int chNumber=getInt(b, offset+t+4,2,MASK_10BITS);
72-
final LogicalChannel s = new LogicalChannel(serviceId, reserved, chNumber);
61+
public LogicalChannelDescriptor(byte[] b, TableSection parent, DescriptorContext descriptorContext) {
62+
super(b, parent, descriptorContext);
63+
int t = 0;
64+
while (t < descriptorLength) {
65+
int serviceId = getInt(b, 2 + t, 2, MASK_16BITS);
66+
int reserved = getInt(b, t + 4, 1, 0xFC) >> 2;
67+
int chNumber = getInt(b, t + 4, 2, MASK_10BITS);
68+
LogicalChannel s = new LogicalChannel(serviceId, reserved, chNumber);
7369
channelList.add(s);
74-
t+=4;
70+
t += 4;
7571
}
7672
}
7773

src/main/java/nl/digitalekabeltelevisie/data/mpeg/descriptors/privatedescriptors/eaccam/HDSimulcastLogicalChannelDescriptor.java

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
*
33
* http://www.digitalekabeltelevisie.nl/dvb_inspector
44
*
5-
* This code is Copyright 2009-2020 by Eric Berendsen ([email protected])
5+
* This code is Copyright 2009-2025 by Eric Berendsen ([email protected])
66
*
77
* This file is part of DVB Inspector.
88
*
@@ -38,32 +38,30 @@ public class HDSimulcastLogicalChannelDescriptor extends AbstractLogicalChannelD
3838

3939
public class LogicalChannel extends AbstractLogicalChannel {
4040

41-
public LogicalChannel(final int service_id, final int visible_service, final int reserved,
42-
final int logical_channel_number) {
43-
super(service_id, visible_service, reserved, logical_channel_number);
41+
public LogicalChannel(int service_id, int visible_service_flag, int reserved, int logical_channel_number) {
42+
super(service_id, visible_service_flag, reserved, logical_channel_number);
4443

4544
}
4645
}
4746

48-
public HDSimulcastLogicalChannelDescriptor(final byte[] b, final int offset, final TableSection parent, DescriptorContext descriptorContext) {
49-
super(b, offset,parent, descriptorContext);
50-
int t=0;
51-
while (t<descriptorLength) {
47+
public HDSimulcastLogicalChannelDescriptor(byte[] b, TableSection parent, DescriptorContext descriptorContext) {
48+
super(b, parent, descriptorContext);
49+
int t = 0;
50+
while (t < descriptorLength) {
5251

53-
final int serviceId=getInt(b, offset+t+2,2,0xFFFF);
54-
final int visisble = (b[offset+t+4] & 0x80) >>7;
55-
final int reserved = getInt(b,offset+t+4,1,0x7C) >>2;
56-
final int chNumber=getInt(b, offset+t+4,2,0x03FF);
52+
int serviceId = getInt(b, t + 2, 2, 0xFFFF);
53+
int visisble = (b[t + 4] & 0x80) >> 7;
54+
int reserved = getInt(b, t + 4, 1, 0x7C) >> 2;
55+
int chNumber = getInt(b, t + 4, 2, 0x03FF);
5756

5857
final LogicalChannel s = new LogicalChannel(serviceId, visisble, reserved, chNumber);
5958
channelList.add(s);
60-
t+=4;
59+
t += 4;
6160
}
6261
}
6362

6463

6564

66-
6765
@Override
6866
public String getDescriptorname(){
6967
return "HD_simulcast_logical_channel_descriptor";

src/main/java/nl/digitalekabeltelevisie/data/mpeg/descriptors/privatedescriptors/eaccam/LogicalChannelDescriptor.java

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
*
33
* http://www.digitalekabeltelevisie.nl/dvb_inspector
44
*
5-
* This code is Copyright 2009-2020 by Eric Berendsen ([email protected])
5+
* This code is Copyright 2009-2025 by Eric Berendsen ([email protected])
66
*
77
* This file is part of DVB Inspector.
88
*
@@ -44,22 +44,21 @@ public LogicalChannel(int service_id, int visible_service_flag, int reserved, in
4444
}
4545
}
4646

47-
public LogicalChannelDescriptor(final byte[] b, final int offset, final TableSection parent, DescriptorContext descriptorContext) {
48-
super(b, offset,parent, descriptorContext);
49-
50-
int t=0;
51-
while (t<descriptorLength) {
52-
final int serviceId=getInt(b, offset+2+t,2,MASK_16BITS);
53-
final int visible = getInt(b,offset+t+4,1,0x80) >>7;
54-
final int reserved = getInt(b,offset+t+4,1,0x7C) >>2;
55-
final int chNumber=getInt(b, offset+t+4,2,MASK_10BITS);
56-
final AbstractLogicalChannel s = new LogicalChannel(serviceId, visible, reserved, chNumber);
47+
public LogicalChannelDescriptor(byte[] b, TableSection parent, DescriptorContext descriptorContext) {
48+
super(b, parent, descriptorContext);
49+
50+
int t = 0;
51+
while (t < descriptorLength) {
52+
int serviceId = getInt(b, 2 + t, 2, MASK_16BITS);
53+
int visible = getInt(b, t + 4, 1, 0x80) >> 7;
54+
int reserved = getInt(b, t + 4, 1, 0x7C) >> 2;
55+
int chNumber = getInt(b, t + 4, 2, MASK_10BITS);
56+
AbstractLogicalChannel s = new LogicalChannel(serviceId, visible, reserved, chNumber);
5757
channelList.add(s);
58-
t+=4;
58+
t += 4;
5959
}
6060
}
6161

62-
6362
@Override
6463
public String getDescriptorname(){
6564
return "EACEM Logical Channel Descriptor";

0 commit comments

Comments
 (0)