View Javadoc
1   /*
2    * Copyright (C) 2010-2014 Hamburg Sud and the contributors.
3    *
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.apache.org/licenses/LICENSE-2.0
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.aludratest.service.edifactfile;
17  
18  import org.aludratest.service.AludraService;
19  import org.aludratest.service.ServiceInterface;
20  import org.aludratest.service.file.FileService;
21  
22  /**
23   * Interface for a service for processing EDIFACT and X12 documents.
24   * @author Volker Bergmann
25   */
26  @ServiceInterface(name = "EDIFACT File Service", description = "Offers EDIFACT and X12 related access and verifaction methods. Uses the Edifatto Library to perform operations.")
27  public interface EdifactFileService extends AludraService {
28  
29      /** Provides an object to parses and save EDIFACT and X12 documents from and to streams. */
30      @Override
31      EdifactFileInteraction perform();
32  
33      /** Provides an object to verify EDIFACT or X12 documents. */
34      @Override
35      EdifactFileVerification verify();
36  
37      /** Provides an object for performing queries on EDIFACT or X12 interchanges
38       *  and analyze their differences. */
39      @Override
40      EdifactFileCondition check();
41  
42      /** Provides the internally used {@link FileService} instance
43       *  @return the internally used {@link FileService} instance */
44      FileService getFileService();
45  
46  }