Class BndEditModel


  • public class BndEditModel
    extends java.lang.Object
    A model for a Bnd file. In the first iteration, use a simple Properties object; this will need to be enhanced to additionally record formatting, e.g. line breaks and empty lines, and comments.
    Author:
    Neil Bartlett
    • Constructor Detail

      • BndEditModel

        public BndEditModel()
      • BndEditModel

        public BndEditModel​(Workspace workspace)
      • BndEditModel

        public BndEditModel​(IDocument document)
                     throws java.io.IOException
        Throws:
        java.io.IOException
      • BndEditModel

        public BndEditModel​(Project project)
                     throws java.io.IOException
        Throws:
        java.io.IOException
    • Method Detail

      • loadFrom

        public void loadFrom​(IDocument document)
                      throws java.io.IOException
        Throws:
        java.io.IOException
      • toEscaped

        public java.io.InputStream toEscaped​(java.lang.String text)
                                      throws java.io.IOException
        Throws:
        java.io.IOException
      • toAsciiStream

        public java.io.InputStream toAsciiStream​(IDocument doc)
                                          throws java.io.IOException
        Throws:
        java.io.IOException
      • loadFrom

        public void loadFrom​(java.io.File file)
                      throws java.io.IOException
        Throws:
        java.io.IOException
      • loadFrom

        public void loadFrom​(java.io.InputStream inputStream)
                      throws java.io.IOException
        Throws:
        java.io.IOException
      • saveChangesTo

        public void saveChangesTo​(IDocument document)
      • getAllPropertyNames

        public java.util.List<java.lang.String> getAllPropertyNames()
      • lookupConverter

        public Converter<java.lang.Object,​java.lang.String> lookupConverter​(java.lang.String propertyName)
      • lookupFormatter

        public Converter<java.lang.String,​java.lang.Object> lookupFormatter​(java.lang.String propertyName)
      • genericGet

        public java.lang.Object genericGet​(java.lang.String propertyName)
      • genericSet

        public void genericSet​(java.lang.String propertyName,
                               java.lang.Object value)
      • getBundleLicense

        public java.lang.String getBundleLicense()
      • setBundleLicense

        public void setBundleLicense​(java.lang.String bundleLicense)
      • getBundleCategory

        public java.lang.String getBundleCategory()
      • setBundleCategory

        public void setBundleCategory​(java.lang.String bundleCategory)
      • getBundleName

        public java.lang.String getBundleName()
      • setBundleName

        public void setBundleName​(java.lang.String bundleName)
      • getBundleDescription

        public java.lang.String getBundleDescription()
      • setBundleDescription

        public void setBundleDescription​(java.lang.String bundleDescription)
      • getBundleCopyright

        public java.lang.String getBundleCopyright()
      • setBundleCopyright

        public void setBundleCopyright​(java.lang.String bundleCopyright)
      • getBundleUpdateLocation

        public java.lang.String getBundleUpdateLocation()
      • setBundleUpdateLocation

        public void setBundleUpdateLocation​(java.lang.String bundleUpdateLocation)
      • getBundleVendor

        public java.lang.String getBundleVendor()
      • setBundleVendor

        public void setBundleVendor​(java.lang.String bundleVendor)
      • getBundleContactAddress

        public java.lang.String getBundleContactAddress()
      • setBundleContactAddress

        public void setBundleContactAddress​(java.lang.String bundleContactAddress)
      • getBundleDocUrl

        public java.lang.String getBundleDocUrl()
      • setBundleDocUrl

        public void setBundleDocUrl​(java.lang.String bundleDocUrl)
      • getBundleSymbolicName

        public java.lang.String getBundleSymbolicName()
      • setBundleSymbolicName

        public void setBundleSymbolicName​(java.lang.String bundleSymbolicName)
      • getBundleVersionString

        public java.lang.String getBundleVersionString()
      • setBundleVersion

        public void setBundleVersion​(java.lang.String bundleVersion)
      • getBundleActivator

        public java.lang.String getBundleActivator()
      • setBundleActivator

        public void setBundleActivator​(java.lang.String bundleActivator)
      • getOutputFile

        public java.lang.String getOutputFile()
      • setOutputFile

        public void setOutputFile​(java.lang.String name)
      • isIncludeSources

        public boolean isIncludeSources()
      • setIncludeSources

        public void setIncludeSources​(boolean includeSources)
      • getPrivatePackages

        public java.util.List<java.lang.String> getPrivatePackages()
      • setPrivatePackages

        public void setPrivatePackages​(java.util.List<java.lang.String> newPackages)
      • addPrivatePackage

        public void addPrivatePackage​(java.lang.String packageName)
      • getSystemPackages

        public java.util.List<ExportedPackage> getSystemPackages()
      • setSystemPackages

        public void setSystemPackages​(java.util.List<? extends ExportedPackage> packages)
      • getClassPath

        public java.util.List<java.lang.String> getClassPath()
      • setClassPath

        public void setClassPath​(java.util.List<? extends java.lang.String> classPath)
      • getExportedPackages

        public java.util.List<ExportedPackage> getExportedPackages()
      • setExportedPackages

        public void setExportedPackages​(java.util.List<? extends ExportedPackage> exports)
      • addExportedPackage

        public void addExportedPackage​(ExportedPackage export)
      • getDSAnnotationPatterns

        public java.util.List<java.lang.String> getDSAnnotationPatterns()
      • setDSAnnotationPatterns

        public void setDSAnnotationPatterns​(java.util.List<? extends java.lang.String> patterns)
      • getServiceComponents

        public java.util.List<ServiceComponent> getServiceComponents()
      • setServiceComponents

        public void setServiceComponents​(java.util.List<? extends ServiceComponent> components)
      • getImportPatterns

        public java.util.List<ImportPattern> getImportPatterns()
      • setImportPatterns

        public void setImportPatterns​(java.util.List<? extends ImportPattern> patterns)
      • setBuildPath

        public void setBuildPath​(java.util.List<? extends VersionedClause> paths)
      • addPath

        public void addPath​(VersionedClause versionedClause,
                            java.lang.String header)
      • addPath

        public void addPath​(BundleId bundleId,
                            java.lang.String header)
      • setTestPath

        public void setTestPath​(java.util.List<? extends VersionedClause> paths)
      • setRunBundles

        public void setRunBundles​(java.util.List<? extends VersionedClause> paths)
      • isIncludedPackage

        public boolean isIncludedPackage​(java.lang.String packageName)
      • getSubBndFiles

        public java.util.List<java.lang.String> getSubBndFiles()
      • setSubBndFiles

        public void setSubBndFiles​(java.util.List<java.lang.String> subBndFiles)
      • getRunProperties

        public java.util.Map<java.lang.String,​java.lang.String> getRunProperties()
      • setRunProperties

        public void setRunProperties​(java.util.Map<java.lang.String,​java.lang.String> props)
      • getRunVMArgs

        public java.lang.String getRunVMArgs()
      • setRunVMArgs

        public void setRunVMArgs​(java.lang.String args)
      • getRunProgramArgs

        public java.lang.String getRunProgramArgs()
      • setRunProgramArgs

        public void setRunProgramArgs​(java.lang.String args)
      • getTestSuites

        public java.util.List<java.lang.String> getTestSuites()
      • setTestSuites

        public void setTestSuites​(java.util.List<java.lang.String> suites)
      • getPlugins

        public java.util.List<HeaderClause> getPlugins()
      • setPlugins

        public void setPlugins​(java.util.List<HeaderClause> plugins)
      • getPluginPath

        public java.util.List<java.lang.String> getPluginPath()
      • setPluginPath

        public void setPluginPath​(java.util.List<java.lang.String> pluginPath)
      • getDistro

        public java.util.List<java.lang.String> getDistro()
      • setDistro

        public void setDistro​(java.util.List<java.lang.String> distros)
      • getRunRepos

        public java.util.List<java.lang.String> getRunRepos()
      • setRunRepos

        public void setRunRepos​(java.util.List<java.lang.String> repos)
      • getRunFramework

        public java.lang.String getRunFramework()
      • getRunFw

        public java.lang.String getRunFw()
      • getEE

        public EE getEE()
      • setEE

        public void setEE​(EE ee)
      • setRunFramework

        public void setRunFramework​(java.lang.String clause)
      • setRunFw

        public void setRunFw​(java.lang.String clause)
      • getRunRequires

        public java.util.List<org.osgi.resource.Requirement> getRunRequires()
      • setRunRequires

        public void setRunRequires​(java.util.List<org.osgi.resource.Requirement> requires)
      • getRunBlacklist

        public java.util.List<org.osgi.resource.Requirement> getRunBlacklist()
      • setRunBlacklist

        public void setRunBlacklist​(java.util.List<org.osgi.resource.Requirement> requires)
      • getStandaloneLinks

        public java.util.List<HeaderClause> getStandaloneLinks()
      • setStandaloneLinks

        public void setStandaloneLinks​(java.util.List<HeaderClause> headers)
      • getIgnoreStandalone

        public java.util.List<HeaderClause> getIgnoreStandalone()
      • setIgnoreStandalone

        public void setIgnoreStandalone​(java.util.List<HeaderClause> headers)
      • isProjectFile

        public boolean isProjectFile()
      • isBndrun

        public boolean isBndrun()
      • addPropertyChangeListener

        public void addPropertyChangeListener​(java.beans.PropertyChangeListener listener)
      • addPropertyChangeListener

        public void addPropertyChangeListener​(java.lang.String propertyName,
                                              java.beans.PropertyChangeListener listener)
      • removePropertyChangeListener

        public void removePropertyChangeListener​(java.beans.PropertyChangeListener listener)
      • removePropertyChangeListener

        public void removePropertyChangeListener​(java.lang.String propertyName,
                                                 java.beans.PropertyChangeListener listener)
      • setBndResource

        public void setBndResource​(java.io.File bndResource)
      • getBndResource

        public java.io.File getBndResource()
      • getBndResourceName

        public java.lang.String getBndResourceName()
      • setBndResourceName

        public void setBndResourceName​(java.lang.String bndResourceName)
      • getBundleBlueprint

        public java.util.List<HeaderClause> getBundleBlueprint()
      • setBundleBlueprint

        public void setBundleBlueprint​(java.util.List<HeaderClause> bundleBlueprint)
      • addBundleBlueprint

        public void addBundleBlueprint​(java.lang.String location)
      • getIncludeResource

        public java.util.List<java.lang.String> getIncludeResource()
      • setIncludeResource

        public void setIncludeResource​(java.util.List<java.lang.String> newEntries)
      • addIncludeResource

        public void addIncludeResource​(java.lang.String resource)
      • setProject

        public void setProject​(Project project)
      • getProject

        public Project getProject()
      • getWorkspace

        public Workspace getWorkspace()
      • setWorkspace

        public void setWorkspace​(Workspace workspace)
      • getGenericString

        public java.lang.String getGenericString​(java.lang.String name)
      • setGenericString

        public void setGenericString​(java.lang.String name,
                                     java.lang.String value)
      • getProperties

        public Processor getProperties()
                                throws java.lang.Exception
        Return a processor for this model. This processor is based on the parent project or the bndrun file. It will contain the properties of the project file and the changes from the model.
        Returns:
        a processor that reflects the actual project or bndrun file setup
        Throws:
        java.lang.Exception
      • getDocumentChanges

        public java.util.Map<java.lang.String,​java.lang.String> getDocumentChanges()
        Return the saved changes in document format.
      • saveChanges

        public void saveChanges()
                         throws java.io.IOException
        If this BndEditModel was created with a project then this method will save the changes in the document and will store them in the associated file.
        Throws:
        java.io.IOException
      • store

        public static void store​(IDocument document,
                                 java.io.File file)
                          throws java.io.IOException
        Throws:
        java.io.IOException
      • isDirty

        public boolean isDirty()
        Returns:
        true if there is a discrepancy between the project's file and the document
      • setDirty

        public void setDirty​(boolean isDirty)
      • load

        public void load()
                  throws java.io.IOException
        Throws:
        java.io.IOException
      • isCnf

        public boolean isCnf()
        If this is on the cnf project
        Returns:
        true if it is the cnf project
      • format

        public static <T> java.lang.String format​(java.lang.String header,
                                                  java.lang.String input)
        Use the built in formatters to take an unformatted header and turn it into a formatted header useful in the editor, for example escaped newlines.
        Type Parameters:
        T - the intermediate type, doesn't matter
        Parameters:
        header - the name of the instruction
        input - the source string
        Returns:
        the input or a formatted input if there is converter
      • add

        public <T extends java.util.Collection<java.lang.Object>> java.lang.String add​(java.lang.String header,
                                                                                       java.lang.String toAdd)