Skip to content

Commit 95077b8

Browse files
committed
Implementing parsing of atom_sites category in mmcif parser/consumer
1 parent 3b093b9 commit 95077b8

File tree

7 files changed

+346
-33
lines changed

7 files changed

+346
-33
lines changed

biojava-structure/src/main/java/org/biojava/nbio/structure/io/mmcif/ChemCompConsumer.java

Lines changed: 38 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -78,19 +78,19 @@ public void documentEnd() {
7878

7979
@Override
8080
public void newAtomSite(AtomSite atom) {
81-
// TODO Auto-generated method stub
81+
8282

8383
}
8484

8585
@Override
8686
public void newDatabasePDBremark(DatabasePDBremark remark) {
87-
// TODO Auto-generated method stub
87+
8888

8989
}
9090

9191
@Override
9292
public void newDatabasePDBrev(DatabasePDBrev dbrev) {
93-
// TODO Auto-generated method stub
93+
9494

9595
}
9696

@@ -101,94 +101,99 @@ public void newDatabasePDBrevRecord(DatabasePdbrevRecord dbrev) {
101101

102102
@Override
103103
public void newEntity(Entity entity) {
104-
// TODO Auto-generated method stub
104+
105105

106106
}
107107

108108
@Override
109109
public void newEntityPolySeq(EntityPolySeq epolseq) {
110-
// TODO Auto-generated method stub
110+
111111

112112
}
113113

114114
@Override
115115
public void newExptl(Exptl exptl) {
116-
// TODO Auto-generated method stub
116+
117117

118118
}
119119

120120
@Override
121121
public void newCell(Cell cell) {
122-
// TODO Auto-generated method stub
122+
123123
}
124124

125125
@Override
126126
public void newSymmetry(Symmetry symmetry) {
127-
// TODO Auto-generated method stub
127+
128128
}
129129

130130
@Override
131131
public void newStructNcsOper(StructNcsOper sNcsOper) {
132-
// TODO Auto-generated method stub
132+
133+
}
134+
135+
@Override
136+
public void newAtomSites(AtomSites atomSites) {
137+
133138
}
134139

135140
@Override
136141
public void newPdbxEntityNonPoly(PdbxEntityNonPoly pen) {
137-
// TODO Auto-generated method stub
142+
138143

139144
}
140145

141146
@Override
142147
public void newPdbxNonPolyScheme(PdbxNonPolyScheme ppss) {
143-
// TODO Auto-generated method stub
148+
144149

145150
}
146151

147152
@Override
148153
public void newPdbxPolySeqScheme(PdbxPolySeqScheme ppss) {
149-
// TODO Auto-generated method stub
154+
150155

151156
}
152157

153158
@Override
154159
public void newRefine(Refine r) {
155-
// TODO Auto-generated method stub
160+
156161

157162
}
158163

159164
@Override
160165
public void newStructAsym(StructAsym sasym) {
161-
// TODO Auto-generated method stub
166+
162167

163168
}
164169

165170
@Override
166171
public void newStructKeywords(StructKeywords kw) {
167-
// TODO Auto-generated method stub
172+
168173

169174
}
170175

171176
@Override
172177
public void newStructRef(StructRef sref) {
173-
// TODO Auto-generated method stub
178+
174179

175180
}
176181

177182
@Override
178183
public void newStructRefSeq(StructRefSeq sref) {
179-
// TODO Auto-generated method stub
184+
180185

181186
}
182187

183188
@Override
184189
public void newStructRefSeqDif(StructRefSeqDif sref) {
185-
// TODO Auto-generated method stub
190+
186191

187192
}
188193

189194
@Override
190195
public void setStruct(Struct struct) {
191-
// TODO Auto-generated method stub
196+
192197

193198
}
194199

@@ -203,7 +208,7 @@ public void newGenericData(String category, List<String> loopFields,
203208
@Override
204209
public void newAuditAuthor(AuditAuthor aa)
205210
{
206-
// TODO Auto-generated method stub
211+
207212

208213
}
209214

@@ -217,7 +222,7 @@ public FileParsingParameters getFileParsingParameters()
217222
@Override
218223
public void setFileParsingParameters(FileParsingParameters params)
219224
{
220-
// TODO Auto-generated method stub
225+
221226

222227
}
223228

@@ -230,19 +235,19 @@ public void newChemCompDescriptor(ChemCompDescriptor ccd) {
230235

231236
@Override
232237
public void newPdbxStructOperList(PdbxStructOperList structOper) {
233-
// TODO Auto-generated method stub
238+
234239

235240
}
236241

237242
@Override
238243
public void newPdbxStrucAssembly(PdbxStructAssembly strucAssembly) {
239-
// TODO Auto-generated method stub
244+
240245

241246
}
242247

243248
@Override
244249
public void newPdbxStrucAssemblyGen(PdbxStructAssemblyGen strucAssembly) {
245-
// TODO Auto-generated method stub
250+
246251

247252
}
248253

@@ -253,7 +258,7 @@ public void newChemCompAtom(ChemCompAtom atom) {
253258

254259
@Override
255260
public void newPdbxChemCompIndentifier(PdbxChemCompIdentifier id) {
256-
// TODO Auto-generated method stub
261+
257262

258263
}
259264

@@ -264,46 +269,46 @@ public void newChemCompBond(ChemCompBond bond) {
264269

265270
@Override
266271
public void newPdbxChemCompDescriptor(PdbxChemCompDescriptor desc) {
267-
// TODO Auto-generated method stub
272+
268273

269274
}
270275

271276
@Override
272277
public void newEntitySrcGen(EntitySrcGen entitySrcGen) {
273-
// TODO Auto-generated method stub
278+
274279

275280
}
276281
@Override
277282
public void newEntitySrcNat(EntitySrcNat entitySrcNat) {
278-
// TODO Auto-generated method stub
283+
279284

280285
}
281286

282287
@Override
283288
public void newEntitySrcSyn(EntitySrcSyn entitySrcSyn) {
284-
// TODO Auto-generated method stub
289+
285290

286291
}
287292

288293
@Override
289294
public void newStructConn(StructConn structConn) {
290-
// TODO Auto-generated method stub
295+
291296

292297
}
293298

294299
@Override
295300
public void newStructSiteGen(StructSiteGen gen) {
296-
// TODO
301+
297302
}
298303

299304
@Override
300305
public void newStructSite(StructSite site) {
301-
// TODO
306+
302307
}
303308

304309
@Override
305310
public void newEntityPoly(EntityPoly entityPoly) {
306-
// TODO Auto-generated method stub
311+
307312

308313
}
309314
}

biojava-structure/src/main/java/org/biojava/nbio/structure/io/mmcif/MMcifConsumer.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ public interface MMcifConsumer {
6262
public void newCell(Cell cell);
6363
public void newSymmetry(Symmetry symmetry);
6464
public void newStructNcsOper(StructNcsOper sNcsOper);
65+
public void newAtomSites(AtomSites atomSites);
6566
public void newStructRef(StructRef sref);
6667
public void newStructRefSeq(StructRefSeq sref);
6768
public void newStructRefSeqDif(StructRefSeqDif sref);

biojava-structure/src/main/java/org/biojava/nbio/structure/io/mmcif/MetalBondConsumer.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,11 @@ public void newSymmetry(Symmetry symmetry) {
9898
@Override
9999
public void newStructNcsOper(StructNcsOper sNcsOper) {
100100

101+
}
102+
103+
@Override
104+
public void newAtomSites(AtomSites atomSites) {
105+
101106
}
102107

103108
@Override

biojava-structure/src/main/java/org/biojava/nbio/structure/io/mmcif/SimpleMMcifConsumer.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@
6161
import org.biojava.nbio.structure.io.FileParsingParameters;
6262
import org.biojava.nbio.structure.io.SeqRes2AtomAligner;
6363
import org.biojava.nbio.structure.io.mmcif.model.AtomSite;
64+
import org.biojava.nbio.structure.io.mmcif.model.AtomSites;
6465
import org.biojava.nbio.structure.io.mmcif.model.AuditAuthor;
6566
import org.biojava.nbio.structure.io.mmcif.model.Cell;
6667
import org.biojava.nbio.structure.io.mmcif.model.ChemComp;
@@ -149,6 +150,8 @@ public class SimpleMMcifConsumer implements MMcifConsumer {
149150
private List<StructNcsOper> structNcsOper;
150151
private List<StructRefSeqDif> sequenceDifs;
151152
private List<StructSiteGen> structSiteGens;
153+
154+
private AtomSites atomSites;
152155

153156

154157

@@ -1579,6 +1582,10 @@ public void newSymmetry(Symmetry symmetry) {
15791582
public void newStructNcsOper(StructNcsOper sNcsOper) {
15801583
structNcsOper.add(sNcsOper);
15811584
}
1585+
1586+
public void newAtomSites(AtomSites atomSites) {
1587+
this.atomSites = atomSites;
1588+
}
15821589

15831590
@Override
15841591
public void newStructRef(StructRef sref) {
@@ -1897,6 +1904,9 @@ public List<PdbxStructOperList> getStructOpers() {
18971904
return structOpers;
18981905
}
18991906

1907+
public AtomSites getAtomSites() {
1908+
return atomSites;
1909+
}
19001910

19011911

19021912
@Override

biojava-structure/src/main/java/org/biojava/nbio/structure/io/mmcif/SimpleMMcifParser.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
import org.biojava.nbio.structure.io.MMCIFFileReader;
4141
import org.biojava.nbio.structure.io.StructureIOFile;
4242
import org.biojava.nbio.structure.io.mmcif.model.AtomSite;
43+
import org.biojava.nbio.structure.io.mmcif.model.AtomSites;
4344
import org.biojava.nbio.structure.io.mmcif.model.AuditAuthor;
4445
import org.biojava.nbio.structure.io.mmcif.model.CIFLabel;
4546
import org.biojava.nbio.structure.io.mmcif.model.Cell;
@@ -680,6 +681,12 @@ private void endLineChecks(String category,List<String> loopFields, List<String>
680681
StructNcsOper.class.getName(),
681682
loopFields, lineData, loopWarnings);
682683
triggerNewStructNcsOper(sNcsOper);
684+
} else if ( category.equals("_atom_sites")) {
685+
686+
AtomSites atomSites = (AtomSites) buildObject(
687+
AtomSites.class.getName(),
688+
loopFields, lineData, loopWarnings);
689+
triggerNewAtomSites(atomSites);
683690

684691
} else if ( category.equals("_struct_ref")){
685692
StructRef sref = (StructRef) buildObject(
@@ -897,6 +904,12 @@ public void triggerNewStructNcsOper(StructNcsOper sNcsOper) {
897904
}
898905

899906
}
907+
908+
public void triggerNewAtomSites(AtomSites atomSites) {
909+
for(MMcifConsumer c : consumers){
910+
c.newAtomSites(atomSites);
911+
}
912+
}
900913

901914
/**
902915
* Populates a bean object from the {@link org.biojava.nbio.structure.io.mmcif.model} package,

0 commit comments

Comments
 (0)