97830270c5dc4b6dcc46a5c3b1c85808c87e7f86
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / internal / corext / template / TemplateBuffer.java
1 /*
2  * (c) Copyright IBM Corp. 2000, 2001.
3  * All Rights Reserved.
4  */
5 package net.sourceforge.phpdt.internal.corext.template;
6
7 import org.eclipse.core.runtime.CoreException;
8
9 //import org.eclipse.jdt.internal.corext.Assert;
10
11 /**
12  * A template buffer is a container for a string and variables.
13  */
14 public final class TemplateBuffer {
15         
16         /** The string of the template buffer */ 
17         private String fString;
18         /** The variable positions of the template buffer */
19         private TemplatePosition[] fVariables;
20         
21         /**
22          * Creates a template buffer.
23          * 
24          * @param string the string
25          * @param variables the variable positions
26          * @throws CoreException for illegal variable positions
27          */
28     public TemplateBuffer(String string, TemplatePosition[] variables) throws CoreException {
29                 setContent(string, variables);
30     }
31
32         /**
33          * Sets the content of the template buffer.
34          * 
35          * @param string the string
36          * @param variables the variable positions
37          * @throws CoreException for illegal variable positions
38          */
39         public final void setContent(String string, TemplatePosition[] variables) throws CoreException {
40         //      Assert.isNotNull(string);
41         //      Assert.isNotNull(variables);
42
43                 // XXX assert non-overlapping variable properties
44
45                 fString= string;
46                 fVariables= variables;
47         }
48
49         /**
50          * Returns the string of the template buffer.
51          */
52         public final String getString() {
53                 return fString;
54         }
55         
56         /**
57          * Returns the variable positions of the template buffer.
58          */
59         public final TemplatePosition[] getVariables() {
60                 return fVariables;
61         }
62
63 }