protected void writeTableCreationStmtEnding()

in src/main/java/org/apache/ddlutils/platform/sybase/SybaseBuilder.java [66:133]


	protected void writeTableCreationStmtEnding(Table table, Map parameters) throws IOException
    {
        if (parameters != null)
        {
            // We support
            // - 'lock'
            // - 'at'
            // - 'external table at'
            // - 'on'
            // - with parameters as name value pairs

            String lockValue            = (String)parameters.get("lock");
            String atValue              = (String)parameters.get("at");
            String externalTableAtValue = (String)parameters.get("external table at");
            String onValue              = (String)parameters.get("on");

            if (lockValue != null)
            {
                print(" lock ");
                print(lockValue);
            }

            boolean writtenWithParameters = false;

            for (Iterator it = parameters.entrySet().iterator(); it.hasNext();)
            {
                Map.Entry entry = (Map.Entry)it.next();
                String    name  = entry.getKey().toString();

                if (!"lock".equals(name) && !"at".equals(name) && !"external table at".equals(name) && !"on".equals(name))
                {
                    if (!writtenWithParameters)
                    {
                        print(" with ");
                        writtenWithParameters = true;
                    }
                    else
                    {
                        print(", ");
                    }
                    print(name);
                    if (entry.getValue() != null)
                    {
                        print("=");
                        print(entry.getValue().toString());
                    }
                }
            }
            if (onValue != null)
            {
                print(" on ");
                print(onValue);
            }
            if (externalTableAtValue != null)
            {
                print(" external table at \"");
                print(externalTableAtValue);
                print("\"");
            }
            else if (atValue != null)
            {
                print(" at \"");
                print(atValue);
                print("\"");
            }
        }
        super.writeTableCreationStmtEnding(table, parameters);
    }