Package org.apache.directory.studio.schemaeditor.model

Examples of org.apache.directory.studio.schemaeditor.model.Project


    {
        String projectName = informationPage.getProjectName();
        ProjectType projectType = informationPage.getProjectType();

        // Creating the project
        final Project project = new Project( projectType, projectName );

        if ( projectType.equals( ProjectType.ONLINE ) )
        // Project is an "Online Project"
        {
            // Setting the connection to use
            project.setConnection( connectionSelectionPage.getSelectedConnection() );

            RunnableContextRunner.execute( new StudioRunnableWithProgress()
            {

                public void run( StudioProgressMonitor monitor )
                {
                    // Getting the correct SchemaConnector for this connection
                    List<SchemaConnector> correctSchemaConnectors = getCorrectSchemaConnectors(
                        project.getConnection(), monitor );

                    // If no suitable SchemaConnector has been found, we display an
                    // error message and return false;
                    if ( correctSchemaConnectors.size() == 0 )
                    {
                        monitor.reportError(
                            "No suitable SchemaConnector has been found for the choosen Directory Server.", //$NON-NLS-1$
                            new NoSuitableSchemaConnectorException() );
                    }

                    // Check if generic schema connector is included, then remove it to use a specific one
                    if ( correctSchemaConnectors.size() > 1 )
                    {
                        for ( SchemaConnector schemaConnector : correctSchemaConnectors )
                        {
                            if ( schemaConnector instanceof GenericSchemaConnector )
                            {
                                correctSchemaConnectors.remove( schemaConnector );
                                break;
                            }
                        }
                    }

                    // Getting the correct SchemaConnector
                    SchemaConnector correctSchemaConnector = null;
                    if ( correctSchemaConnectors.size() == 1 )
                    {
                        correctSchemaConnector = correctSchemaConnectors.get( 0 );
                    }
                    else
                    {
                        // TODO display a dialog in which the user can select the correct schema connector
                    }

                    project.setSchemaConnector( correctSchemaConnector );

                    // Fetching the Online Schema
                    project.fetchOnlineSchema( monitor );
                }


                public String getName()
                {
                    return null;
                }


                public Object[] getLockedObjects()
                {
                    return null;
                }


                public String getErrorMessage()
                {
                    return null;
                }


                public Connection[] getConnections()
                {
                    return null;
                }

            }, getContainer(), true );
        }
        else if ( projectType.equals( ProjectType.OFFLINE ) )
        // Project is an "Offline Project"
        {
            // Getting the selected 'core' schemas
            String[] selectedSchemas = schemasSelectionPage.getSelectedSchemas();
            ServerTypeEnum serverType = schemasSelectionPage.getServerType();
            if ( ( selectedSchemas != null ) && ( serverType != null ) )
            {
                SchemaHandler schemaHandler = project.getSchemaHandler();
                for ( String selectedSchema : selectedSchemas )
                {
                    Schema schema = PluginUtils.loadCoreSchema( serverType, selectedSchema );
                    if ( schema != null )
                    {
View Full Code Here


                {
                    return ( ( List<?> ) parentElement ).toArray();
                }
                if ( parentElement instanceof Project )
                {
                    Project project = ( Project ) parentElement;
                    List<Schema> schemas = project.getSchemaHandler().getSchemas();
                    return schemas.toArray();
                }
                if ( parentElement instanceof Schema )
                {
                    Schema schema = ( Schema ) parentElement;
View Full Code Here

     * @throws ProjectsImportException
     *      if an error occurs when importing the project
     */
    public static Project getProject( InputStream inputStream, String path ) throws ProjectsImportException
    {
        Project project = new Project();

        SAXReader reader = new SAXReader();
        Document document = null;
        try
        {
View Full Code Here

        }

        for ( Iterator<?> i = rootElement.elementIterator( PROJECT_TAG ); i.hasNext(); )
        {
            Element projectElement = ( Element ) i.next();
            Project project = new Project();
            readProject( projectElement, project, path );
            projects.add( project );
        }

        return projects.toArray( new Project[0] );
View Full Code Here

    public boolean performFinish()
    {
        String[] selectedSchemas = page.getSelectedSchemas();;
        ServerTypeEnum serverType = page.getServerType();

        Project project = Activator.getDefault().getProjectsHandler().getOpenProject();
        if ( project != null )
        {
            if ( ( selectedSchemas != null ) && ( serverType != null ) )
            {
                SchemaHandler schemaHandler = project.getSchemaHandler();
                for ( String selectedSchema : selectedSchemas )
                {
                    Schema schema = PluginUtils.loadCoreSchema( serverType, selectedSchema );
                    if ( schema != null )
                    {
View Full Code Here

    {
        String projectName = informationPage.getProjectName();
        ProjectType projectType = informationPage.getProjectType();

        // Creating the project
        final Project project = new Project( projectType, projectName );

//        if ( projectType.equals( ProjectType.ONLINE ) )
//        // Project is an "Online Project"
//        {
//            // Setting the connection to use
//            project.setConnection( connectionSelectionPage.getSelectedConnection() );
//
//            // Reseting the Exception Thrown
//            exceptionThrown = null;
//
//            try
//            {
//                getContainer().run( false, false, new IRunnableWithProgress()
//                {
//                    public void run( IProgressMonitor monitor )
//                    {
//                        StudioProgressMonitor studioProgressMonitor = new StudioProgressMonitor( monitor );
//
//                        // Getting the correct SchemaConnector for this connection
//                        List<SchemaConnector> correctSchemaConnectors = getCorrectSchemaConnectors( project
//                            .getConnection(), studioProgressMonitor );
//
//                        // If no suitable SchemaConnector has been found, we display an
//                        // error message and return false;
//                        if ( correctSchemaConnectors.size() == 0 )
//                        {
//                            studioProgressMonitor.reportError(
//                                "No suitable SchemaConnector has been found for the choosen Directory Server.",
//                                new NoSuitableSchemaConnectorException() );
//                        }
//
//                        // Getting the correct SchemaConnector
//                        SchemaConnector correctSchemaConnector = null;
//                        if ( correctSchemaConnectors.size() == 1 )
//                        {
//                            correctSchemaConnector = correctSchemaConnectors.get( 0 );
//                        }
//                        else
//                        {
//                            // TODO display a dialog in which the user can select the correct schema connector
//                        }
//
//                        project.setSchemaConnector( correctSchemaConnector );
//
//                        // Fetching the Online Schema
//                        project.fetchOnlineSchema( new StudioProgressMonitor( monitor ) );
//
//                        // Checking if an error has occured
//                        if ( studioProgressMonitor.errorsReported() )
//                        {
//                            exceptionThrown = studioProgressMonitor.getException();
//                            return;
//                        }
//                    }
//                } );
//            }
//            catch ( InvocationTargetException e )
//            {
//                // Nothing to do (it will never occur)
//            }
//            catch ( InterruptedException e )
//            {
//                // Nothing to do.
//            }
//
//            if ( exceptionThrown != null )
//            {
//                if ( exceptionThrown instanceof NoSuitableSchemaConnectorException )
//                // Special case for the 'NoSuitableSchemaConnectorException'
//                {
//                    PluginUtils.logError( "No suitable SchemaConnector has been found for the selected connection.",
//                        exceptionThrown );
//                    ViewUtils.displayErrorMessageBox( "Error", "An error occured when creating the project.\n"
//                        + "No suitable SchemaConnector has been found for the selected connection." );
//                }
//                else
//                // Standard case
//                {
//                    PluginUtils.logError( "An error occured when creating the project.", exceptionThrown );
//                    ViewUtils.displayErrorMessageBox( "Error", "An error occured when creating the project." );
//                }
//                return false;
//            }
//        }
//        else if ( projectType.equals( ProjectType.OFFLINE ) )
//        // Project is an "Offline Project"
//        {
            // Getting the selected 'core' schemas
            String[] selectedSchemas = schemasSelectionPage.getSelectedSchemas();
            ServerTypeEnum serverType = schemasSelectionPage.getServerType();
            if ( ( selectedSchemas != null ) && ( serverType != null ) )
            {
                SchemaHandler schemaHandler = project.getSchemaHandler();
                for ( String selectedSchema : selectedSchemas )
                {
                    Schema schema = PluginUtils.loadCoreSchema( serverType, selectedSchema );
                    if ( schema != null )
                    {
View Full Code Here

    {
        coreSchemaSelectionWidget = new CoreSchemasSelectionWidget();
        Composite composite = coreSchemaSelectionWidget.createWidget( parent );
        coreSchemaSelectionWidget.init( ServerTypeEnum.APACHE_DS );

        Project project = Activator.getDefault().getProjectsHandler().getOpenProject();
        if ( project != null )
        {
            List<Schema> schemas = project.getSchemaHandler().getSchemas();
            List<String> schemaNames = new ArrayList<String>();
            for ( Schema schema : schemas )
            {
                schemaNames.add( schema.getName() );
            }
View Full Code Here

     */
    public Image getImage( Object element )
    {
        if ( element instanceof ProjectWrapper )
        {
            Project project = ( ( ProjectWrapper ) element ).getProject();
            ProjectType type = project.getType();
            switch ( type )
            {
                case OFFLINE:
                    ProjectState state = project.getState();
                    switch ( state )
                    {
                        case OPEN:
                            return AbstractUIPlugin.imageDescriptorFromPlugin( Activator.PLUGIN_ID,
                                PluginConstants.IMG_PROJECT_OFFLINE ).createImage();
                        case CLOSED:
                            return AbstractUIPlugin.imageDescriptorFromPlugin( Activator.PLUGIN_ID,
                                PluginConstants.IMG_PROJECT_OFFLINE_CLOSED ).createImage();
                    }
                case ONLINE:
                    ProjectState state2 = project.getState();
                    switch ( state2 )
                    {
                        case OPEN:
                            return AbstractUIPlugin.imageDescriptorFromPlugin( Activator.PLUGIN_ID,
                                PluginConstants.IMG_PROJECT_ONLINE ).createImage();
View Full Code Here

    public void run()
    {
        StructuredSelection selection = ( StructuredSelection ) viewer.getSelection();
        if ( ( !selection.isEmpty() ) && ( selection.size() == 1 ) )
        {
            Project project = ( ( ProjectWrapper ) selection.getFirstElement() ).getProject();
            RenameProjectDialog dialog = new RenameProjectDialog( project.getName() );
            if ( dialog.open() == Dialog.OK )
            {
                projectsHandler.renameProject( project, dialog.getNewName() );
            }
        }
View Full Code Here

            if ( messageBox.open() == SWT.YES )
            {
                for ( Iterator<?> iterator = selection.iterator(); iterator.hasNext(); )
                {
                    ProjectWrapper wrapper = ( ProjectWrapper ) iterator.next();
                    Project project = wrapper.getProject();

                    if ( project.getState() == ProjectState.OPEN )
                    {
                        // Closing the project before removing it.
                        projectsHandler.closeProject( project );
                    }
View Full Code Here

TOP

Related Classes of org.apache.directory.studio.schemaeditor.model.Project

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.